# ---- 3D Tetrahedron ----------------------------------------------- # ---- wire frame (tetrahedron) corner points pts = [ (0,100,0), (50,0,0), (-50,0,0), (0,0,50) ] # ---- pivot point pivot = (0, 0, 0) # ---- wireframe (tetrahedron) lines lns = [ (pts[0],pts[1]), (pts[0],pts[2]), (pts[0],pts[3]), (pts[1],pts[2]), (pts[2],pts[3]), (pts[3],pts[1]) ] # ----------3D Square Pyramid --------------------------------------- # ---- wire frame (square pyramid) corner points pts = [ (0,100,0), (50,0,-50), (50,0,50), (-50,0,50), (-50,0,-50) ] # ---- pivot point pivot = (0, 0, 0) # ---- wire frame (square pyramid) lines lns = [ (pts[0],pts[1]), (pts[0],pts[2]), (pts[0],pts[3]), (pts[0],pts[4]), (pts[1],pts[2]), (pts[2],pts[3]), (pts[3],pts[4]), (pts[4],pts[1]) ] # ----------3D Octahedron ------------------------------------------- # ---- wire frame (octahedron) corner points pts = [ (0,100,0), (50,0,-50), (50,0,50), (-50,0,50), (-50,0,-50), (0,-100,0) ] # ---- pivot point pivot = (0, 0, 0) # ---- wire frame (octahedron) lines lns = [ (pts[0],pts[1]), (pts[0],pts[2]), (pts[0],pts[3]), (pts[0],pts[4]), (pts[1],pts[2]), (pts[2],pts[3]), (pts[3],pts[4]), (pts[4],pts[1]), (pts[5],pts[1]), (pts[5],pts[2]), (pts[5],pts[3]), (pts[5],pts[4]) ] # ----------3D Cube ------------------------------------------------ # ---- wire frame cube (points, lines, surfaces, normal vectors) # # 5+----------+6 # /| /| # / | / | # 1+----------+2 | # | | | | # | 4+-------|--+7 # | / | / # |/ |/ # 0+----------+3 # # # ---- wire frame (cube) corner points pts = [ (-50,-50,50), (-50,50,50), # point 0,1 (50,50,50), (50,-50,50), # point 2,3 (-50,-50,-50), (-50,50,-50), # point 4,5 (50,50,-50), (50,-50,-50) ] # point 5,7 # # ---- pivot point pivot = (0, 0, 0) # # ---- wire frame (cube) lines lns = [ (pts[0],pts[1]), (pts[1],pts[2]), # line 0,1 (pts[2],pts[3]), (pts[3],pts[0]), # line 2,3 (pts[4],pts[5]), (pts[5],pts[6]), # line 4,5 (pts[6],pts[7]), (pts[7],pts[4]), # line 6,7 (pts[0],pts[4]), (pts[1],pts[5]), # line 8,9 (pts[2],pts[6]), (pts[3],pts[7]) ] # line 10,11 # # ---- wire frame (cube) surfaces sur = [ (pts[0],pts[1],pts[2],pts[3]), # surface 0 red (pts[7],pts[6],pts[5],pts[4]), # surface 1 green (pts[4],pts[5],pts[1],pts[0]), # surface 2 blue (pts[3],pts[2],pts[6],pts[7]), # surface 3 cyan (pts[1],pts[5],pts[6],pts[2]), # surface 4 yellow (pts[0],pts[3],pts[7],pts[4]) ] # surface 5 white # # ---- wire frame (cube) normal vector points for each surface # ---- (points used to calculate normal vector) nvpts = [ (pts[0],pts[1],pts[2]), # nv surface 0 (pts[7],pts[6],pts[5]), # nv surface 1 (pts[4],pts[5],pts[1]), # nv surface 2 (pts[3],pts[2],pts[6]), # nv surface 3 (pts[1],pts[5],pts[6]), # nv surface 4 (pts[0],pts[3],pts[7]) ] # nv surface 5 # ----------3D Letter T --------------------------------------------- # ---- wire frame (letter T) corner points pts = [ (120,40,20), (120,0,20), (20,0,20), (20,-150,20), (-20,-150,20), (-20,0,20), (-120,0,20), (-120,40,20), (120,40,-20), (120,0,-20), (20,0,-20), (20,-150,-20), (-20,-150,-20), (-20,0,-20), (-120,0,-20), (-120,40,-20) ] # ---- pivot point pivot = (0, 0, 0) # ---- wire frame (Letter T) lines lns = [ (pts[0], pts[1]), (pts[1], pts[2]), (pts[2], pts[3]), (pts[3], pts[4]), (pts[4], pts[5]), (pts[5], pts[6]), (pts[6], pts[7]), (pts[7], pts[0]), (pts[8], pts[9]), (pts[9], pts[10]), (pts[10],pts[11]), (pts[11],pts[12]), (pts[12],pts[13]), (pts[13],pts[14]), (pts[14],pts[15]), (pts[15],pts[8]), (pts[0], pts[8]), (pts[1], pts[9]), (pts[2], pts[10]), (pts[3], pts[11]), (pts[4], pts[12]), (pts[5], pts[13]), (pts[6], pts[14]), (pts[7], pts[15]) ] # ----------2D Diamond ---------------------------------------------- # ---- wire frame (2D diamond) corner point pts = [ (0,0,0), (-50,75,0), (0,150,0) ,(50,75,0) ] # ---- pivot point pivot = (0, 0, 0) # ---- wire frame (2D diamond) lines lns = [ (pts[0],pts[1]), (pts[1], pts[2]), (pts[2],pts[3]), (pts[3],pts[0]) ] # ----------2D Pentagon ---------------------------------------------- # ---- wire frame (2D pentagon) corner point pts = [ (0,-100,0), (-95,-31,0), (-59,81,0) ,(59,81,0), (95,-31,0) ] # ---- pivot point pivot = (0, 0, 0) # ---- wire frame (2D pentagon) lines lns = [ (pts[0],pts[1]), (pts[1], pts[2]), (pts[2],pts[3]), (pts[3],pts[4]), (pts[4],pts[0]) ] # ----------3D Diamond With Facets ---------------------------------- # ---- wire frame (3D diamond with facets) corner point pts = [ (0,-50,0), (-50,50,0), (-25,40,40), (25,40,40), (50,50,0), (-30,65,0), (-10,60,35), (10,60,35), (30,65,0) ] # ---- pivot point pivot = (0, 0, 0) # ---- wire frame (3D diamond with facets) lines lns = [ (pts[0],pts[1]), (pts[0],pts[2]), (pts[0],pts[3]), (pts[0],pts[4]), (pts[1],pts[5]), (pts[2],pts[6]), (pts[3],pts[7]), (pts[4],pts[8]), (pts[5],pts[6]), (pts[6],pts[7]), (pts[7],pts[8]), (pts[1],pts[2]), (pts[2],pts[3]), (pts[3],pts[4]) ] # ----------3D Wire Frame Mystery Object ---------------------------- # ---- wire frame (3D mystery object) corner points pts = [ (-50,-50,50), (-50,50,50), (50,50,50), (50,-50,50), (-50,-50,-50), (-50,50,-50), (50,50,-50), (50,-50,-50), (-100,0,0), (100,0,0), (0,-100,0), (0,100,0) ] # ---- pivot point pivot = (0.0, 0.0, 0.0) # ---- wire frame (3D mystery object) lines lns = [ (pts[0],pts[1]), (pts[1],pts[2]), (pts[2],pts[3]), (pts[3],pts[0]), (pts[4],pts[5]), (pts[5],pts[6]), (pts[6],pts[7]), (pts[7],pts[4]), (pts[0],pts[4]), (pts[1],pts[5]), (pts[2],pts[6]), (pts[3],pts[7]), (pts[0],pts[8]), (pts[1],pts[8]), (pts[5],pts[8]), (pts[4],pts[8]), (pts[3],pts[9]), (pts[2],pts[9]), (pts[6],pts[9]), (pts[7],pts[9]), (pts[1],pts[11]), (pts[5],pts[11]), (pts[6],pts[11]), (pts[2],pts[11]), (pts[0],pts[10]), (pts[4],pts[10]), (pts[7],pts[10]), (pts[3],pts[10]) ]