OT : Delphi polygon
Andras Tantos
andras_tantos at yahoo.com
Thu Mar 25 21:26:19 CET 2004
Hali!
Jonak tunik, de miert kell random? Ugy ertem, az eljaras *tetszoleges*
egyenessel mukodik. Tehat valasszunk egy egyszerut, pl. viszinteset, vagy
fuggolegeset. Sokkal egyszerubbe valik minden szamitas.
Udv,
Tantos Andras
http://andras.tantos.homedns.org
> Egy gyakran használt megoldás: a pontokból oldalegyeneseket képzel. Ha
> megvannak az egyenesek, akkor fogod a pontot, azon keresztül random
> húzol egy egyenest. Nomármost ennek a random egyenesnek a
> metszéspontjait kiszámolod az oldalegyenesekkel. Aztán megnézed, hogy
> ebbõl mik a valódi metszéspontok (amik tényleg az oldalakra esnek, nem
> az oldal meghosszabbítására...). Ezt úgy lehet, hogy x v. y
> koordinátákat nézel, és így a metszéspontnak a szakasz két végpontja
> között kell lenni. Tehát megvannak a valódi metszéspontok. Nézd meg
> azt, hogy hány valódi pont van a random egyenesen lévõ kérdéses pont
> két oldalán. Ha mindkét oldalon páratlan van, akkor a pont benne van a
> poligonban. Ha páros a pontok száma, akkor kívül van. Hogy mi van
> akkor, ha a két oldalon különbözõ a paritás? Most következik:
>
> Elõfordulhat, hogy a random egyenes pont egy csúcsponton megy
> keresztül. Ez zavart kelthet, ezért úgy definiáld a valódi
> metszéspontokat, hogy egy szakaszhoz mindig csak az egyik végpontja
> tartozzon. Ekkor minden mûxik jól, ugyanolyan lesz a két oldalon a
> paritás :)
> Azért ilyen bonyolult az algoritmus, mert ez tud kezelni konkáv
> poligont is, nemcsak konvexet.
> Ha lerajzolod, akkor jobban megérted.
> Sok szerencsét!
>
> Üdv: F.Tamás
> BZ> Sziasztok !
>
> BZ> Tudna valaki segiteni ? Egy kiértékelo
> BZ> algoritmust keresek ami egy poligonról
> BZ> megmondja, hogy egy adott koordináta
> BZ> bele esik-e vagy sem . A koordináták
> BZ> TPoint tömben vannak ugye, és max 6
> BZ> vertexrol lenne szó.
> BZ> Egy 7segLED decoder tervezöhöz kellene
> BZ> ( Hogy ne legyen annyira OT )
>
> BZ> Üdv. Zoli
>
>
>
>
More information about the Elektro
mailing list