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 .
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.
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.
1. eset : Minden csúcs az egyenlő felület felett (vagy alatta) van.
2. eset : Egy kivételével minden csúcs az egyenlő felület felett (vagy alatta) van.
3. eset : Két csúcs ugyanazon az élen van az egyenlő felület felett (vagy alatta).
4. eset : Két olyan csúcs van, amelyek nem osztoznak egy élen, az egyenlő felület felett (vagy alatta).
A 4. eset megoldása pozitív értékkel a cellában.
A 4. eset megoldása negatív értékkel a cellában.
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.