PartDesign Verrundung

From FreeCAD Documentation
Revision as of 07:49, 2 May 2020 by FuzzyBot (talk | contribs) (Updating to match new version of source page)

PartDesign Fillet

Menu location
PartDesign → Verrundung
Workbenches
PartDesign Arbeitsbereich
Default shortcut
None
Introduced in version
-
See also
Part Verrundung

Beschreibung

Dieses Werkzeug erstellt Verrundungen (Rundungen) an den ausgewählten Kanten eines Objekts. Ein neuer separater Verrundungseintrag (gefolgt von einer fortlaufenden Nummer, wenn bereits Verrundungen im Dokument vorhanden sind) wird im Projektbaum angelegt.

Anwendung

  • Wähle eine einzelne oder mehrere Kanten oder eine Fläche auf einem Objekt aus und starte das Werkzeug, in dem Du entweder auf sein Symbol klickst oder in das Menü gehst. Wenn du eine Fläche ausgewählt hast, werden alle deine Kanten beim verrunden berücksichtigt.
  • Stelle in den Verrundungsparametern im Aufgabenbereich den Verrundungsradius entweder durch Eingabe des Wertes oder durch Anklicken der Auf- / Ab-Pfeile ein. Die angewandte Verrundung wird in Echtzeit angezeigt.
  • Wenn du weitere Kanten oder Flächen hinzufügen möchtest, klicke zuerst auf die Schaltfläche 'Add ref und wähle dann die Kante oder die Fläche aus.
  • Wenn Du Kanten oder Flächen entfernen möchtest, klicke auf die Schaltfläche Referenz entfernen. Alle Kanten und Flächen, die zuvor ausgewählt wurden, werden violett hervorgehoben. Wähle die Kante oder die zu entfernende Fläche aus.
  • Klicken Sie zum Bestätigen auf OK.
  • Bei einer Kette von Kanten, die tangential zueinander verlaufen, kann eine einzelne Kante ausgewählt werden; die Verrundung erstreckt sich entlang der Kette.
  • Um die Verrundung nach der Validierung der Funktion zu bearbeiten, doppelklicke entweder auf das Label Verrundung im Projektbaum oder klicke mit der rechten Maustaste darauf und wähle Verrundung bearbeiten.
Wähle Kanten des Objekts vor dem Aufruf des Werkzeugs.
Setze den Radius in den Rundungsparametern.
Ein Verrundungsobjekt wird dem Modellbaum hinzugefügt.

Left: select edges on the object before starting the tool. Right: set the fillet radius in the task panel.

A fillet object is added in the tree view.

PartDesign Verrundung vs. Part Abrunden

Part Design verrunden ist nicht mit seinem Part-Arbeitsbereich-Gegenstück zu verwechseln. Obwohl sie dasselbe Symbol verwenden, sind sie nicht identisch und werden nicht auf die gleiche Weise verwendet. Hier unterscheiden sie sich voneinander:

  • Das Part Design verrunden ist parametrisch . Nachdem eine Verrundung angewendet wurde, kann ihr Radius bearbeitet werden; Dies ist mit dem Part Abrunden nicht möglich.
  • Kanten müssen an einem Objekt ausgewählt werden, bevor PartDesign abrunden aktiviert wird. Mit Part Abrunden kann das Werkzeug gestartet werden, dann wird ein Volumenkörper ausgewählt, danach die Kanten.
  • Das Part Design verrunden erstellt einen separaten Fillet-Eintrag (gefolgt von einer fortlaufenden Nummer, wenn bereits vorhandene Fillets vorhanden sind) im Objektbaum. Das Part Abrunden wird zum übergeordneten Element des Objekts, auf das es angewendet wurde.
  • Die PartDesign Verrundung bietet eine Live-Vorschau der auf das Objekt angewendeten Verrundung, bevor die Funktion validiert wird.
  • Das Part Abrunden unterstützt variable Radien (mit einem Startradius und einem Endradius). Mit der PartDesign Verrundung funktioniert das nicht.

PartDesign Fillet is not to be confused with Part Fillet of the Part Workbench. Although they share the same name, they are not the same, and are not used the same way.

Here is how they differ from each other:

  • The PartDesign Fillet is Parametric. After a fillet has been applied, its radius can be edited; this is not possible with the Part Fillet.
  • Edges must be selected on an object before activating the PartDesign Fillet. With the Part Fillet, the tool can be started, then a solid is selected, then edges.
  • The PartDesign Fillet creates a separate Fillet entry (followed by a sequential number if there are already existing fillets) in the Project tree. The Part Fillet becomes the parent of the object it was applied to.
  • The PartDesign Fillet offers a live preview of the fillet applied to the object before validating the function.
  • The Part Fillet supports variable radii (with a start radius and an end radius). The PartDesign fillet doesn't.

Bekannte Probleme

Verrundungen, Fasen und andere Funktionen, die auf Festkörpern arbeiten, hängen vom zugrunde liegenden OpenCASCADE Technology (OCCT) Kernel ab, den FreeCAD verwendet. Der OCCT Kernel hat gelegentlich Schwierigkeiten, mit zufälligen scharfen Kanten umzugehen, wenn sich zwei Seiten treffen. Wenn dies der Fall ist, kann FreeCAD ohne Erklärung abstürzen.

