|
|
| Menüeintrag |
|---|
| Surface → Querschnitte |
| Arbeitsbereich |
| Surface |
| Standardtastenkürzel |
| Keiner |
| Eingeführt in Version |
| 0.19 |
| Siehe auch |
| Keiner |
Surface Querschnitte wird verwendet, um eine Oberfläche über Kanten zu erstellen, die Querschnitte einer Fläche repräsentieren.
Links: Kontrollkanten (Querprofile). Rechts: Oberfläche, die aus diesen Kanten entsteht.
Eine Oberflächenfüllung (Klasse Surface::Filling) leitet sich von der grundlegenden Part Formelement (Klasse Part::Feature, über die Unterklasse Part::Spline) ab und teilt daher alle Eigenschaften der letzteren.
Zusätzlich zu den in Part Formelement beschriebenen Eigenschaften, haben die Querschnitte im Eigenschaften Editor folgende Eigenschaften.
Querschnitte
LinkSubList): Eine Liste der Kanten, die zum Aufbau der Oberfläche verwendet werden.
Base
Bool): Der Standardwert ist false; wenn true eingestellt ist, wird eine Überlagerung mit den Kontrollpunkten der Oberfläche angezeigt.
Die Form der Oberfläche hängt von der Richtung der ausgewählten Kanten ab. Wenn Kanten ausgewählt werden und das Ergebnis eine sich um sich selbst "verdrehende" Oberfläche ist, muss möglicherweise die Liste der Eckpunkte einer der Kanten in umgekehrter Reihenfolge angeordnet werden. Eine ausführlichere Erklärung findet man unter GeomFüllfläche.
Siehe auch: Grundlagen der Skripterstellung in FreeCAD.
Das Werkzeug Übergangskurve kann in Makros und von der Python-Konsole aus zum Einfügen von Surface:: Sections-Objekten verwendet werden.
NSections-Eigenschaften des Objektes zugeordnet werden.import FreeCAD as App
import Draft
doc = App.newDocument()
pl1 = App.Placement()
obj1 = Draft.make_circle(50, placement=pl1, face=False, startangle=0, endangle=180)
pl2 = App.Placement(App.Vector(0, 0, 25), App.Rotation())
obj2 = Draft.make_circle(30, placement=pl2, face=False, startangle=0, endangle=180)
points3 = [App.Vector(18, -10, 50),
App.Vector(12, 10, 50),
App.Vector(-12, 10, 50),
App.Vector(-18, -10, 50)]
obj3 = Draft.make_bspline(points3)
points4 = [App.Vector(15, -20, 100),
App.Vector(0, 6, 100),
App.Vector(-15, -20, 100)]
obj4 = Draft.make_bspline(points4)
doc.recompute()
surf = doc.addObject("Surface::Sections", "Surface")
surf.NSections = [(obj1, "Edge1"),
(obj2, "Edge1"),
(obj3, "Edge1"),
(obj4, "Edge1")]
doc.recompute()