IT-lexikon › Programmering › Diamond-square

Diamond-square

Programmering In English → Uppdaterad: 2026-10-24

Genererar fraktal terräng genom att om och om igen sätta en mittpunkt till grannarnas medel plus ett krympande slumptal.

Algoritmen arbetar på ett rutnät med sidan 2^n+1. Seeda de fyra hörnen, kör sedan ett diamantsteg (mitten av varje kvadrat) och ett kvadratsteg (mitten av varje kant), där varje ny punkt blir grannarnas medelvärde plus ett slumptal vars amplitud halveras för varje varv.

Fournier, Fussell och Carpenter beskrev den 1982 som en 2D-generalisering av midpoint displacement. Den ger trovärdiga höjdkartor billigt, men lämnar ett karakteristiskt fel: synliga veck längs rutnätets axlar, eftersom kvadratstegets punkter får färre grannar att medelvärdesbilda.

← Tillbaka till lexikonet