分形之謝爾賓斯基(Sierpinski)三角形


謝爾賓斯基三角形(英語:Sierpinski triangle)是一種分形,由波蘭數學家謝爾賓斯基在1915年提出,它是一種典型的自相似集。也有的資料將其稱之為謝爾賓斯基墳垛.
Sierpinski triangle evolution.svg

其生成過程為:

  1. 取一個實心的三角形。(多數使用等邊三角形)
  2. 沿三邊中點的連線,將它分成四個小三角形。
  3. 去掉中間的那一個小三角形。
  4. 對其余三個小三角形重復1。

核心代碼:

static void SierpinskiTriangle(const Vector3& v1, const Vector3& v2, const Vector3& v3, Vector3* pVertices)
{
    Vector3 v12 = (v1 + v2)*0.5f;
    Vector3 v13 = (v1 + v3)*0.5f;
    Vector3 v23 = (v2 + v3)*0.5f;

    pVertices[0] = v1;
    pVertices[1] = v12;
    pVertices[2] = v13;

    pVertices[3] = v2;
    pVertices[4] = v23;
    pVertices[5] = v12;

    pVertices[6] = v3;
    pVertices[7] = v13;
    pVertices[8] = v23;
}

軟件下載地址:http://files.cnblogs.com/WhyEngine/Fractal.7z

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM