b-Spline

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

WICHTIG: Bitte zuerst lesen, bevor Sie posten
herbk
Veteran
Posts: 2657
Joined: Mon Nov 03, 2014 3:45 pm
Location: Windsbach, Bavarya (Germany)

Re: b-Spline

Post by herbk »

Guten Morgen Chris,
chrisb wrote: Sun Oct 20, 2019 9:23 pm
herbk wrote: Sun Oct 20, 2019 4:23 pm Also Jungs, ich weiss nicht weshalb Ihr das wieder so kompliziert macht... :D
Weil ich auch nicht so oft mit Draft arbeite hab ich's schnell mal probiert: In Draft eine Form mittels B-Spline erstellt und in der Part WB extrudiert. Geht ohne Problem und irgendwelche Zwischenschritte.
Das ist sehr überzeugend; allerdings war das auch nicht die Aufgabe. Da sollte ein offener B-Spline mit einer Linie geschlossen werden. Ich kenne mich in Draft auch nicht gut aus, bin mir aber ziemlich sicher, dass das nicht ohne Zwischenschritt geht. Wenn doch, dann würde ich das gerne sehen.
Ja, einen Zwischenschritt benötigt mann dann: Wähle im Objektbaum alle Linien die Du verbunden haben möchtest und die Funktion "Draft to Sketch".
Bei dem Beispiel habe ich dann im Sketcher noch die Endpunkte der Linie mit den Endpunkten des B-Splines vereinen.
Draft_B-Spline_2.jpg
Draft_B-Spline_2.jpg (30.84 KiB) Viewed 1523 times
Inzwischen habe ich mich allerdings an das Verhalten der Sketcher B-Spline gewöhnt und bekomme damit relativ gut die Kontur hin die ich benötige.

Aber: auch wenn man es irgendwie hinfriemeln kann, die B-Spline (egal ob Draft oder Sketcher) sind nicht wirklich "handliche" Werkzeuge. Und wenn wir schon dabei sind, - Bézierkurven im Sketcher wären auch etwas sehr nützliches... :D
Attachments
Draft_B-Spline_2.FCStd
(8.84 KiB) Downloaded 29 times
Gruß Herbert
freecad-heini-1
Veteran
Posts: 7788
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: b-Spline

Post by freecad-heini-1 »

Ein kurzes Video wie man Bsplines im Creo Sketcher erzeugt.
Man klickt Punkte im Sketcher, diese kann man bemaßen und jederzeit vollparametrisch verändern.
Die Enden des Bspline kann man nachträglich mit Constraints versehen, z.B. einer Tangentialität.
Die Punkte sind zu anderen Sketcher-Elementen referenzierbar, z.B. an eine Konstruktionslinie die per Winkel und Abstandsmaß versehen ist. Industriedesigner benötigen solche Bsplines.
https://peertube.mastodon.host/videos/w ... 1e5c9fbc19

Solidworks:
https://www.youtube.com/watch?v=uFplo2AGMyU

Catia:
https://www.youtube.com/watch?v=cGV-r3TUSFY
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: b-Spline

Post by microelly2 »

Wenn man sich auf Bezierkurven beschränkt, gehts einfach so:
phpBB [video]

Ich wende die Idee auch auf Flächen an
https://youtu.be/8qJHUK6xh9M
wmayer
Founder
Posts: 20243
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: b-Spline

Post by wmayer »

microelly2 wrote: Sun Oct 20, 2019 9:41 pm Es gibt einen einfachen Trick, BSplines durch Punkte zu zwingen: Der Pol muss eine höhere Multiplizität haben.
Wenn die Multiplizität gleich dem Grad der Kurve ist, hat man einen Knoten, der ein Pol ist und mit der Kurve wandert.
https://youtu.be/EjNBkRbC8Do
Wie sieht denn dann Stetigkeit in solchen Punkten aus? Sind das dann Knicke -- also nur noch C0-stetig?
wmayer
Founder
Posts: 20243
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: b-Spline

Post by wmayer »

freecad-heini-1 wrote: Mon Oct 21, 2019 7:34 am Ein kurzes Video wie man Bsplines im Creo Sketcher erzeugt.
Man klickt Punkte im Sketcher, diese kann man bemaßen und jederzeit vollparametrisch verändern.
Die Enden des Bspline kann man nachträglich mit Constraints versehen, z.B. einer Tangentialität.
Die Punkte sind zu anderen Sketcher-Elementen referenzierbar, z.B. an eine Konstruktionslinie die per Winkel und Abstandsmaß versehen ist. Industriedesigner benötigen solche Bsplines.
https://peertube.mastodon.host/videos/w ... 1e5c9fbc19

