Felvonuló terek

A Marching Squares (  angolul  -  "mozgó négyzetek") egy olyan számítógépes grafikai algoritmus, amely kétdimenziós skalármezőn izolációkat generál .

Alkalmazás

Az algoritmus az izobárok megjelenítésére szolgál az időjárási térképeken , a szintvonalak pedig a földrajzi térképeken. Ez a menetkockák algoritmusának leegyszerűsítése a lapos esetre.

Hogyan működik

Bemenetként az algoritmus egy szabályos rácsot kap, amelynek minden csomópontjában ismert a mező értéke. A kimeneti rács (az ábrán kék színnel jelölve) kisebb felbontású lehet (ebben az esetben a pontosság elvész, de az aliasing csökken). Ezt követően a kimeneti rács minden csomópontja esetén ellenőrizzük, hogy az abban lévő érték magasabb-e, mint az izofelületen. Minden magasabb csomóponthoz "+", a többihez - "-" van hozzárendelve. Ezután megvizsgáljuk a kimeneti rács négyzeteit, amelyek csúcsai a megjelölt csomópontokban vannak. Összesen 16 különböző eset van, amelyek a szimmetriákat és az elforgatásokat figyelembe véve négyre csökkenthetők:

A negyedik esetben lehetetlen egyértelműen meghatározni az izolált szakasz alakját, így a négyzet közepén lévő érték is megtekinthető (ha a bemeneti adatok ezt lehetővé teszik). Ha a négyzet közepén nem lehet kideríteni az értéket, a meghozott döntés befolyásolhatja az izolációs vonal összekapcsolhatóságát.

Lineáris interpolációt használnak a kapott izolátum minőségének javítására . Ebben az esetben a négyzet szélén lévő izolációs szakasz vége osztja az élt a -hoz viszonyítva , ahol  a négyzet élének végén lévő értékek vannak, az  az izolin értéke. Valójában az izolin szegmens vége az él végéhez van "húzva", amely közelebb van a valódi izolátumhoz.

Linkek