Exemplo n.º 1
0
def finalfill(source,target):
    count=0
    for point in source.verts:
        newvert = vefm_259.vertex(point.vector)
        target.verts.append(newvert)
        point.index = count
        count  += 1 
    for facey in source.faces:
        row=len(facey.vertices)
        if row >= 5:
            newvert = vefm_259.average(facey.vertices).centroid()
            centre = vefm_259.vertex(newvert.vector)
            target.verts.append(centre)
            for i in range(row):
                if i == row - 1:
                    a = target.verts[facey.vertices[-1].index]
                    b = target.verts[facey.vertices[0].index]
                else:
                    a = target.verts[facey.vertices[i].index]
                    b = target.verts[facey.vertices[i+1].index]
                c = centre
                f = [a,b,c]
                target.faces.append(f)
        else:
            f = []
            for j in range(len(facey.vertices)):

                a = facey.vertices[j]
                f.append(target.verts[a.index])
            target.faces.append(f)
Exemplo n.º 2
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( -1.41421356237 , -0.816496580927 , 0.57735026919 )),
                         vertex(( 1.41421356237 , -0.816496580927 , 0.57735026919 )),
                         vertex(( 0.0 , 1.63299316185 , 0.577350269185 )),
                         vertex(( 0.0 , 0.0 , -1.73205080757 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[0]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[2],self.vertskeleton[3])    ]
     self.panelpoints=[[2,0,1],[0,1,3],[2,1,3],[2,0,3]]
     self.paneledges=[[2,1,0],[0,3,4],[1,5,4],[2,5,3]]
     self.reversepanel=[1,3]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 3
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( -1.41421356237 , -0.816496580927 , 0.57735026919 )),
                         vertex(( 1.41421356237 , -0.816496580927 , 0.57735026919 )),
                         vertex(( 0.0 , 1.63299316185 , 0.577350269185 )),
                         vertex(( 0.0 , 0.0 , -1.73205080757 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[0]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[2],self.vertskeleton[3])    ]
     self.panelpoints=[[2,0,1],[0,1,3],[2,1,3],[2,0,3]]
     self.paneledges=[[2,1,0],[0,3,4],[1,5,4],[2,5,3]]
     self.reversepanel=[1,3]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 4
0
    def __init__(self, count, skeletonedge, shortflag, parentgeo):
        self.points = []
        self.edges = []
        self.vect = skeletonedge.vect
        self.step = skeletonedge.vect / float(count)
        ## Make a row of evenly spaced points.
        for i in range(count + 1):
            vert1 = skeletonedge.a
            vert2 = skeletonedge.b
            if i == 0:
                if parentgeo.vertsdone[vert1.index][0]:
                    self.points.append(parentgeo.vertsdone[vert1.index][1])
                else:
#PKHG test 20111030
#                    newpoint = vertex((vert1.x, vert1.y, vert1.z))
                    newpoint = vertex(vert1.vector)
                    vertcount = len(parentgeo.verts)
                    self.points.append(vertcount)
                    newpoint.index = vertcount
                    parentgeo.vertsdone[vert1.index] = [1,vertcount]
                    parentgeo.verts.append(newpoint)                    
                    
            elif i == count:
                if parentgeo.vertsdone[vert2.index][0]:
                    self.points.append(parentgeo.vertsdone[vert2.index][1])
                else:
#PKHG test 20111030                    
#                    newpoint = vertex((vert2.x, vert2.y, vert2.z))
                    newpoint = vertex(vert2.vector)
                    vertcount = len(parentgeo.verts)
                    self.points.append(vertcount)
                    newpoint.index = vertcount
                    parentgeo.vertsdone[vert2.index] = [1,vertcount]
                    parentgeo.verts.append(newpoint)                    
            else:
                newpoint = vertex(vert1.vector + (self.step * i)) #must be a vertex!
                vertcount = len(parentgeo.verts)
                self.points.append(vertcount)
                newpoint.index = vertcount
                parentgeo.verts.append(newpoint)
        for i in range(count):
            a = parentgeo.verts[self.points[i]]
            b = parentgeo.verts[self.points[i + 1]]
            line = edge(a,b)
            self.edges.append(len(parentgeo.edges))
            parentgeo.edges.append(line)
Exemplo n.º 5
0
    def __init__(self, count, skeletonedge, shortflag, parentgeo):
        self.points = []
        self.edges = []
        self.vect = skeletonedge.vect
        self.step = skeletonedge.vect / float(count)
        ## Make a row of evenly spaced points.
        for i in range(count + 1):
            vert1 = skeletonedge.a
            vert2 = skeletonedge.b
            if i == 0:
                if parentgeo.vertsdone[vert1.index][0]:
                    self.points.append(parentgeo.vertsdone[vert1.index][1])
                else:
