1.正方形を作る

origami1.gif

頭の中で考えても良いのですが、
実際に上の折り紙を折ってみた方が分かりやすいです。
折り上がりましたら、展開して元の正方形に戻します。
このように折り目が付いているはずです↓

paper1.gif


先ず、この折り目で区切られた紙を IndexedFaceSet ノードで作ります。
ここでは縦横の長さが2の紙にしましょう。
中心の座標を(0, 0, 0)とし、左前(-1, 0, 1), 中前(0, 0, 1), …と振って行きます。
座標(point)にコメント「#」を付けて順番を振っておくと coordIndex を書くとき便利です。
ひっくり返しても表示されるよう solid FALSE を書いておきます。

#VRML V2.0 utf8
#折り紙
Shape {
    appearance Appearance {
        material Material {
            diffuseColor 1 1 1
        }
    }
    geometry IndexedFaceSet {
        coord Coordinate {
            point [
                -1 0 1 #0 左前
                0 0 1 #1 中前
                1 0 1 #2 右前
                1 0 0 #3 右中
                1 0 -1 #4 右奥
                0 0 -1 #5 中奥
                -1 0 -1 #6 左奥
                -1 0 0 #7 左中
                0 0 0 #8 中心
            ]
        }
        coordIndex [
            0 1 8 -1
            1 2 8 -1
            2 3 8 -1
            3 4 8 -1
            4 5 8 -1
            5 6 8 -1
            6 7 8 -1
            7 0 8 -1
        ]
        solid FALSE
    }
}


実際に見てみるとこうなります。
真ん中に平たい折り紙がありますが、
厚さがないので、正面からは何も見えないです(^^;



「2.位置を変える」へ進む