Wenn ich Ihre Frage richtig verstanden habe, wollen Sie so etwas wie eine Treppe zeichnen. Ich gehe davon aus, dass eine der Linien eine Gleichung hat
a x + b y + c = 0
mit Nicht-Null a
und b
(Sonderfälle a=0
oder b=0
sind trivial). Ich gehe auch davon aus a^2+b^2=1
(wenn nicht, teilen Sie einfach die Gleichung durch 1/sqrt(a^2+b^2)
).
Wenn dann die Längen Ihrer Linien L
und die Koordinate des Startpunkts sind (x0,y0)
, dann sind die Koordinaten der anderen Punkte, an denen senkrechte Linien beginnen
(x_i, y_i) = ( x0 + (b L i)/(N-1), y0 - (a L i)/(N-1) )
wo i
läuft fro 0
zu N-1
, und N
ist die Anzahl der Punkte, die Sie für Ihre Treppe benötigen.
Hinweis: Wenn Punkte in die falsche Richtung gehen, verwenden Sie das umgekehrte Zeichen
(x_i, y_i) = ( x0 - (b L i)/(N-1), y0 + (a L i)/(N-1) )
Nachdem Sie Punkte haben, an denen die senkrechten Linien beginnen, lauten die parametrischen Gleichungen für jede senkrechte Linie
x_i(t) = x_i + a t D, y_i(t) = y_i + b t D
Dabei t
ändert sich von 0
nach 1
und D
ist der Abstand zwischen Ihren parallelen Linien.
Hinweis: Wenn senkrechte Linien in die falsche Richtung gehen, das Vorzeichen ändern
x_i(t) = x_i - a t D, y_i(t) = y_i - b t D
Das ist mehr oder weniger es)