Seite 1 von 2

Re: CAD STEP EXPORT

Verfasst: Montag 13. November 2017, 12:01
von noisefloor
Hallo,

STL ist sowas wie das simpelste Format für 3D Körper. Das verstehen alle CAD-Programme. Außerdem wird es AFAIK als Datenquelle für 3D-Drucker genutzt.

Wenn du mal den Wikipedia-Artikel liest, sollte es eigentlich klarer sein.

Gruß, noisefloor

Re: CAD STEP EXPORT

Verfasst: Montag 13. November 2017, 14:06
von stefanxfg
Ich habe programmiertechnisch mit beiden Varianten noch nicht gearbeitet. Ich möchte mir nun so eine Art Flächenkörper ins CAD holen. Wenn das mit dem Mesh geht, dann ist das auch OK für mich. Mit numpy habe ich auch bei Matplotllib schon gearbeitet. Das würde scih also anbieten.

Re: CAD STEP EXPORT

Verfasst: Montag 13. November 2017, 16:12
von Kniffte
@stefanxfg:
Mit Hilfe des Links von noisefloor kannst du ja nachvollziehen wie eine .stl aufgebaut ist.
Wenn man davon ausgeht, dass deine Kurvenzüge auf der y-z-Ebene liegen, nur in z-Richtung zueinander verschoben sind und jeweils die gleiche Anzahl von Punkten haben, dann:
- musst du die Fläche, die zwischen Kurvenzug 1 und Kurvenzug 2 in Dreiecke aufteilen
- den Normalenvektor für jedes Dreieck berechnen/erzeugen
- alles im entsprechenden Format in eine .stl packen

Siehe auch http://pythonhosted.org/numpy-stl/usage ... -and-faces
Im Grunde hast du ja deine Punkte der Kurvenzügen (vertices).
Dann musst du noch deine Einzelflächen (faces) aus den zur Verfügung stehenden Punkten (vertices) definieren und wie
im Link die zugehörigen Normalenvektoren erzeugen
Eine Einzelfläche wäre in deinem Fall
[Koordinanten Punkt1 von Kurvenzug1, Koordinanten Punkt2 von Kurvenzug1, Koordinanten Punkt1 von Kurvenzug2]
wie für diese Fläche der Normalenvektor zu berechnen ist, findest du auch im Link zu numpy-stl.

Um mal bei deinem Minimalbsp. eines Kreisquerschnittes zu bleiben, wird dieser dann im CAD als .stl importiert kein Kreis mehr sein,
sondern ein Polygon, dass je nach Anzahl der Punkte deiner Kurven kantig aussieht.

Interessant wäre noch zu wissen, warum du nicht einfach die Kurvenzüge mittels ihrer Punkte und deren x,y,z Koordinaten in´s CAD importierst
und dort die Fläche/ den Volumenkörper erzeugst? Jedes vernünftige CAD Programm kann Punktewolken importieren, die machen dir daraus auch direkt ne Kurve/ Spline und das Verbinden zu Flächen ist dann auch nicht mehr aufwändig.

Re: CAD STEP EXPORT

Verfasst: Montag 13. November 2017, 20:38
von stefanxfg
Danke für die Erklärung. Der Grund ist, dass ich programmunabhängig bleiben möchte. Als Ergebnis soll die fertige Datei exportiert werden, welche dann vom Benutzer importiert werden kann. Es ist eben eine Erleichterung der Arbeit, wenn man die Umwandlung nicht mehr von Hand machen muss.

Ich werde das mal ausprobieren. Vielleicht kann man dann noch eine Knovertierung von STL zu STEP machen. Oder es ist dann nicht mehr notwendig. Ich hoffe, dass in der STL auch die Informationen stehen, dass das jeweilige CAD dann weiß, dass es sich um Flächen handelt.

Ich habe gerade gesehen, dass man auch direkt von matplotlib ins stl exportieren kann. Vielleicht ist das ja die beste Wahl.

Re: CAD STEP EXPORT

Verfasst: Montag 13. November 2017, 21:11
von noisefloor
Hallo,
Ich hoffe, dass in der STL auch die Informationen stehen, dass das jeweilige CAD dann weiß, dass es sich um Flächen handelt.
Äh... STL Daten bestehen _nur_ aus Dreiecksflächen...

Gruß, noisefloor

Re: CAD STEP EXPORT

Verfasst: Dienstag 14. November 2017, 18:31
von stefanxfg
Naja, ich weiß nicht wie man die Dreiecke erstellt. Jedoch habe ich über matplotlib bereits ein Meshgrid erstellt. Ich versuche mal, ob man das auch exportieren kann.