Habe folgendes Problem:
Ich wollte eine Strecke entlang des Paths zeichnen lassen. Das Problem besteht darin dass dauernd Lücken in der Strecke entstehen. Ich weiss dass es daran liegt dass die Dreiecke
mal nach innen, mal nach außen gezeichnet werden. Aber ich bekomme einfach keine korrekte Ausrichtung hin, wenn mal Lücken weg sind, entstehen woanders wieder welche.
Der Code zum zeichnen der Strecke anhand eines Paths:
Alles anzeigen
Bilder:
Die Lücken

Die Ausrichtung der Dreiecke

Mein Ziel ist es dass die Lücken verschwinden, also dass die Ausrichtung der Dreiecke sich nicht verändert.
Ich wollte eine Strecke entlang des Paths zeichnen lassen. Das Problem besteht darin dass dauernd Lücken in der Strecke entstehen. Ich weiss dass es daran liegt dass die Dreiecke
mal nach innen, mal nach außen gezeichnet werden. Aber ich bekomme einfach keine korrekte Ausrichtung hin, wenn mal Lücken weg sind, entstehen woanders wieder welche.
Der Code zum zeichnen der Strecke anhand eines Paths:
GML-Quellcode
- steps = 10/path_get_length(path_Strecke)
- dicke = 4
- draw_set_color(c_white)
- for(i=0;i<=1;i+=steps)
- {
- pxO = path_get_x(path_Strecke,i-steps)
- pyO = path_get_y(path_Strecke,i-steps)
- pxA = path_get_x(path_Strecke,i)
- pyA = path_get_y(path_Strecke,i)
- pxB = path_get_x(path_Strecke,i+steps)
- pyB = path_get_y(path_Strecke,i+steps)
- pxC = path_get_x(path_Strecke,i+steps+steps)
- pyC = path_get_y(path_Strecke,i+steps+steps)
- pdA = point_direction(pxA,pyA,pxO,pyO)
- pdB = point_direction(pxA,pyA,pxB,pyB)
- pdC = point_direction(pxB,pyB,pxA,pyA)
- pdD = point_direction(pxB,pyB,pxC,pyC)
- dA = (pdA + pdB)/2
- dB = (pdC + pdD)/2
- d3d_primitive_begin(pr_trianglelist);
- d3d_vertex(pxA+lengthdir_x(dicke,dA),pyA+lengthdir_y(dicke,dA),0);
- d3d_vertex(pxA-lengthdir_x(dicke,dA),pyA-lengthdir_y(dicke,dA),0);
- d3d_vertex(pxB-lengthdir_x(dicke,dB),pyB-lengthdir_y(dicke,dB),0);
- d3d_vertex(pxB-lengthdir_x(dicke,dB),pyB-lengthdir_y(dicke,dB),0);
- d3d_vertex(pxB+lengthdir_x(dicke,dB),pyB+lengthdir_y(dicke,dB),0);
- d3d_vertex(pxA+lengthdir_x(dicke,dA),pyA+lengthdir_y(dicke,dA),0);
- d3d_primitive_end();
- }
Bilder:
Die Lücken
Die Ausrichtung der Dreiecke
Mein Ziel ist es dass die Lücken verschwinden, also dass die Ausrichtung der Dreiecke sich nicht verändert.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Chris987 ()