<<plato.m numVertices = 8 Do[v[i+2*j+4*k] = 2*{i,j,k}-1,{i,0,1},{j,0,1},{k,0,1}] Faces = { {0,2,6,4}, {1,3,7,5}, {0,1,5,4}, {2,3,7,6}, {0,1,3,2}, {4,5,7,6}} Edges = {{0,1}, {0,2}, {0,4}, {1,3}, {1,5}, {2,3}, {2,6}, {3,7}, {4,5}, {4,6}, {5,7}, {6,7}} cube = BasicPicture[] cubedual = DualPicture[] cubediag = g3D[ {Thickness[0.005], White, Linify /@ Edges, Table[{col[i],Line[{1.5 v[i],-1.5 v[i]}]},{i,0,3}] },{5,1.5,0.5}] cuberot = g3D[{ BWSolid[], Thickness[0.01], Red, Line[{ v[5], 1.3 v[5]}], Line[{-v[5],-1.3 v[5]}], Green, Line[{0.5*(v[4]+v[6]),0.75*(v[4]+v[6])}], Line[{-0.5*(v[4]+v[6]),-0.75*(v[4]+v[6])}], Blue, Line[{{1,0,0},{1.7,0,0}}], Line[{{-1,0,0},{-1.7,0,0}}] }] (* WriteLiveForm["/HOME1/pm1nps/plato/cube/cube.m",cube] WriteLiveForm["/HOME1/pm1nps/plato/cube/cubediag.m",cubediag] WriteLiveForm["/HOME1/pm1nps/plato/cube/cuberot.m",cuberot] WriteLiveForm["/HOME1/pm1nps/plato/cube/cubedual.m",cubedual] *)