#PKHG test 20111030
#                    newpoint = vertex((vert1.x, vert1.y, vert1.z))
                    newpoint = vertex(vert1.vector)
                    vertcount = len(parentgeo.verts)
                    self.points.append(vertcount)
                    newpoint.index = vertcount
                    parentgeo.vertsdone[vert1.index] = [1,vertcount]
                    parentgeo.verts.append(newpoint)                    
                    
            elif i == count:
                if parentgeo.vertsdone[vert2.index][0]:
                    self.points.append(parentgeo.vertsdone[vert2.index][1])
                else:
#PKHG test 20111030                    
#                    newpoint = vertex((vert2.x, vert2.y, vert2.z))
                    newpoint = vertex(vert2.vector)
                    vertcount = len(parentgeo.verts)
                    self.points.append(vertcount)
                    newpoint.index = vertcount
                    parentgeo.vertsdone[vert2.index] = [1,vertcount]
                    parentgeo.verts.append(newpoint)                    
            else:
                newpoint = vertex(vert1.vector + (self.step * i)) #must be a vertex!
                vertcount = len(parentgeo.verts)
                self.points.append(vertcount)
                newpoint.index = vertcount
                parentgeo.verts.append(newpoint)
        for i in range(count):
            a = parentgeo.verts[self.points[i]]
            b = parentgeo.verts[self.points[i + 1]]
            line = edge(a,b)
            self.edges.append(len(parentgeo.edges))
            parentgeo.edges.append(line)
Exemplo n.º 6
0
    def set_vert_edge_skeleons(self):
        self.vertskeleton=[        vertex(( 0.0 , 0.0 , 1.73205080757 )),
                            vertex(( 0.0 , -1.63299316185 , -0.577350269185 )),
                            vertex(( 1.41421356237 , 0.816496580927 , -0.57735026919 )),
                            vertex(( -1.41421356237 , 0.816496580927 , -0.57735026919 ))    ]
        self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                            edge(self.vertskeleton[0],self.vertskeleton[2]),
                            edge(self.vertskeleton[0],self.vertskeleton[3]),
                            edge(self.vertskeleton[1],self.vertskeleton[2]),
                            edge(self.vertskeleton[2],self.vertskeleton[3]),
                            edge(self.vertskeleton[1],self.vertskeleton[3])    ]
        
### probably to be removed, other gui! : "#??? delete PKHG"
        self.panelpoints=[[0,1,2],[0,2,3],[0,1,3],[1,2,3]]
        self.paneledges=[[0,1,3],[1,2,4],[0,2,5],[3,5,4]]
        self.reversepanel=[2,3]
        self.edgelength=[]
        self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 7
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0.0 , -1.41421356237 , 1.0 )),
                         vertex(( 0.0 , 1.41421356237 , 1.0 )),
                         vertex(( 1.41421356237 , 0.0 , -1.0 )),
                         vertex(( -1.41421356237 , 0.0 , -1.0 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                         edge(self.vertskeleton[2],self.vertskeleton[3])    ]
     for i in range(len(self.vertskeleton)):
         self.vertskeleton[i].index = i
     self.panelpoints=[[0,1,2],[1,2,3],[0,1,3],[0,2,3]]
     self.paneledges=[[0,1,4],[4,3,5],[0,2,3],[1,2,5]]
     self.reversepanel=[0,3]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 8
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0.0 , -1.41421356237 , 1.0 )),
                         vertex(( 0.0 , 1.41421356237 , 1.0 )),
                         vertex(( 1.41421356237 , 0.0 , -1.0 )),
                         vertex(( -1.41421356237 , 0.0 , -1.0 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                         edge(self.vertskeleton[2],self.vertskeleton[3])    ]
     for i in range(len(self.vertskeleton)):
         self.vertskeleton[i].index = i
     self.panelpoints=[[0,1,2],[1,2,3],[0,1,3],[0,2,3]]
     self.paneledges=[[0,1,4],[4,3,5],[0,2,3],[1,2,5]]
     self.reversepanel=[0,3]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 9
0
    def set_vert_edge_skeleons(self):
        self.vertskeleton=[        vertex(( 0.0 , 0.0 , 1.73205080757 )),
                            vertex(( 0.0 , -1.63299316185 , -0.577350269185 )),
                            vertex(( 1.41421356237 , 0.816496580927 , -0.57735026919 )),
                            vertex(( -1.41421356237 , 0.816496580927 , -0.57735026919 ))    ]
        self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                            edge(self.vertskeleton[0],self.vertskeleton[2]),
                            edge(self.vertskeleton[0],self.vertskeleton[3]),
                            edge(self.vertskeleton[1],self.vertskeleton[2]),
                            edge(self.vertskeleton[2],self.vertskeleton[3]),
                            edge(self.vertskeleton[1],self.vertskeleton[3])    ]
        
