[fast gelöst] Trennfläche für Formenbau, Trimmen an Silhouette - wie?

In diesem Forum Fragen und Diskussionen in Deutsch
Forum rules
Foren-Regeln und hilfreiche Informationen

WICHTIG: Bitte zuerst lesen, bevor Sie posten
freecad-heini-1
Veteran
Posts: 7790
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by freecad-heini-1 »

Ich möchte das Thema noch einmal aktivieren, denn bisher gab es aus meiner Sicht keine zufriedenstellende Lösung.

Hier ein neues Video zur Problematik:
https://peertube.mastodon.host/videos/w ... fc5819f4c5

Und die CAD-Daten:
https://forum.freecadweb.org/download/file.php?id=76843

In der Hoffnung, dass jemand eine einfache aber präzise Lösung findet Silhouettenkurven definieren zu können.

Vielen Dank und viele Grüße
Wilfried
User avatar
saso
Veteran
Posts: 1924
Joined: Fri May 16, 2014 1:14 pm
Contact:

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by saso »

I believe OCCT HLRBRep_HLRToShape could probably be the correct solution for this :roll:

https://www.opencascade.com/doc/occt-7. ... _8hxx.html
http://git.dev.opencascade.org/gitweb/? ... ae732bd68c

I believe it is a similar functionality to Catia Reflect Lines

http://catiadoc.free.fr/online/sdgug_C2/sdgugbt0118.htm
User avatar
Gift
Posts: 769
Joined: Tue Aug 18, 2015 10:08 am
Location: Germany, Sauerland

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by Gift »

Hey Wilfried,

ich bin aber auch ein Werkzeugbauer. :lol:

Gruß
Benjamin
freecad-heini-1
Veteran
Posts: 7790
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by freecad-heini-1 »

Gift wrote: Fri Feb 15, 2019 6:00 pm Hey Wilfried,

ich bin aber auch ein Werkzeugbauer. :lol:

Gruß
Benjamin
Sehr gut, dann tun wir uns zusammen und starten einen Aufruf, "wir wollen ein Silhouetten-Trimm-Werkzeug für Trennflächen", hehe ...
freecad-heini-1
Veteran
Posts: 7790
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by freecad-heini-1 »

saso wrote: Fri Feb 15, 2019 5:53 pm I believe OCCT HLRBRep_HLRToShape could probably be the correct solution for this :roll:

https://www.opencascade.com/doc/occt-7. ... _8hxx.html
http://git.dev.opencascade.org/gitweb/? ... ae732bd68c

I believe it is a similar functionality to Catia Reflect Lines

http://catiadoc.free.fr/online/sdgug_C2/sdgugbt0118.htm
Wie kann man das anhand dieser kryptischen Befehle erkennen, dass sich dahiter ein solche Werkzeug befindet?
HLRBRep_HLRToShape.hxx File Reference
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <TopoDS_Shape.hxx>
#include <Standard_Integer.hxx>
#include <Standard_Boolean.hxx>
#include <HLRBRep_TypeOfResultingEdge.hxx>
#include <HLRBRep_HLRToShape.lxx>
Gibt es das in grafischer Form?
User avatar
saso
Veteran
Posts: 1924
Joined: Fri May 16, 2014 1:14 pm
Contact:

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by saso »

Yes, sorry I guess I was a bit to fast, the correct one is probably HLRAppli_ReflectLines

https://www.opencascade.com/doc/occt-7. ... lines.html

also search for ReflectLines in

https://www.opencascade.com/sites/defau ... _6.7.0.pdf

I am guessing this based on the functionality in catia

see page 22 to 24 in this presentation http://www.myshared.ru/slide/894427/

and two videos showing the use of reflect line in catia

https://www.youtube.com/watch?v=ymugB0zn_VY
https://www.youtube.com/watch?v=o51yMvYAJeg
Last edited by saso on Fri Feb 15, 2019 7:57 pm, edited 2 times in total.
polymer
Posts: 278
Joined: Fri Sep 12, 2014 8:49 am

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by polymer »

freecad-heini-1 wrote: Fri Feb 15, 2019 7:36 pm
Gift wrote: Fri Feb 15, 2019 6:00 pm Hey Wilfried,

ich bin aber auch ein Werkzeugbauer. :lol:

