(2D) Wie kann man mithilfe von Python dafür sorgen, dass eine Bezier-Kurvenlinie eine Breite hat?Python

Python-Programme
Guest
 (2D) Wie kann man mithilfe von Python dafür sorgen, dass eine Bezier-Kurvenlinie eine Breite hat?

Post by Guest »

Wenn ich eine Bezier-Kurve habe, wie kann ich ihr eine Breite geben und wie erhalte ich Scheitelpunkte ihrer Kontur?
Mein Versuch: Ich habe eine Bezier-Kurve gezeichnet, indem ich eine solche Kurve verwendet habe Startpunkt, zwei Kontrollpunkte und ein Endpunkt, ihre Koordinaten sind:

Code: Select all

p0_ = [11, -0.45]
p1_ = [13.5, -0.45]
p2_ = [13.5, -4]
p3_ = [16, -4]
Die Abbildung sieht wie folgt aus:
Bezier-Kurve
Aber ich möchte, dass sie eine Breite hat, sagen wir Breite = 0,7, dann ändere ich die ursprünglichen Koordinaten in:

Code: Select all

width = 0.7
p01_ = [11, -0.45 + width / 2]
p11_ = [13.5, -0.45 + width / 2]
p21_ = [13.5, -4 + width / 2]
p31_ = [16, -4 + width / 2]
p02_ = [11, -0.45 - width / 2]
p12_ = [13.5, -0.45 - width / 2]
p22_ = [13.5, -4 - width / 2]
p32_ = [16, -4 - width / 2]
Und wenn ich dann eine neue Figur zeichne, finde ich, dass sie ziemlich seltsam aussieht. Es ist nicht einheitlich.
Bezier-Kurve mit Breite
Offensichtlich ist das nicht das, was ich will, ich vermute, dass die Koordinaten falsch sind, aber ich Sie wissen nicht, wie Sie das Richtige finden? Was ich will, ist wie folgt:
Bezier-Kurve, die ich will
Sie sehen, überall ist einheitlich.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post