Jump to content

Surface FlächeErweitern

From FreeCAD Documentation
This page is a translated version of the page Surface ExtendFace and the translation is 100% complete.

Surface FlächeErweitern

Menüeintrag
Surface → Fläche erweitern
Arbeitsbereich
Surface
Standardtastenkürzel
Keiner
Eingeführt in Version
0.17
Siehe auch
Keiner

Beschreibung

Das Werkzeug Surface FlächeErweitern extrapoliert eine vorhandene Fläche oder Oberfläche an ihren Rändern mit ihren lokalen U- und V-Parametern.

Links: Original Fläche. Rechts: Erweiterte Fläche.

Anwendung

  1. Sicherstellen, dass das man ein Objekt mit Flächen hat. Das Objekt könnte mit dem Arbeitsbereich Surface erstellt werden, aber es könnte ebenfalls ein beliebiges anderes Objekt sein, zum Beispiel erstellt mit dem Arbeitsbereich Part oder PartDesign.
  2. Die zu verlängernde Fläche auswählen, indem man in der 3D-Ansicht darauf klickt.
  3. Es gibt mehrere Möglichkeiten, das Werkzeug aufzurufen:
    • Die Schaltfläche Fläche erweitern drücken.
    • Die Option Surface → Fläche erweitern aus dem Menü wählen.

Optionen

Dieser Befehl besitzt keine Optionen. Entweder funktioniert er mit der Auswahl oder nicht.

Eigenschaften

Eine Surface Flächen-Erweiterung (Klasse Surface::Extend) 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, hat das Surface Füllflächen-Objekt in der Eigenschaften-Ansicht die folgenden Eigenschaften.

Daten

Base

  • Daten-EigenschaftFace (LinkSub): das Unterelement eines Objekts, das erweitert werden soll; es muss eine Fläche sein.
  • Daten-EigenschaftTolerance (FloatConstraint): Es ist standardmäßig eingestellt auf 0.1.
  • Daten-EigenschaftExtend UNeg (FloatConstraint): Der Standardwert ist 0.05. Das Verhältnis des lokalen U-Parameters, der in negativer Richtung erweitert wird.
  • Daten-EigenschaftExtend UPos (FloatConstraint): Der Standardwert ist 0.05. Das Verhältnis des lokalen U-Parameters, der in positiver Richtung erweitert wird.
  • Daten-EigenschaftExtend USymetric (Bool): Der Standardwert ist true, in diesem Fall Daten-EigenschaftExtend UNeg und Daten-EigenschaftExtend UPos wird denselben Wert haben.
  • Daten-EigenschaftExtend VNeg (FloatConstraint): Der Standardwert ist 0.05. Das Verhältnis des lokalen V, das in negativer Richtung erweitert wird.
  • Daten-EigenschaftExtend VPos (FloatConstraint): Der Standardwert ist 0.05. Das Verhältnis der lokalen V-Richtung, die in positiver Richtung erweitert wird.
  • Daten-EigenschaftExtend VSymetric (Bool): Der Standardwert ist true, in diesem Fall Daten-EigenschaftExtend VNeg und Daten-EigenschaftExtend VPos wird denselben Wert haben.
  • Daten-EigenschaftSampleU (IntegerConstraint): Es ist standardmäßig eingestellt auf 32.
  • Daten-EigenschaftSampleV (IntegerConstraint): Es ist standardmäßig eingestellt auf 32.

Ansicht

Base

  • Ansicht-EigenschaftControl Points (Bool): Der Standardwert ist false; wenn true eingestellt ist, wird eine Überlagerung mit den Kontrollpunkten der Oberfläche angezeigt.

Skripten

Siehe auch: Grundlagen der Skripterstellung in FreeCAD.

Das Werkzeug Surface Erweitern kann in Makros und über die Python-Konsole verwendet werden, indem das Objekt Surface::Extend hinzugefügt wird.

  • Die zu erweiternde Fläche muss als LinkSub der Eigenschaft Face des Objekts zugewiesen werden. Sie darf nur eine einzige Fläche enthalten.
import FreeCAD as App
import Draft

doc = App.newDocument()

a = App.Vector(-20, -20, 0)
b = App.Vector(-18, 25, 0)
c = App.Vector(60, 26, 0)
d = App.Vector(33, -20, 0)

points = [a, App.Vector(-20, -8, 0), b, c,
          App.Vector(37, 4, 0), d,
          App.Vector(-2, -18, 0), a]
obj = Draft.make_bspline(points)
doc.recompute()

if App.GuiUp:
    obj.ViewObject.Visibility = False

surf = doc.addObject("Surface::Filling", "Surface")
surf.BoundaryEdges = [(obj, "Edge1")]
doc.recompute()

# ---------------------------------------------------------
points_spl = [App.Vector(-10, 0, 2),
              App.Vector(4, 0, 7),
              App.Vector(18, 0, -5),
              App.Vector(25, 0, 0),
              App.Vector(30, 0, 0)]
aux_edge = Draft.make_bspline(points_spl)
doc.recompute()

surf.UnboundEdges = [(aux_edge, "Edge1")]
doc.recompute()

# ---------------------------------------------------------
surf_extended = doc.addObject("Surface::Extend", "Surface")
surf_extended.Face = [surf, "Face1"]
doc.recompute()