self.uvs = mv.uvs[:]
self.tan = mv.tan
self.bino = mv.bino
+ self.group_weight_scale = mv.group_weight_scale
else:
self._mvert = mv
self.uvs = []
self.tan = None
self.bino = None
+ self.group_weight_scale = 1
self.flag = False
self.faces = []
self.lines = [Line(e) for e in self.edges.values() if not e.faces]
if self.use_auto_smooth:
- smooth_limit = math.cos(self.auto_smooth_angle*math.pi/180)
+ smooth_limit = math.cos(self.auto_smooth_angle)
else:
smooth_limit = -1
if v.bino.length:
v.bino.normalize()
+ def sort_vertex_groups(self, max_groups):
+ for v in self.vertices:
+ if v.groups:
+ v.groups = sorted(v.groups, key=(lambda g: g.weight), reverse=True)
+ v.group_weight_scale = 1.0/sum(g.weight for g in v.groups[:max_groups])
+
def create_strip(self, face, max_len):
# Find an edge with another unused face next to it
edge = None