Support Forum

[Question] Funktion 3D-Kurve aus Achse und Gradiente im VS verfügbar?


Im Allplan gibt es unter Freies Modellieren > 3D-Objekte die Funktion 3D-Kurve aus Achse und Gradiente.
Gibt es im Visual Scripting eine Möglichkeit diese Funktion nachzuahmen?
Die 3D-Kurve (meist ein 3D-Spline) soll als Pfad für eine Sweep-Funktion oder ähnliches dienen.

Attachments (1)

img
3D-Kurve aus Achse und Gradiente.PNG
Type: image/png
Downloaded 7 times
Size: 14,33 KiB

Show most helpful answer Hide most helpful answer

Hallo Xingling,

der Node sollte einfach die Eingabe-Parameter der o.g. Funktion als Eingänge haben, also:
-Achse (Curve3D)
-Gradiente (Curve3D)
-Startpunkthöhe (Length)
und als Ausgang die entstehende BSpline3D-Kurve.

Möglicherweise wäre es gut, wenn man als Achse und Gradiente auch 2D-Kurven übergeben könnte. (so wie in Allplan auch)
Dann müßten diese vorher intern noch in 3D-Curven konvertiert werden.

Ein solches Node könnte man tatsächlich an vielen Stelle gebrauchen, z.B. bei Wendeltreppen und Wendelrampen
zur Erzeugung einer Helix! Diese (Helix) kann man sonst nämlich mit keiner anderen Funktion, weder in Allplan noch in
Visual-Scripting mit dieser Genauigkeit erzeugen! Eine "Annäherung" durch mit einer Spline verbundene Konstruktionspunkte
(wie bei CurveProjection) reicht leider in der Praxis oft nicht aus! Zu ungenau!

Bei der Wendeltreppe im Teppenmodellierer wird diese Funktion "3D-Kurve aus Achse und Gradiente" sehr oft benutzt!
Insofern: Ja, dieses Node unbeding mit in den Backlog aufnehmen...

1 - 6 (6)
  • 1

Momentan ist diese Funktion noch nicht in VS abgebildet. Aber manchmal kann man die Zielkurven direkt mit anderer Nodes erzeugen. Wie genau sollte die Kurve aussehen? Wahrscheinlich könnten wir eine alternative Lösung finden.

Hallo Xingling,

der Node sollte einfach die Eingabe-Parameter der o.g. Funktion als Eingänge haben, also:
-Achse (Curve3D)
-Gradiente (Curve3D)
-Startpunkthöhe (Length)
und als Ausgang die entstehende BSpline3D-Kurve.

Möglicherweise wäre es gut, wenn man als Achse und Gradiente auch 2D-Kurven übergeben könnte. (so wie in Allplan auch)
Dann müßten diese vorher intern noch in 3D-Curven konvertiert werden.

Ein solches Node könnte man tatsächlich an vielen Stelle gebrauchen, z.B. bei Wendeltreppen und Wendelrampen
zur Erzeugung einer Helix! Diese (Helix) kann man sonst nämlich mit keiner anderen Funktion, weder in Allplan noch in
Visual-Scripting mit dieser Genauigkeit erzeugen! Eine "Annäherung" durch mit einer Spline verbundene Konstruktionspunkte
(wie bei CurveProjection) reicht leider in der Praxis oft nicht aus! Zu ungenau!

Bei der Wendeltreppe im Teppenmodellierer wird diese Funktion "3D-Kurve aus Achse und Gradiente" sehr oft benutzt!
Insofern: Ja, dieses Node unbeding mit in den Backlog aufnehmen...

Danke Nemo für die Erklärung.

Diese Funktion werden wir aufnehmen. Momentan können wir nur mit anderen Nodes an das Ergebnis annähen.

Hallo Xingling,

hier mal ein Preview, wie das aussehen könnte: s. helix.mp4

Da es die Funktion schon in der NemAll_Geometry gibt, sollte es ein leichtes ein, diese
mit einem Python-Wrapper zu versehen, und in ein Node zu verpacken. Die Funktion heißt:
Allplan::Geometry::Builder::CreateBSpline3DFromAxisAndGradient (...)

Attachments (1)

Type: video/mp4
Downloaded 38 times
Size: 1,80 MiB

Ich habe versucht die Funktion mit einem Skript nachzubauen.
Das PythonPart ist sicher noch sehr fehleranfällig und außerdem ist das Skript recht umfangreich. Mit einem einzigen Node wäre das viel besser.

Sollte es das Node in Zukunft geben, hoffe ich, dass ich damit die Fahrwege (Rails) für die Sweep-Nodes erstellen kann.

Wie genau die Sweep-Funktion arbeitet, was genau der Unterschied zwischen Pfad und Fahrweg ist und warum die Funktion so oft fehlschlägt, weiß ich noch nicht. Das soll hier auch nicht das Thema sein.

Attachments (3)

Type: application/zip
Downloaded 17 times
Size: 15,89 KiB
img
Ache und Gradiente.PNG
Type: image/png
Downloaded 24 times
Size: 95,10 KiB
img
Script.PNG
Type: image/png
Downloaded 20 times
Size: 265,39 KiB
1 - 6 (6)
  • 1

https://connect.allplan.com/ uses cookies  -  More information

Accept