DIM Code% &10000

FOR Shape = 1 TO 1

FOR Pass = 8 TO 10 STEP 2

P%=Code%
L%=Code%+&10000

 [ OPT Pass
 DCD Vertices-Code%
 DCD EndVertices-Vertices
 DCD Faces-Code%
 ]

CASE Shape OF
WHEN 1
  [ OPT Pass                            ; Open dodecahedron.

  .Vertices
    DCD   43 :DCD  108 :DCD  -26
    DCD   69 :DCD   83 :DCD   51
    DCD    0 :DCD   68 :DCD   98
    DCD  -69 :DCD   83 :DCD   51
    DCD  -43 :DCD  108 :DCD  -26
    DCD   -0 :DCD  -68 :DCD  -98
    DCD   69 :DCD  -83 :DCD  -51
    DCD   43 :DCD -108 :DCD   26
    DCD  -43 :DCD -108 :DCD   26
    DCD  -69 :DCD  -83 :DCD  -51
    DCD  -69 :DCD   51 :DCD  -83
    DCD   69 :DCD   51 :DCD  -83
    DCD  111 :DCD   10 :DCD   41
    DCD    0 :DCD  -15 :DCD  118
    DCD -111 :DCD   10 :DCD   41
    DCD   -0 :DCD   15 :DCD -118
    DCD  111 :DCD  -10 :DCD  -41
    DCD   69 :DCD  -51 :DCD   83
    DCD  -69 :DCD  -51 :DCD   83
    DCD -111 :DCD  -10 :DCD  -41
  .EndVertices

  .Faces
    = &45  :=   0 :=  4 := 10 := 15 := 11
    = &45  :=   1 :=  0 := 11 := 16 := 12
    = &45  :=   2 :=  1 := 12 := 17 := 13
    = &45  :=   3 :=  2 := 13 := 18 := 14
    = &45  :=   4 :=  3 := 14 := 19 := 10
    = &45  :=  15 := 10 := 19 :=  9 :=  5
    = &45  :=  19 := 14 := 18 :=  8 :=  9
    = &45  :=  18 := 13 := 17 :=  7 :=  8
    = &45  :=  17 := 12 := 16 :=  6 :=  7
    = &45  :=  16 := 11 := 15 :=  5 :=  6

    = &05  :=  11 := 15 := 10 :=  4 :=  0
    = &05  :=  12 := 16 := 11 :=  0 :=  1
    = &05  :=  13 := 17 := 12 :=  1 :=  2
    = &05  :=  14 := 18 := 13 :=  2 :=  3
    = &05  :=  10 := 19 := 14 :=  3 :=  4
    = &05  :=   5 :=  9 := 19 := 10 := 15
    = &05  :=   9 :=  8 := 18 := 14 := 19
    = &05  :=   8 :=  7 := 17 := 13 := 18
    = &05  :=   7 :=  6 := 16 := 12 := 17
    = &05  :=   6 :=  5 := 15 := 11 := 16
    = 0
    ALIGN
  ]

ENDCASE

NEXT Pass

OSCLI("*Save ^.Shapes."+STR$(Shape)+" "+STR$~Code%+"+"+STR$~(P%-Code%))
OSCLI("*SetType ^.Shapes."+STR$(Shape)+" Data")
NEXT Shape
END