Gruß
Benjamin
Sehr gut, dann tun wir uns zusammen und starten einen Aufruf, "wir wollen ein Silhouetten-Trimm-Werkzeug für Trennflächen", hehe ...
Die dafür benötigten Grundlagen werden aber auch in anderen Bereichen von nutzen sein.
Messmittel zur Bestimmung von Formschrägen oder Radien und Durchmessern. Automatische Erkennung von Hinterschnitten z.B. in der Path-WB wichtig, Ansätze gibt es schon.

Achtung, das ist nur meine Meinung (bitte nicht hauen):
Das Problem an FreeCAD ist dass teilweise ziellos programmiert wird. (Part, PD, Assembly … was die Grundlage eines CAD-Systems ist) Wenn es zuerst einen logischen Workflow gibt der dann von Programmierern umgesetzt wird, dann wird schon eher ein Schuh daraus. (siehe FEM-WB)
Aber einen Workflow kann man nur entwickeln wenn es ein Ziel gibt, wie eben der Bedarf an einer Silhouetten-Funktion.

mfg
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by microelly2 »

Ich hab gleich ma wieder probiert,
mit der scipy.optimize.minimize Methode kommt man ganz gut voran.
Rechenzeit pro Punkt auf meinem "alten" Rechner 0.005 ms,
da kann man in 5 Sekunden 1000 Punkte finden.
Das Fine Tuning ist etwas Probiererei, aber wenn wir am Anfang den Chips schon mal mit der Shape3d-Methode annähern hat man gute
Ausgangsdaten.

phpBB [video]


Ich hab das mal mit meinen Flächen getestet, Und es geht auch für das bergige Land. :D
bp_964.png
bp_964.png (112.8 KiB) Viewed 1316 times
Feinarbeit mach ich kommende Woche.
User avatar
Gift
Posts: 769
Joined: Tue Aug 18, 2015 10:08 am
Location: Germany, Sauerland

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by Gift »

Durch die Projektion erhalten wir den Umriss. Aus der Kontur können wir eine Fläche erstellen. Das Problem bei Drawing.projectEx ist, dass das Ergebnis immer auf der XY-Ebene landet. Macht ja für Zeichnungsableitungen auch Sinn. Im folgenden Beispiel habe ich das so gedreht, dass es passt:

Code: Select all

# select solid

import FreeCAD, Part, Drawing

shape     = Gui.Selection.getSelection()[0].Shape
direction = FreeCAD.Vector(0,1,0)
groups    = Drawing.projectEx(shape, direction)
nshape    = groups[3].copy()
nshape.rotate(FreeCAD.Vector(0,0,0), FreeCAD.Vector(1,0,0), -90)
nshape.rotate(FreeCAD.Vector(0,0,0), FreeCAD.Vector(0,1,0), -90)
nshape.translate(FreeCAD.Vector(0,-20.,0))
result = nshape.extrude(FreeCAD.Vector(0,60,0))
Part.show(result)
Wenn wir jetzt eine Section mit der erstellen Fläche und den ursprünglichen Flächen erstellen, müsste wir doch die Silhouette erhalten, oder? Das scheint aber wirklich an der Genauigkeit zu scheitern.

@Thomas:

Ist der Script bereits veröffentlich?
freecad-heini-1
Veteran
Posts: 7790
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: Trennfläche für Formenbau, Trimmen an Silhouette - wie?

Post by freecad-heini-1 »

microelly2 wrote: Fri Feb 15, 2019 8:25 pm Ich hab gleich ma wieder probiert,
mit der scipy.optimize.minimize Methode kommt man ganz gut voran.
Rechenzeit pro Punkt auf meinem "alten" Rechner 0.005 ms,
da kann man in 5 Sekunden 1000 Punkte finden.
Das Fine Tuning ist etwas Probiererei, aber wenn wir am Anfang den Chips schon mal mit der Shape3d-Methode annähern hat man gute
Ausgangsdaten.

phpBB [video]


Ich hab das mal mit meinen Flächen getestet, Und es geht auch für das bergige Land. :D
bp_964.png
Feinarbeit mach ich kommende Woche.
Danke Thomas. Das sieht gut aus. Etwas Feinschliff, eine Kurve aus den Punkten und in ein Makro packen, dann wird es brauchbar, auch für typische Kunststoffteile mit komlexen Geometrien.

Was hälst Du von dem was Saso gepostet hat? Ist das evt. einfacher, wenn OCC solche Tools bereits zur Verfügung stellt?

Viele Grüße und abermals vielen Dank
Wilfried
Post Reply