Solidworks:
https://www.youtube.com/watch?v=uFplo2AGMyU

Catia:
https://www.youtube.com/watch?v=cGV-r3TUSFY
Weißt Du, ob der Grad der B-Splines beschränkt ist (z.B. auf drei). Polynome haben ja die unangenehme Eigenschaft, dass sie bei hohem Grad anfangen zu schwingen.
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: b-Spline

Post by microelly2 »

wmayer wrote: Mon Oct 21, 2019 8:26 am
microelly2 wrote: Sun Oct 20, 2019 9:41 pm Es gibt einen einfachen Trick, BSplines durch Punkte zu zwingen: Der Pol muss eine höhere Multiplizität haben.
Wenn die Multiplizität gleich dem Grad der Kurve ist, hat man einen Knoten, der ein Pol ist und mit der Kurve wandert.
https://youtu.be/EjNBkRbC8Do
Wie sieht denn dann Stetigkeit in solchen Punkten aus? Sind das dann Knicke -- also nur noch C0-stetig?
Das hängt von den benachbarten Polen ab.
Wenn ich z. B 5 Pole habe A B C D E und C ist der Pol mit Mutiplizität 3:
Wenn BCD kollinear liegen, dann habe ich eine saubere Tangente (wie im video) Mit Einschränkungen von A und E bekomme ich dann auch noch Krümmungsstetigkeit hin
Wenn z.B. alle 5 Punkte auf einer Geraden liegen, bekomme ich im Punkt C die Krümmung 0 hin.
cp_050.png
cp_050.png (30.86 KiB) Viewed 1487 times
Man kann aber auch dafür sorgen, dass die Krümmung ungleich 0 im Pol C stetig bleibt
cp_051.png
cp_051.png (29.48 KiB) Viewed 1487 times
wmayer
Founder
Posts: 20243
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: b-Spline

Post by wmayer »

Das hängt von den benachbarten Polen ab.
Wenn ich z. B 5 Pole habe A B C D E und C ist der Pol mit Mutiplizität 3:
Wenn BCD kollinear liegen, dann habe ich eine saubere Tangente (wie im video) Mit Einschränkungen von A und E bekomme ich dann auch noch Krümmungsstetigkeit hin
Den Kniff kenne ich schon. Aber wenn ich in FreeCAD die Multiplizität eines Splines im Sketcher anzeige, dann ändert sich die Multiplizität bei dieser Konstruktion eben nicht, warum auch? Der Spline besteht aus 11 Kontrollpunkten, ist vom Grad 3 und hat folgenden Knotenvektor: [0.0, 0.125, 0.25, 0.375, 0.5, 0.625, 0.75, 0.875, 1.0] mit der Multiplizität [4, 1, 1, 1, 1, 1, 1, 1, 4]

Die Frage ist also was passiert mit der Stetigkeit, wenn die Multiplizität so aussieht: [4, 1, 1, 3, 1, 1, 4]? Oder hat das gar keinen Einfluss darauf?
chrisb
Veteran
Posts: 53928
Joined: Tue Mar 17, 2015 9:14 am

Re: b-Spline

Post by chrisb »

Im Sketcher gibt es bereits ohne Zusatzhilfsmittel die Funktionen "Increase/Decrease knot multiplicity". Ich weiß eben nur nicht, wie ich die dazu passenden Elemente auswählen kann.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: b-Spline

Post by microelly2 »

wmayer wrote: Mon Oct 21, 2019 9:18 am Die Frage ist also was passiert mit der Stetigkeit, wenn die Multiplizität so aussieht: [4, 1, 1, 3, 1, 1, 4]? Oder hat das gar keinen Einfluss darauf?
Wenn man die Multiplizität eines Poles erhöht, entsteht dort zunächst einmal ein Knick, den man mit den benachbarten Polen wieder abfedern muss.
Ich mach das auch bei Übergängen zwischen Flächen. Ich nehme ein, zwei Reihen Pole und berechne dann Übergangspole.
Meine besten Erfahrungen habe ich mit Bezierflächen 4 x 4 Pole gemacht oder in Kombination mit solchen Knotenvektoren [4,3,3, ...,4].
Die kann man gut verbinden und trennen.
https://youtu.be/njc4wng1nRE
wmayer
Founder
Posts: 20243
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: b-Spline

Post by wmayer »

Verstehe, danke!
Post Reply