QuadCurve2D: find punkt på linjen

Tags:    java

<< < 12 > >>
Hejsa.
Jeg sidder og er i gang med et program som tegner en buet linje mellem to punkter. Dette gør jeg ved at benytte QuadCurve2D, som vist nedenfor:

g2.draw(new QuadCurve2D.Double(...

Men nu har jeg det problem at jeg ønsker at tegne en pil på linjen. Men det har jeg store problemer med, da jeg ikke ved hvor meget linjen buer, og derfor ikke ved hvor pilen skal tegnes.

Er der nogen der har en ide til hvordan jeg løser problemet? Måske skulle jeg ikke brude QuadCurve2D. Men findes der andre gode alternativer?

Jeg håber nogen kan hjælpe mig. Det er nemlig et meget stor problem.



14 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Hey, tak for linken. Men kan at de bruger præcis samme metode som mig, og at de heller ikke finder løsningen på problemet. Æv, æv.

Der er ingen der har en ide til det?



Hvis din kurve er symmetrisk som du siger kan du vel finde midten af den, ved at gøre følgende.



-sæt det ene punkt til at være origo.

-Roter det andet punkt så det ligger i origo y værdi.

-tegn curve.


-tag bouinding box af curven(er en funktion ifølge specifikationen)

- punktet der er toppen midten af boksen er top midt punktet på curven.

- tag dette punkt og lav den modsatte rotation af den foregående og du burde have det samme punkt på den rigtigt kurve.



Hvis din kurve allere er sådan at begge punkter har samme y værdi kan du undlade rotationerne.





Indlæg senest redigeret d. 01.03.2010 12:41 af Bruger #5620
Hvorfor tegner du ikke bare den øverste halvdel af en ellipse ?



Hey. Subdivision virker som en brand god ide. Det er super godt. Det skal jeg lige rode med. Men har testet dine koder i en lille test, og det virker jo fuldstændig som jeg vil have det :)

Tak for hjælpen, Nørden, og alle andre. I har redet mit Graf Teori projekt :)



Indlæg senest redigeret d. 01.03.2010 16:37 af Bruger #5097
<< < 12 > >>
t