### probably to be removed, other gui! : "#??? delete PKHG"
        self.panelpoints=[[0,1,2],[0,2,3],[0,1,3],[1,2,3]]
        self.paneledges=[[0,1,3],[1,2,4],[0,2,5],[3,5,4]]
        self.reversepanel=[2,3]
        self.edgelength=[]
        self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 10
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex((0.0,0.0,1.0)),
                         vertex((0.0,1.0,0.0)),
                         vertex((-1.0,0.0,0.0)),
                         vertex((0.0,-1.0,0.0)),
                         vertex((1.0,0.0,0.0)),
                         vertex((0.0,0.0,-1.0))    ]
     for i in range(len(self.vertskeleton)):
         self.vertskeleton[i].index = i
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                         edge(self.vertskeleton[2],self.vertskeleton[3]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[1]),
                         edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[5]),
                         edge(self.vertskeleton[4],self.vertskeleton[5])    ]
     self.panelpoints=[[0,1,2],[0,2,3],[0,3,4],[0,4,1],[1,2,5],[2,3,5],[3,4,5],[4,1,5]]
     self.paneledges=[[0,1,4],[1,2,5],[2,3,6],[3,0,7],[4,8,9],[5,9,10],[6,10,11],[7,11,8]]
     self.reversepanel=[4,5,6,7]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 11
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex((0.0,0.0,1.0)),
                         vertex((0.0,1.0,0.0)),
                         vertex((-1.0,0.0,0.0)),
                         vertex((0.0,-1.0,0.0)),
                         vertex((1.0,0.0,0.0)),
                         vertex((0.0,0.0,-1.0))    ]
     for i in range(len(self.vertskeleton)):
         self.vertskeleton[i].index = i
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                         edge(self.vertskeleton[2],self.vertskeleton[3]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[1]),
                         edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[5]),
                         edge(self.vertskeleton[4],self.vertskeleton[5])    ]
     self.panelpoints=[[0,1,2],[0,2,3],[0,3,4],[0,4,1],[1,2,5],[2,3,5],[3,4,5],[4,1,5]]
     self.paneledges=[[0,1,4],[1,2,5],[2,3,6],[3,0,7],[4,8,9],[5,9,10],[6,10,11],[7,11,8]]
     self.reversepanel=[4,5,6,7]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 12
0
    def sphere2cartesian(self):
#PKHG_TODOnot_now        check_contains(self,"sphereto self",True)
        for i in range(len(self.verts)):
            if self.cart:
#PKHG test 20111030                        
#                x = self.verts[i].x * self.radius * self.eccentricity
#                y = self.verts[i].y * self.radius
#                z = self.verts[i].z * self.radius * self.squish
                x = self.verts[i].vector.x * self.radius * self.eccentricity
                y = self.verts[i].vector.y * self.radius
                z = self.verts[i].vector.z * self.radius * self.squish
            else:
                u = self.sphericalverts[i][0]
                v = self.sphericalverts[i][1]
                if self.squish != 1.0 or self.eccentricity>1.0:
                    scalez = 1 / self.squish
                    v = self.ellipsecomp(scalez,v)
                    u = self.ellipsecomp(self.eccentricity,u)
                if self.super:
                    r1 = self.superell(self.square,u,self.rotxy)
                    r2 = self.superell(self.squarez,v,self.rotz)
                else:
                    r1 = 1.0
                    r2 = 1.0
                
            #    print "sform",self.sform,"  u",u,"  v",v
                if self.sform[12]:
                    
                    r1 = r1 * self.superform(self.sform[0],self.sform[1],self.sform[2],self.sform[3],self.sform[14] + u,self.sform[4],self.sform[5],self.sform[16] * v)
                if self.sform[13]:
                
                    r2 = r2 * self.superform(self.sform[6],self.sform[7],self.sform[8],self.sform[9],self.sform[15] + v,self.sform[10],self.sform[11],self.sform[17] * v)
                x,y,z = self.cartesian(u,v,r1,r2)
#PKHG test 20111030                        
#            self.verts[i].x = x
#            self.verts[i].y = y
#            self.verts[i].z = z
            self.verts[i] = vertex((x,y,z))
Exemplo n.º 13
0
    def sphere2cartesian(self):
#PKHG_TODOnot_now        check_contains(self,"sphereto self",True)
        for i in range(len(self.verts)):
            if self.cart:
#PKHG test 20111030                        
#                x = self.verts[i].x * self.radius * self.eccentricity
#                y = self.verts[i].y * self.radius
#                z = self.verts[i].z * self.radius * self.squish
                x = self.verts[i].vector.x * self.radius * self.eccentricity
                y = self.verts[i].vector.y * self.radius
                z = self.verts[i].vector.z * self.radius * self.squish
            else:
                u = self.sphericalverts[i][0]
                v = self.sphericalverts[i][1]
                if self.squish != 1.0 or self.eccentricity>1.0:
                    scalez = 1 / self.squish
                    v = self.ellipsecomp(scalez,v)
                    u = self.ellipsecomp(self.eccentricity,u)
                if self.super:
                    r1 = self.superell(self.square,u,self.rotxy)
                    r2 = self.superell(self.squarez,v,self.rotz)
                else:
                    r1 = 1.0
                    r2 = 1.0
                
            #    print "sform",self.sform,"  u",u,"  v",v
                if self.sform[12]:
                    
                    r1 = r1 * self.superform(self.sform[0],self.sform[1],self.sform[2],self.sform[3],self.sform[14] + u,self.sform[4],self.sform[5],self.sform[16] * v)
                if self.sform[13]:
                
                    r2 = r2 * self.superform(self.sform[6],self.sform[7],self.sform[8],self.sform[9],self.sform[15] + v,self.sform[10],self.sform[11],self.sform[17] * v)
                x,y,z = self.cartesian(u,v,r1,r2)
