Arch: Controllare se tutti gli oggetti sono dei solidi

From FreeCAD Documentation
Jump to: navigation, search
This page is a translated version of the page Arch Check and the translation is 100% complete.

Other languages:
čeština • ‎Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎română • ‎русский • ‎svenska
Arrow-left.svg Arch MergeWalls.svg Unisci pareti Pagina precedente:
Pagina successiva: Explorer Ifc Arch IfcExplorer.png Arrow-right.svg

Arch Check.svg Controlla

Posizione nel menu
Arch → Utilità → Controlla
Ambiente
Architettura
Avvio veloce
Nessuno
Introdotto nella versione
-
Vedere anche
Chiudi fori


Descrizione

Questo strumento controlla il documento corrente o gli oggetti selezionati alla ricerca di oggetti Parte o Architettura non-solidi, che potrebbero dare problemi, poiché la maggior parte delle operazioni del modulo Architettura richiedono oggetti solidi.

Utilizzo

  1. Selezionare la voce Arch Check.svg Controlla nel menu Arch → Utilità → Controlla.

Script

Vedere anche: Arch API e Nozioni di base sugli script di FreeCAD.

Lo strumento può essere utilizzato nelle macro e dalla console Python tramite la seguente funzione:

list_bad = check(objectslist, includehidden=False)
  • Controlla se gli oggetti dati in objectslist contengono solo solidi.
  • Se includehidden è True include tutti gli oggetti nascosti, altrimenti li esclude dalla ricerca.
  • Restituisce una list_bad, una lista con gli oggetti che non sono derivati da una Part::Feature, o componenti che non sono chiusi, non validi, non contengono solidi o che contengono facce che non fanno parte di alcun solido. Questo è usato per rilevare contorni e profili di Arch o Draft che non sono solidi.
    • Ogni elemento in list_bad è un'altra lista [object, message], dove object è l'oggetto rilevato non solido, e message indica il motivo per cui è stato incluso in questo elenco.

Esempio:

import FreeCAD, Draft, Arch

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(2000, 0, 0)
baseline = Draft.makeLine(p1, p2)
Wall1 = Arch.makeWall(baseline, length=None, width=150, height=2000)
FreeCAD.ActiveDocument.recompute()

Wall2 = Arch.makeWall(None, length=2000, width=200, height=1000)
FreeCAD.ActiveDocument.recompute()

Circle = Draft.makeCircle(450)
Wire = Draft.makeWire([FreeCAD.Vector(1000, 0, 0), FreeCAD.Vector(1500, 1000, 0), FreeCAD.Vector(2500, -1000, 0)])

list_bad = Arch.check([Wall1, Wall2, Circle, Wire], includehidden=True)
print(list_bad)
Arrow-left.svg Arch MergeWalls.svg Unisci pareti Pagina precedente:
Pagina successiva: Explorer Ifc Arch IfcExplorer.png Arrow-right.svg