a: 切頭八面体の基本的な置き方は, (htmlでは式が書き難いから言葉で述べると) 0,1,2,3の, 同じもののない3つ組である.
b: 体心立方格子のVolonoi領域である.
bはなるほどそうらしいと思うが, そしてそういう言い方もあるのかと思うが, aはすぐには分らなかった. その組を作ってみると,
((0 1 2) (0 1 3) (0 2 1) (0 2 3) (0 3 1) (0 3 2) (1 0 2) (1 0 3) (1 2 0) (1 2 3) (1 3 0) (1 3 2) (2 0 1) (2 0 3) (2 1 0) (2 1 3) (2 3 0) (2 3 1) (3 0 1) (3 0 2) (3 1 0) (3 1 2) (3 2 0) (3 2 1))になり, たしかに24個あって, 切頭八面体の頂点の数と同じである.
それぞれの3つ組を(
なるほど六角形が現れる.
そこでx軸とz軸, y軸とz軸の角度も60度にしたグラフ用紙を作って, 上に点を 書き込むことにした. つまり, x軸y軸z軸は正四面体の3本の辺に沿っている. それが上の赤緑青の線である. 赤はz=0の平面座標で, その三角形の中心を起点とした緑のz=1の平面座標が出来, その三角形の中心を起点とした青の z=2の平面座標が出来る. 同様にしてz=3の座標が出来るが, それはz=0のと一致する.
黒線で描いたのが六角形を底にした切頭八面体である.
これを確認するため, 別の切頭八面体の絵もある. 左上Aは, 私が通常に描く切頭八面体 である. その中心を通る直交するx軸(赤), y軸(緑), z軸(青)も描いてある.
私の描画プログラムは, 頂点の座標を座標軸に平行移動したり, 座標軸に沿って回転 したり出来る. BはAの図を, z軸について45度回転したものだ. Cはそれを右下の 5,12の辺が, xyz軸の中心に来るように移動したもの. Dはそれを右下の六角形が 底に来るように, x軸について回転したものである. 最後のEは, 座標軸の中心に 切頭八面体の中心が来るように移動した.
この時, 各頂点の直交座標での位置は次の通りである. (左は頂点の番号順, 右は高さ別)
0 (-2.121 0.408 -0.577) 9 (-1.414 0.0 1.732) 1 (-1.414 0.0 -1.732) 11 (-0.707 1.225 1.732) 2 (-1.414 1.633 -0.577) 16 (-0.707 -1.225 1.732) 3 (-0.707 1.225 -1.732) 18 (0.707 1.225 1.732) 4 (-2.121 -0.408 0.577) 20 (0.707 -1.225 1.732) 5 (-0.707 -1.225 -1.732) 22 (1.414 0.0 1.732) 6 (-0.707 2.041 0.577) 1 (-1.414 0.0 -1.732) 7 (0.707 1.225 -1.732) 3 (-0.707 1.225 -1.732) 8 (-1.414 -1.633 0.577) 5 (-0.707 -1.225 -1.732) 9 (-1.414 0.0 1.732) 7 (0.707 1.225 -1.732) 10 (-0.707 -2.041 -0.577) 12 (0.707 -1.225 -1.732) 11 (-0.707 1.225 1.732) 14 (1.414 0.0 -1.732) 12 (0.707 -1.225 -1.732) 4 (-2.121 -0.408 0.577) 13 (0.707 2.041 0.577) 6 (-0.707 2.041 0.577) 14 (1.414 0.0 -1.732) 8 (-1.414 -1.633 0.577) 15 (1.414 1.633 -0.577) 13 (0.707 2.041 0.577) 16 (-0.707 -1.225 1.732) 21 (1.414 -1.633 0.577) 17 (0.707 -2.041 -0.577) 23 (2.121 -0.408 0.577) 18 (0.707 1.225 1.732) 0 (-2.121 0.408 -0.577) 19 (2.121 0.408 -0.577) 2 (-1.414 1.633 -0.577) 20 (0.707 -1.225 1.732) 10 (-0.707 -2.041 -0.577) 21 (1.414 -1.633 0.577) 15 (1.414 1.633 -0.577) 22 (1.414 0.0 1.732) 17 (0.707 -2.041 -0.577) 23 (2.121 -0.408 0.577)) 19 (2.121 0.408 -0.577)各頂点の直交座標(x,y,z)を, 斜方座標(a,b,c)に変換するには, 例えば
(define (tcood x y z) (let* ((c (/ (* z 3) (sqrt 6))) (b (/ (* (- y (/ (* c (sqrt 3)) 6)) 2) (sqrt 3))) (a (- x (/ b 2) (/ c 2)))) (list a b c)))しかしこれで変換すると0.707や2.121が出るので, 正規化すると, 先程の24個の 直交座標は
((-3 1 -1) (-1 1 -3) (-3 3 -1) (-1 3 -3) (-3 -1 1) (1 -1 -3) (-3 3 1) (1 3 -3) (-1 -3 1) (-3 -1 3) (1 -3 -1) (-3 1 3) (3 -1 -3) (-1 3 1) (3 1 -3) (1 3 -1) (-1 -3 3) (3 -3 -1) (-1 1 3) (3 1 -1) (1 -3 3) (3 -3 1) (1 -1 3) (3 -1 1))なるほど, 最初に書いた座標は0,1,2,3であったが, 今回のは. 切頭八面体の中心に座標の 中心を置いたので, -3,-1,1,3で構成されていた.