- こちらでPermutohedronのことを書いている
- N=3の場合は、6つの順列であって、それを3次元空間に均等配置すると、正八面体であると書いた
- さて、正八面体の12本の辺のうち、どれに線を引くのがよいのだろうか?
- (1,2,3)の3数のうち、2数を取り出して、入れ替えた並べ方は(1,3,2),(2,1,3),(3,2,1)の3通りだから、この3つと隣り合わせたい(隣り合わせには辺を引く)
- 引いてみよう
- 頂点数6
- 辺数8
- サイクルが四角形を作っていて、それは4個
- 球の大円上の正方形があって、その大円を赤道としたときの北極南極に残りの2頂点が取ってあると見たときに、赤道上の正方形に対応する辺を引き、南北極を結ぶ線を引き、南極から赤道上の2点(経度上180度離れている)に辺を引き、北極からは、南極から辺の引かれていない赤道上の2点に辺を引いてある
Vs<-matrix( c( 1,0,0, 0,1,0, 0,-1,0, 0,0,1, -1,0,0, 0,0,-1 ), 6,3, byrow=TRUE ) library(gtools) perms<-permutations(3,3) Ne<-101 t<-seq(from=0,to=1,length=Ne) Es<-NULL for(i in 1:(length(Vs[,1])-1)){ for(j in (i+1):length(Vs[,1])){ if(prod(perms[i,]-perms[j,])==0){ tmp<-matrix(0,length(t),3) for(k in 1:length(t)){ tmp[k,]<-Vs[i,]*t[k]+Vs[j,]*(1-t[k]) } Es<-rbind(Es,tmp) } } } NptE<-length(Es[,1]) Npt<-10000 sp<-matrix(rnorm(Npt*3),Npt,3) sp<-sp/sqrt(apply(sp^2,1,sum)) XYZ<-rbind(sp,Es) col<-c(rep(gray(8/10),Npt),rep(2,NptE)) library(rgl) plot3d(XYZ,col=col)