Ein Sketcher SketchObject, oder formal ein Sketcher::SketchObject
, ist das Basiselement für die Erstellung von 2D-Objekten mit der Arbeitsumgebung Sketcher.
Das Sketcher::SketchObject
ist vom Part Part2DObject abgeleitet, d.h. es ist ein Part Feature-Objekt spezialisiert auf 2D-Geometrie. Wie das Part2DObject, kann das SketchObject Ebenen und Flächen zugeordnet werden. Zusätzlich kann das SketchObject mit geometrischen Randbedingungen arbeiten.
Vereinfachtes Diagramm der Beziehungen zwischen den Kernobjekten in FreeCAD
Siehe Sketcher NeueSkizze.
Siehe Eigenschaft für alle Eigenschaftstypen, die geskriptete Objekte haben können.
Das Sketcher Sketch-Objekt (Sketcher::SketchObject
-Klasse) ist von dem Part Part2DObject (Part::Part2DObject
-Klasse) abgeleitet und erbt all seine Eigenschaften.
Das Sketcher Sketch-Objekt hat außerdem die folgenden zusätzlichen Eigenschaften im Eigenschafteneditor. Ausgeblendete Eigenschaften können mit dem Befehl Ausgeblendete anzeigen im Kontextmenü des Eigenschafteneditors angezeigt werden.
Basis
PartShape
): in Arbeit.Internal Geometry
Bool
): Wenn true, werden sich kreuzende Kanten aufgetrennt (scheint nicht zu funktionieren).Sketch
GeometryList
): Eine Liste von Part-Geometrien die sich in der Skizze befinden.[]
.LinkSubList
): Eine Liste von Part-Geometrien außerhalb dieser Skizze, die als Referenz verwendet werden.IntegerList
): Externe Sketcher-Geometriearten: 0
(projection), 1
(intersection) oder 2
(both). eingeführt in 1.1Bool
): Wenn true, ist die Skizze vollständig bestimmt.LinkListHidden
): Skizzenexportgeometrie.GeometryList
): Externe Skizzengeometrie.Precision
): Toleranz zum Anpassen der Kreisbögen von projizierter externer Geometrie.
Auto Constraints
Bool
): Wenn true, werden Randbedingungen automatisch hinzugefügt, während Geometrien gezeichnet werden.Bool
): Wenn true, werden überflüssige automatische Randbedingungen vermieden.Grid
Bool
): Wenn true, wird die Größe eines Rasters auf Basis der Boundingbox der Geometrie einer Skizze angepasst.Length
): Der Wert für den Abstand der lokalen Rasterlinien in der 3D-Ansicht; Standardwert ist 10 mm
.Bool
): Wenn true, wird in der 3D-Ansicht örtlich am Objekt ein Raster angezeigt. Dieses Raster ist unabhängig vom Draft Raster.Layers
BadType
):Object Style
Bool
): Wenn true, wird das Objekt auf Basis Benutzereinstellungen eingefärbt. Auf false
setzen, um die Farbe direkt anzugeben.Visibility automation
String
): Name des Arbeitsbereiches, der aktiviert wird, wenn eine Skizze bearbeitet wird; Standardwert ist SketcherWorkbench
.Bool
): Wenn true, wird die Kamera in den Modus Orthogonale Ansicht gezwungen, wenn die Skizze geöffnet wird.Bool
): Wenn true, werden alle Objekte ausgeblendet, die von dieser Skizze abhängen, wenn die Skizze geöffnet wird.Bool
): Wenn true, wird die Kameraposition gesichert, bevor die Skizze geöffnet wird und wiederhergestellt, nachdem die Skizze geschlossen wurde.Bool
): Wenn true, sind nur (Teile von) Objekte(n) hinter der Skizzenebene sichtbar, während die Skizze bearbeitet wird.Bool
): Wenn true, werden alle Objekte angezeigt, die zur Verknüpfung mit externer Geometrie verwendet werden, wenn die Skizze geöffnet wird.Bool
): Wenn true, werden alle Objekte dargestellt, mit denen diese Skizze verknüpft ist, wenn die Skizze geöffnet wird.PythonObject
): Eine mit diesem Objekt verbundene angepasste Klasse, die das Ein- und Ausblenden anderer Objekte regelt, während die Skizze geöffnet oder geschlossen wird.
Siehe auch: FreeCAD Grundlagen Skripten und Skriptgenerierte Objekte.
Siehe Part Formelement für allgemeine Informationen zum Hinzufügen von Objekten zu einem Dokument.
Ein Sketch-Objekt wird mit der addObject()
Methode des Dokuments erstellt.
import FreeCAD as App
doc = App.newDocument()
obj = App.ActiveDocument.addObject("Sketcher::SketchObject", "Sketch")
obj.Label = "Custom label"
Für die Instanziierung von Unterklassen mit Python sollte ein Sketcher::SketchObjectPython
-Objekt erstellt werden.
import FreeCAD as App
doc = App.newDocument()
obj = App.ActiveDocument.addObject("Sketcher::SketchObjectPython", "CustomSketch")
obj.Label = "Custom label"
(FIXME)