Example #1
0
 def process(self):
     if not self.outputs['bmesh_list'].is_linked:
         return
     bml, val, e = self.inputs
     obj, v = safc(bml.sv_get(), val.sv_get([[1]*12]))
     outp = []
     op = "bmesh.ops."+self.oper
     if e.is_linked:
         element = e.sv_get()
         for bm, v, e in zip(obj,v, element):
             exec(op)
             outp.append(bm.copy())
             bm.free()
     else:
         if "verts=e" in op:
             cur = "verts"
         elif "edges=e" in op:
             cur = "edges"
         elif "faces=e" in op:
             cur = "faces"
         for bm, v in zip(obj,v):
             e = getattr(bm, cur)
             exec(op)
             outp.append(bm.copy())
             bm.free()
     self.outputs['bmesh_list'].sv_set(outp)
Example #2
0
 def process(self):
     if not self.outputs['bmesh_list'].is_linked:
         return
     bml, e = self.inputs
     obj = bml.sv_get()
     v = [
         self.V0, self.V1, self.V2, self.V3, self.V4, self.V5, self.V6,
         self.V7
     ]
     outp = []
     op = "bmesh.ops." + self.oper
     if e.is_linked:
         element = e.sv_get()
         for bm, e in zip(obj, element):
             exec(op)
             outp.append(bm.copy())
             bm.free()
     else:
         if "verts=e" in op:
             cur = "verts"
         elif "edges=e" in op:
             cur = "edges"
         elif "faces=e" in op:
             cur = "faces"
         for bm in obj:
             e = getattr(bm, cur)
             exec(op)
             outp.append(bm.copy())
             bm.free()
     self.outputs['bmesh_list'].sv_set(outp)
Example #3
0
 def process(self):
     if not self.outputs['bmesh_list'].is_linked:
         return
     bml, val, e = self.inputs
     obj = bml.sv_get()
     v = safc(obj, val.sv_get([[1] * 12]))
     outp = []
     op = "bmesh.ops." + self.oper
     if e.is_linked:
         element = e.sv_get()
         for bm, v, e in zip(obj, v, element):
             exec(op)
             outp.append(bm.copy())
             bm.free()
     else:
         if "verts=e" in op:
             cur = "verts"
         elif "edges=e" in op:
             cur = "edges"
         elif "faces=e" in op:
             cur = "faces"
         for bm, v in zip(obj, v):
             e = getattr(bm, cur)
             exec(op)
             outp.append(bm.copy())
             bm.free()
     self.outputs['bmesh_list'].sv_set(outp)
Example #4
0
 def process(self):
     if not self.outputs['bmesh_list'].is_linked:
         return
     bml, e = self.inputs
     obj = bml.sv_get()
     v = [self.V0,self.V1,self.V2,self.V3,self.V4,self.V5,self.V6,self.V7]
     outp = []
     op = "bmesh.ops."+self.oper
     if e.is_linked:
         element = e.sv_get()
         for bm, e in zip(obj, element):
             exec(op)
             outp.append(bm.copy())
             bm.free()
     else:
         if "verts=e" in op:
             cur = "verts"
         elif "edges=e" in op:
             cur = "edges"
         elif "faces=e" in op:
             cur = "faces"
         for bm in obj:
             e = getattr(bm, cur)
             exec(op)
             outp.append(bm.copy())
             bm.free()
     self.outputs['bmesh_list'].sv_set(outp)
Example #5
0
 def process(self):
     Val = []
     siob = self.inputs['Objects']
     v, e, p = self.inputs['Vert'], self.inputs['Edge'], self.inputs['Poly']
     if siob.is_linked:
         obj = siob.sv_get()
         for OB in obj:
             bm = bmesh.new()
             bm.from_mesh(OB.data)
             get_value(self, bm, Val)
             bm.free()
     if v.is_linked:
         sive, sied, sipo = match_long_repeat([v.sv_get(), e.sv_get([[]]), p.sv_get([[]])])
         for i in zip(sive, sied, sipo):
             bm = bmesh_from_pydata(i[0], i[1], i[2])
             get_value(self, bm, Val)
             bm.free()
     self.outputs['Value'].sv_set(Val)
Example #6
0
 def process(self):
     Val = []
     siob = self.inputs['Objects']
     v, e, p = self.inputs['Vert'], self.inputs['Edge'], self.inputs['Poly']
     if siob.is_linked:
         obj = siob.sv_get()
         for OB in obj:
             bm = bmesh.new()
             bm.from_mesh(OB.data)
             get_value(self, bm, Val)
             bm.free()
     if v.is_linked:
         sive, sied, sipo = match_long_repeat(
             [v.sv_get(), e.sv_get([[]]),
              p.sv_get([[]])])
         for i in zip(sive, sied, sipo):
             bm = bmesh_from_pydata(i[0], i[1], i[2])
             get_value(self, bm, Val)
             bm.free()
     self.outputs['Value'].sv_set(Val)