#PKHG test 20111030                        
#            self.verts[i].x = x
#            self.verts[i].y = y
#            self.verts[i].z = z
            self.verts[i] = vertex((x,y,z))
Exemplo n.º 14
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0.0 , -0.707106781187 , 0.707106781187 )),
                         vertex(( 0.0 , 0.707106781187 , 0.707106781187 )),
                         vertex(( 1.0 , 0.0 , 0.0 )),
                         vertex(( -1.0 , 0.0 , 0.0 )),
                         vertex(( 0.0 , -0.707106781187 , -0.707106781187 )),
                         vertex(( 0.0 , 0.707106781187 , -0.707106781187 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[4]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                            edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[2],self.vertskeleton[4]),
                            edge(self.vertskeleton[2],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[5])    ]
     self.panelpoints=[[0,1,2],[0,1,3],[0,2,4],[1,2,5],[1,3,5],[0,3,4],[2,4,5],[3,4,5]]
     self.paneledges=[[0,2,3],[0,6,5],[2,1,7],[3,4,8],[5,4,9],[6,1,10],[7,8,11],[10,9,11]]
     self.reversepanel=[0,2,4,7]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 15
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0.408248458663 , -0.707106781187 , 0.577350150255 )),
                         vertex(( 0.408248458663 , 0.707106781187 , 0.577350150255 )),
                         vertex(( -0.816496412728 , 0.0 , 0.577350507059 )),
                         vertex(( -0.408248458663 , -0.707106781187 , -0.577350150255 )),
                         vertex(( 0.816496412728 , 0.0 , -0.577350507059 )),
                         vertex(( -0.408248458663 , 0.707106781187 , -0.577350150255 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[0]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                          edge(self.vertskeleton[0],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[3]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[5])    ]
     self.panelpoints=[[2,0,1],[0,3,4],[0,1,4],[1,4,5],[2,1,5],[2,3,5],[2,0,3],[3,4,5]]
     self.paneledges=[[2,1,0],[3,4,9],[0,4,5],[5,6,10],[1,7,6],[8,7,11],[2,8,3],[9,11,10]]
     self.reversepanel=[2,5,6,7]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 16
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0.0 , -0.707106781187 , 0.707106781187 )),
                         vertex(( 0.0 , 0.707106781187 , 0.707106781187 )),
                         vertex(( 1.0 , 0.0 , 0.0 )),
                         vertex(( -1.0 , 0.0 , 0.0 )),
                         vertex(( 0.0 , -0.707106781187 , -0.707106781187 )),
                         vertex(( 0.0 , 0.707106781187 , -0.707106781187 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[4]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                            edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[2],self.vertskeleton[4]),
                            edge(self.vertskeleton[2],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[5])    ]
     self.panelpoints=[[0,1,2],[0,1,3],[0,2,4],[1,2,5],[1,3,5],[0,3,4],[2,4,5],[3,4,5]]
     self.paneledges=[[0,2,3],[0,6,5],[2,1,7],[3,4,8],[5,4,9],[6,1,10],[7,8,11],[10,9,11]]
     self.reversepanel=[0,2,4,7]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 17
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0.408248458663 , -0.707106781187 , 0.577350150255 )),
                         vertex(( 0.408248458663 , 0.707106781187 , 0.577350150255 )),
                         vertex(( -0.816496412728 , 0.0 , 0.577350507059 )),
                         vertex(( -0.408248458663 , -0.707106781187 , -0.577350150255 )),
                         vertex(( 0.816496412728 , 0.0 , -0.577350507059 )),
                         vertex(( -0.408248458663 , 0.707106781187 , -0.577350150255 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[0]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                          edge(self.vertskeleton[0],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[3]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[5])    ]
     self.panelpoints=[[2,0,1],[0,3,4],[0,1,4],[1,4,5],[2,1,5],[2,3,5],[2,0,3],[3,4,5]]
     self.paneledges=[[2,1,0],[3,4,9],[0,4,5],[5,6,10],[1,7,6],[8,7,11],[2,8,3],[9,11,10]]
     self.reversepanel=[2,5,6,7]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 18
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( -0.17841104489 , 0.309016994375 , 0.46708617948 )),
                         vertex(( -0.17841104489 , -0.309016994375 , 0.46708617948 )),
                         vertex(( 0.35682208977 , 0.0 , 0.467086179484 )),
                         vertex(( -0.57735026919 , 0.0 , 0.110264089705 )),
                         vertex(( -0.288675134594 , -0.5 , -0.11026408971 )),
                         vertex(( 0.288675134594 , -0.5 , 0.11026408971 )),
                         vertex(( 0.57735026919 , 0.0 , -0.110264089705 )),
                         vertex(( 0.288675134594 , 0.5 , 0.11026408971 )),
                         vertex(( -0.288675134594 , 0.5 , -0.11026408971 )),
                         vertex(( -0.35682208977 , 0.0 , -0.467086179484 )),
                         vertex(( 0.17841104489 , -0.309016994375 , -0.46708617948 )),
                         vertex(( 0.17841104489 , 0.309016994375 , -0.46708617948 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[0]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[6]),
                         edge(self.vertskeleton[2],self.vertskeleton[7]),
                         edge(self.vertskeleton[0],self.vertskeleton[7]),
                         edge(self.vertskeleton[0],self.vertskeleton[8]),
                         edge(self.vertskeleton[3],self.vertskeleton[9]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[5],self.vertskeleton[4]),
                         edge(self.vertskeleton[5],self.vertskeleton[10]),
                         edge(self.vertskeleton[5],self.vertskeleton[6]),
                         edge(self.vertskeleton[7],self.vertskeleton[6]),
                         edge(self.vertskeleton[7],self.vertskeleton[11]),
                         edge(self.vertskeleton[7],self.vertskeleton[8]),
                         edge(self.vertskeleton[3],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[9]),
                         edge(self.vertskeleton[4],self.vertskeleton[10]),
                         edge(self.vertskeleton[6],self.vertskeleton[10]),
                         edge(self.vertskeleton[6],self.vertskeleton[11]),
                         edge(self.vertskeleton[8],self.vertskeleton[11]),
                         edge(self.vertskeleton[8],self.vertskeleton[9]),
                         edge(self.vertskeleton[9],self.vertskeleton[10]),
                         edge(self.vertskeleton[11],self.vertskeleton[10]),
                         edge(self.vertskeleton[11],self.vertskeleton[9])    ]
     self.panelpoints=[[2,0,1],[0,1,3],[2,1,5],[2,0,7],[1,3,4],[1,5,4],[2,5,6],[2,7,6],[0,7,8],[0,3,8],[3,4,9],[5,4,10],[5,6,10],[7,6,11],[7,8,11],[3,8,9],[4,9,10],[6,11,10],[8,11,9],[11,9,10]]
     self.paneledges=[[2,1,0],[0,3,4],[1,7,6],[2,9,10],[4,5,13],[6,5,14],[7,8,16],[9,8,17],[10,11,19],[3,11,20],
                 [13,12,21],[14,15,22],[16,15,23],[17,18,24],[19,18,25],[20,12,26],[21,22,27],[24,23,28],[25,26,29],[29,28,27]]
     self.reversepanel=[1,3,5,7,9,10,12,14,17,19]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 19
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0 , 0.309016994375 , 0.5 )),
                         vertex(( 0 , -0.309016994375 , 0.5 )),
                         vertex(( -0.5 , 0 , 0.309016994375 )),
                         vertex(( 0.5 , 0 , 0.309016994375 )),
                         vertex(( -0.309016994375 , -0.5 , 0 )),
                         vertex(( 0.309016994375 , -0.5 , 0 )),
                         vertex(( 0.309016994375 , 0.5 , 0 )),
                         vertex(( -0.309016994375 , 0.5 , 0 )),
                         vertex(( -0.5 , 0 , -0.309016994375 )),
                         vertex(( 0.5 , 0 , -0.309016994375 )),
                         vertex(( 0 , 0.309016994375 , -0.5 )),
                         vertex(( 0 , -0.309016994375 , -0.5 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[7]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                         edge(self.vertskeleton[1],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[6]),
                         edge(self.vertskeleton[2],self.vertskeleton[7]),
                         edge(self.vertskeleton[2],self.vertskeleton[8]),
                         edge(self.vertskeleton[2],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[9]),
                         edge(self.vertskeleton[3],self.vertskeleton[6]),
                         edge(self.vertskeleton[6],self.vertskeleton[7]),
                         edge(self.vertskeleton[7],self.vertskeleton[10]),
                         edge(self.vertskeleton[7],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[11]),
                         edge(self.vertskeleton[5],self.vertskeleton[11]),
                         edge(self.vertskeleton[5],self.vertskeleton[9]),
                         edge(self.vertskeleton[6],self.vertskeleton[9]),
                         edge(self.vertskeleton[6],self.vertskeleton[10]),
                         edge(self.vertskeleton[8],self.vertskeleton[10]),
                         edge(self.vertskeleton[8],self.vertskeleton[11]),
                         edge(self.vertskeleton[9],self.vertskeleton[11]),
                         edge(self.vertskeleton[9],self.vertskeleton[10]),
                         edge(self.vertskeleton[10],self.vertskeleton[11])    ]
     self.panelpoints=[    [0,1,2],[0,1,3],[0,2,7],[1,2,4],[1,4,5],[1,3,5],[0,3,6],[0,6,7],[2,7,8],[2,4,8],
                     [3,5,9],[3,6,9],[7,8,10],[4,8,11],[4,5,11],[5,9,11],[6,9,10],[6,7,10],[8,10,11],[9,10,11]]
     self.paneledges=[[0,2,3],[0,7,6],[2,1,9],[3,4,11],[4,5,12],[6,5,13],[7,8,15],[8,1,16],[9,10,18],[11,10,19],
                 [13,14,22],[15,14,23],[18,17,25],[19,20,26],[12,20,21],[22,21,27],[23,24,28],[16,24,17],[25,26,29],[28,27,29]]
     self.reversepanel=[0,2,5,9,11,12,14,15,17,19]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 20
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0.0 , 0.0 , 0.587785252292 )),
                         vertex(( 0.0 , -0.525731096637 , 0.262865587024 )),
                         vertex(( 0.5 , -0.162459832634 , 0.262865565628 )),
                         vertex(( 0.309016994375 , 0.425325419658 , 0.262865531009 )),
                         vertex(( -0.309016994375 , 0.425325419658 , 0.262865531009 )),
                         vertex(( -0.5 , -0.162459832634 , 0.262865565628 )),
                         vertex(( 0.309016994375 , -0.425325419658 , -0.262865531009 )),
                         vertex(( 0.5 , 0.162459832634 , -0.262865565628 )),
                         vertex(( 0.0 , 0.525731096637 , -0.262865587024 )),
                         vertex(( -0.5 , 0.162459832634 , -0.262865565628 )),
                         vertex(( -0.309016994375 , -0.425325419658 , -0.262865531009 )),
                         vertex(( 0.0 , 0.0 , -0.587785252292 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[4]),
                         edge(self.vertskeleton[0],self.vertskeleton[5]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                         edge(self.vertskeleton[2],self.vertskeleton[3]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[5]),
                         edge(self.vertskeleton[5],self.vertskeleton[1]),
                         edge(self.vertskeleton[1],self.vertskeleton[6]),
                         edge(self.vertskeleton[2],self.vertskeleton[6]),
                         edge(self.vertskeleton[2],self.vertskeleton[7]),
                         edge(self.vertskeleton[3],self.vertskeleton[7]),
                         edge(self.vertskeleton[3],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[9]),
                         edge(self.vertskeleton[5],self.vertskeleton[9]),
                         edge(self.vertskeleton[5],self.vertskeleton[10]),
                         edge(self.vertskeleton[1],self.vertskeleton[10]),
                         edge(self.vertskeleton[6],self.vertskeleton[7]),
                         edge(self.vertskeleton[7],self.vertskeleton[8]),
                         edge(self.vertskeleton[8],self.vertskeleton[9]),
                         edge(self.vertskeleton[9],self.vertskeleton[10]),
                         edge(self.vertskeleton[10],self.vertskeleton[6]),
                         edge(self.vertskeleton[6],self.vertskeleton[11]),
                         edge(self.vertskeleton[7],self.vertskeleton[11]),
                         edge(self.vertskeleton[8],self.vertskeleton[11]),
                         edge(self.vertskeleton[9],self.vertskeleton[11]),
                         edge(self.vertskeleton[10],self.vertskeleton[11])    ]
     self.panelpoints=[[0,1,2],[0,2,3],[0,3,4],[0,4,5],[0,5,1],[1,2,6],[2,6,7],[2,3,7],[3,7,8],[3,4,8],[4,8,9],[4,5,9],[5,9,10],[5,1,10],[1,10,6],[6,7,11],[7,8,11],[8,9,11],[9,10,11],[10,6,11]]
     self.paneledges=[[0,1,5],[1,2,6],[2,3,7],[3,4,8],[4,0,9],[5,10,11],[11,12,20],[6,12,13],[13,14,21],[7,14,15],[15,16,22],[8,16,17],[17,18,23],[9,18,19],[19,10,24],[20,25,26],[21,26,27],[22,27,28],[23,28,29],[24,29,25]]
     self.reversepanel=[5,7,9,11,13,15,16,17,18,19]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 21
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0.0 , 0.0 , 0.587785252292 )),
                         vertex(( 0.0 , -0.525731096637 , 0.262865587024 )),
                         vertex(( 0.5 , -0.162459832634 , 0.262865565628 )),
                         vertex(( 0.309016994375 , 0.425325419658 , 0.262865531009 )),
                         vertex(( -0.309016994375 , 0.425325419658 , 0.262865531009 )),
                         vertex(( -0.5 , -0.162459832634 , 0.262865565628 )),
                         vertex(( 0.309016994375 , -0.425325419658 , -0.262865531009 )),
                         vertex(( 0.5 , 0.162459832634 , -0.262865565628 )),
                         vertex(( 0.0 , 0.525731096637 , -0.262865587024 )),
                         vertex(( -0.5 , 0.162459832634 , -0.262865565628 )),
                         vertex(( -0.309016994375 , -0.425325419658 , -0.262865531009 )),
                         vertex(( 0.0 , 0.0 , -0.587785252292 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[4]),
                         edge(self.vertskeleton[0],self.vertskeleton[5]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                         edge(self.vertskeleton[2],self.vertskeleton[3]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[5]),
                         edge(self.vertskeleton[5],self.vertskeleton[1]),
                         edge(self.vertskeleton[1],self.vertskeleton[6]),
                         edge(self.vertskeleton[2],self.vertskeleton[6]),
                         edge(self.vertskeleton[2],self.vertskeleton[7]),
                         edge(self.vertskeleton[3],self.vertskeleton[7]),
                         edge(self.vertskeleton[3],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[9]),
                         edge(self.vertskeleton[5],self.vertskeleton[9]),
                         edge(self.vertskeleton[5],self.vertskeleton[10]),
                         edge(self.vertskeleton[1],self.vertskeleton[10]),
                         edge(self.vertskeleton[6],self.vertskeleton[7]),
                         edge(self.vertskeleton[7],self.vertskeleton[8]),
                         edge(self.vertskeleton[8],self.vertskeleton[9]),
                         edge(self.vertskeleton[9],self.vertskeleton[10]),
                         edge(self.vertskeleton[10],self.vertskeleton[6]),
                         edge(self.vertskeleton[6],self.vertskeleton[11]),
                         edge(self.vertskeleton[7],self.vertskeleton[11]),
                         edge(self.vertskeleton[8],self.vertskeleton[11]),
                         edge(self.vertskeleton[9],self.vertskeleton[11]),
                         edge(self.vertskeleton[10],self.vertskeleton[11])    ]
     self.panelpoints=[[0,1,2],[0,2,3],[0,3,4],[0,4,5],[0,5,1],[1,2,6],[2,6,7],[2,3,7],[3,7,8],[3,4,8],[4,8,9],[4,5,9],[5,9,10],[5,1,10],[1,10,6],[6,7,11],[7,8,11],[8,9,11],[9,10,11],[10,6,11]]
     self.paneledges=[[0,1,5],[1,2,6],[2,3,7],[3,4,8],[4,0,9],[5,10,11],[11,12,20],[6,12,13],[13,14,21],[7,14,15],[15,16,22],[8,16,17],[17,18,23],[9,18,19],[19,10,24],[20,25,26],[21,26,27],[22,27,28],[23,28,29],[24,29,25]]
     self.reversepanel=[5,7,9,11,13,15,16,17,18,19]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 22
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( 0 , 0.309016994375 , 0.5 )),
                         vertex(( 0 , -0.309016994375 , 0.5 )),
                         vertex(( -0.5 , 0 , 0.309016994375 )),
                         vertex(( 0.5 , 0 , 0.309016994375 )),
                         vertex(( -0.309016994375 , -0.5 , 0 )),
                         vertex(( 0.309016994375 , -0.5 , 0 )),
                         vertex(( 0.309016994375 , 0.5 , 0 )),
                         vertex(( -0.309016994375 , 0.5 , 0 )),
                         vertex(( -0.5 , 0 , -0.309016994375 )),
                         vertex(( 0.5 , 0 , -0.309016994375 )),
                         vertex(( 0 , 0.309016994375 , -0.5 )),
                         vertex(( 0 , -0.309016994375 , -0.5 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[0],self.vertskeleton[7]),
                         edge(self.vertskeleton[0],self.vertskeleton[2]),
                         edge(self.vertskeleton[1],self.vertskeleton[2]),
                         edge(self.vertskeleton[1],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[0],self.vertskeleton[6]),
                         edge(self.vertskeleton[2],self.vertskeleton[7]),
                         edge(self.vertskeleton[2],self.vertskeleton[8]),
                         edge(self.vertskeleton[2],self.vertskeleton[4]),
                         edge(self.vertskeleton[4],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[5]),
                         edge(self.vertskeleton[3],self.vertskeleton[9]),
                         edge(self.vertskeleton[3],self.vertskeleton[6]),
                         edge(self.vertskeleton[6],self.vertskeleton[7]),
                         edge(self.vertskeleton[7],self.vertskeleton[10]),
                         edge(self.vertskeleton[7],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[11]),
                         edge(self.vertskeleton[5],self.vertskeleton[11]),
                         edge(self.vertskeleton[5],self.vertskeleton[9]),
                         edge(self.vertskeleton[6],self.vertskeleton[9]),
                         edge(self.vertskeleton[6],self.vertskeleton[10]),
                         edge(self.vertskeleton[8],self.vertskeleton[10]),
                         edge(self.vertskeleton[8],self.vertskeleton[11]),
                         edge(self.vertskeleton[9],self.vertskeleton[11]),
                         edge(self.vertskeleton[9],self.vertskeleton[10]),
                         edge(self.vertskeleton[10],self.vertskeleton[11])    ]
     self.panelpoints=[    [0,1,2],[0,1,3],[0,2,7],[1,2,4],[1,4,5],[1,3,5],[0,3,6],[0,6,7],[2,7,8],[2,4,8],
                     [3,5,9],[3,6,9],[7,8,10],[4,8,11],[4,5,11],[5,9,11],[6,9,10],[6,7,10],[8,10,11],[9,10,11]]
     self.paneledges=[[0,2,3],[0,7,6],[2,1,9],[3,4,11],[4,5,12],[6,5,13],[7,8,15],[8,1,16],[9,10,18],[11,10,19],
                 [13,14,22],[15,14,23],[18,17,25],[19,20,26],[12,20,21],[22,21,27],[23,24,28],[16,24,17],[25,26,29],[28,27,29]]
     self.reversepanel=[0,2,5,9,11,12,14,15,17,19]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)
