Draft: Stile delle annotazioni

From FreeCAD Documentation
Revision as of 11:43, 19 May 2020 by Renatorivo (talk | contribs) (Created page with "Il colore della linea corrisponde all'intero a 32 bit, dal quale è possibile estrarre i singoli valori RGBA.")

Draft AnnotationStyleEditor

Posizione nel menu
Annotazioni → Stile delle annotazioni...
Ambiente
Draft
Avvio veloce
Nessuno
Introdotto nella versione
0.19
Vedere anche
Testo, Quota, Etichetta

Descrizione

Lo strumento Stile delle annotazioni permette di definire stili che influenzano le proprietà visive di oggetti simili ad annotazioni, come quelli creati da Testo, Quota, e Etichetta.

File:Draft AnnotationStyleEditor example.png

Editor di stile per configurare le annotazioni.

Utilizzo

  1. Premere il pusante Stile delle annotazioni.
  2. Aprire la casella combinata, quindi scegliere Aggiungi nuovo... per definire un nuovo stile o selezionare uno degli stili esistenti.
  3. Regolare le proprietà dello stile, quindi premere OK.

Usare Rnomina o Elimina per rinominare o eliminare lo stile attivo.

Script

Gli stili di annotazione vengono salvati come dizionari serializzati nell'attributo Meta del documento. Questo attributo viene ispezionato dall'editor dello stile di annotazione quando viene aperto.

>>> print(App.ActiveDocument.Meta["Draft_Style_Lane 1:100"])
{"FontName": "DejaVu Sans", "FontSize": "8.0000 ", "LineSpacing": "1 cm", "ScaleMultiplier": 1.0, "ShowUnit": false, "UnitOverride": "", "Decimals": 2, "ShowLines": true, "LineWidth": 2, "LineColor": 1095216660480, "ArrowType": 0, "ArrowSize": "5.0000 ", "DimensionOvershoot": "1.0000 ", "ExtensionLines": "5.0000 ", "ExtensionOvershoot": "1.0000 "}

Ogni stile che appare nell'editor viene salvato internamente con il nome dello stile preceduto da Draft_Style_; questo evita i conflitti di nomi con altre chiavi che possono essere salvate in Meta, che può contenere informazioni arbitrarie.

Si può definire qualsiasi nuovo stile aggiungendo le informazioni necessarie a una chiave che inizia con Draft_Style_. Il valore corrispondente di questa chiave deve essere un dizionario serializzato usando json.

import json

meta = App.ActiveDocument.Meta
props = {"LineWidth": 6, "ArrowSize": "7"}
meta["Draft_Style_Thick_lines"] = json.dumps(props)
App.ActiveDocument.Meta = meta

I valori non inseriti verranno riempiti automaticamente quando si seleziona questo stile nell'editor di stile.

Allo stesso modo, qualsiasi dizionario serializzato può essere decompresso per essere editato.

meta = App.ActiveDocument.Meta
new_dict = json.loads(meta["Draft_Style_Thick_lines"])

Poiché i widget dell'interfaccia grafica controllano le unità dei valori di input, molti di questi valori devono essere salvati come stringhe anziché come numeri in virgola mobile.

Stringhe:

props = {
  "FontName": "DejaVu Sans",
  "FontSize": "12.0000 ",
  "LineSpacing": "1 cm",
  "UnitOverride": "m",
  "ArrowSize": "5.0000 ",
  "DimensionOvershoot": "1.0000 ",
  "ExtensionLines": "5.0000 ",
  "ExtensionOvershoot": "1.0000 "
}

Numeri:

props = {
  "ScaleMultiplier": 1.0,
  "Decimals": 2,
  "LineWidth": 1,
  "LineColor": 1095216660480,
  "ArrowType": 0
}

Il colore della linea corrisponde all'intero a 32 bit, dal quale è possibile estrarre i singoli valori RGBA.

Booleane:

props = {
  "ShowUnit": False,
  "ShowLines": True
}