Wenn FreeCAD vom Terminal aus gestartet wird, kann es nach dem Absturz ein solches Protokoll ausgeben:

#1  0x7fff63d660ba in BRep_Tool::Curve(TopoDS_Edge const&, TopLoc_Location&, double&, double&) from /usr/lib/x86_64-linux-gnu/libTKBRep.so.7+0x2a
#2  0x7fff63d69546 in BRep_Tool::Curve(TopoDS_Edge const&, double&, double&) from /usr/lib/x86_64-linux-gnu/libTKBRep.so.7+0x46
#3  0x7fff71f4fef5 in ChFi3d_Builder::PerformIntersectionAtEnd(int) from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x3b05
#4  0x7fff71f58307 in ChFi3d_Builder::PerformOneCorner(int, bool) from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x1097
#5  0x7fff71ef6218 in ChFi3d_Builder::PerformFilletOnVertex(int) from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x4e8
#6  0x7fff71ef71d1 in ChFi3d_Builder::Compute() from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0xe31
#7  0x7fff720ad7c3 in BRepFilletAPI_MakeChamfer::Build() from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x33
#8  0x7fff723be48e in PartDesign::Chamfer::execute() from /usr/lib/freecad-daily/lib/_PartDesign.so+0x60e
...
#1  0x7fff63d660ba in BRep_Tool::Curve(TopoDS_Edge const&, TopLoc_Location&, double&, double&) from /usr/lib/x86_64-linux-gnu/libTKBRep.so.7+0x2a
#2  0x7fff63d69546 in BRep_Tool::Curve(TopoDS_Edge const&, double&, double&) from /usr/lib/x86_64-linux-gnu/libTKBRep.so.7+0x46
#3  0x7fff71f4fef5 in ChFi3d_Builder::PerformIntersectionAtEnd(int) from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x3b05
#4  0x7fff71f58307 in ChFi3d_Builder::PerformOneCorner(int, bool) from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x1097
#5  0x7fff71ef6218 in ChFi3d_Builder::PerformFilletOnVertex(int) from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x4e8
#6  0x7fff71ef71d1 in ChFi3d_Builder::Compute() from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0xe31
#7  0x7fff720ad7c3 in BRepFilletAPI_MakeChamfer::Build() from /usr/lib/x86_64-linux-gnu/libTKFillet.so.7+0x33
#8  0x7fff723be48e in PartDesign::Chamfer::execute() from /usr/lib/freecad-daily/lib/_PartDesign.so+0x60e
...

Diese Ausgabe verweist auf Funktionen, die sich in libTKBRep.so, libTKFillet.so, usw. befinden und OCCT Bibliotheken sind. Wenn diese Art von Abstürzen auftritt, muss das Problem möglicherweise in OCCT und nicht in FreeCAD berichtet und gelöst werden.

Weitere Informationen findest Du in den Forenbeiträgen:

Der Anwender ist auch für die Integrität seines eigenen Modells verantwortlich. Je nach Modell kann es unmöglich sein, eine Verrundung oder Fase durchzuführen, wenn der Körper nicht groß genug ist, um diesen Vorgang zu unterstützen. So wäre es beispielsweise nicht möglich, eine 10 mm Verrundung zu erzeugen, wenn eine Kante nur 5 mm von der nächsten Oberfläche entfernt ist. In diesem Fall wäre der maximale Radius für eine Verrundung 5 mm; der Versuch, einen größeren Wert zu verwenden, kann zu einer Form führen, die nicht berechnet wird, oder sogar zu einem Crash. Wenn die Verwendung der genauen Grenze von 5 mm nicht funktioniert, kann es möglich sein, eine sehr enge Annäherung, wie z.B. 4,9999 mm, zu verwenden, um das gleiche sichtbare Ergebnis zu erzielen.

Topologische Benennung ==

Kantennummern sind nicht vollständig stabil, daher ist es ratsam, dass Du die Hauptkonstruktionsarbeiten Deines Festkörpers abschließt, bevor Du Funktionen wie Verrundungen und Fasen anwendest, da sonst Kanten den Namen ändern könnten und abgerundete Kanten wahrscheinlich ungültig werden würden.

Lies mehr unter topologisches Namensproblem.

Skripten

Das Werkzeug text-top=Fillet Verrundung kann in einem Makro und in der Python Konsole mit folgender Funktion verwendet werden:

Box = Box.makeFillet(3,[Box.Edges[0]]) # 1 Fillet
Box = Box.makeFillet(3,[Box.Edges[1],Box.Edges[2],Box.Edges[3],Box.Edges[4]]) # for several Fillets
  • 3 = radius
  • Box.Edges[2] = Edge with its number


Beispiel:

import PartDesign
from FreeCAD import Base

Box = Part.makeBox(10,10,10)
Box = Box.makeFillet(3,[Box.Edges[0]]) # pour 1 Fillet
Box = Box.makeFillet(3,[Box.Edges[1],Box.Edges[2],Box.Edges[3],Box.Edges[4]]) # for several Fillets
Part.show(Box)