Exemplo n.º 23
0
 def set_vert_edge_skeleons(self):
     self.vertskeleton=[        vertex(( -0.17841104489 , 0.309016994375 , 0.46708617948 )),
                         vertex(( -0.17841104489 , -0.309016994375 , 0.46708617948 )),
                         vertex(( 0.35682208977 , 0.0 , 0.467086179484 )),
                         vertex(( -0.57735026919 , 0.0 , 0.110264089705 )),
                         vertex(( -0.288675134594 , -0.5 , -0.11026408971 )),
                         vertex(( 0.288675134594 , -0.5 , 0.11026408971 )),
                         vertex(( 0.57735026919 , 0.0 , -0.110264089705 )),
                         vertex(( 0.288675134594 , 0.5 , 0.11026408971 )),
                         vertex(( -0.288675134594 , 0.5 , -0.11026408971 )),
                         vertex(( -0.35682208977 , 0.0 , -0.467086179484 )),
                         vertex(( 0.17841104489 , -0.309016994375 , -0.46708617948 )),
                         vertex(( 0.17841104489 , 0.309016994375 , -0.46708617948 ))    ]
     self.edgeskeleton=[    edge(self.vertskeleton[0],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[1]),
                         edge(self.vertskeleton[2],self.vertskeleton[0]),
                         edge(self.vertskeleton[0],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[3]),
                         edge(self.vertskeleton[1],self.vertskeleton[4]),
                         edge(self.vertskeleton[1],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[5]),
                         edge(self.vertskeleton[2],self.vertskeleton[6]),
                         edge(self.vertskeleton[2],self.vertskeleton[7]),
                         edge(self.vertskeleton[0],self.vertskeleton[7]),
                         edge(self.vertskeleton[0],self.vertskeleton[8]),
                         edge(self.vertskeleton[3],self.vertskeleton[9]),
                         edge(self.vertskeleton[3],self.vertskeleton[4]),
                         edge(self.vertskeleton[5],self.vertskeleton[4]),
                         edge(self.vertskeleton[5],self.vertskeleton[10]),
                         edge(self.vertskeleton[5],self.vertskeleton[6]),
                         edge(self.vertskeleton[7],self.vertskeleton[6]),
                         edge(self.vertskeleton[7],self.vertskeleton[11]),
                         edge(self.vertskeleton[7],self.vertskeleton[8]),
                         edge(self.vertskeleton[3],self.vertskeleton[8]),
                         edge(self.vertskeleton[4],self.vertskeleton[9]),
                         edge(self.vertskeleton[4],self.vertskeleton[10]),
                         edge(self.vertskeleton[6],self.vertskeleton[10]),
                         edge(self.vertskeleton[6],self.vertskeleton[11]),
                         edge(self.vertskeleton[8],self.vertskeleton[11]),
                         edge(self.vertskeleton[8],self.vertskeleton[9]),
                         edge(self.vertskeleton[9],self.vertskeleton[10]),
                         edge(self.vertskeleton[11],self.vertskeleton[10]),
                         edge(self.vertskeleton[11],self.vertskeleton[9])    ]
     self.panelpoints=[[2,0,1],[0,1,3],[2,1,5],[2,0,7],[1,3,4],[1,5,4],[2,5,6],[2,7,6],[0,7,8],[0,3,8],[3,4,9],[5,4,10],[5,6,10],[7,6,11],[7,8,11],[3,8,9],[4,9,10],[6,11,10],[8,11,9],[11,9,10]]
     self.paneledges=[[2,1,0],[0,3,4],[1,7,6],[2,9,10],[4,5,13],[6,5,14],[7,8,16],[9,8,17],[10,11,19],[3,11,20],
                 [13,12,21],[14,15,22],[16,15,23],[17,18,24],[19,18,25],[20,12,26],[21,22,27],[24,23,28],[25,26,29],[29,28,27]]
     self.reversepanel=[1,3,5,7,9,10,12,14,17,19]
     self.edgelength=[]
     self.vertsdone=[[0,0]] * len(self.vertskeleton)