Code: Select all
obj.addProperty('App::PropertyVectorList', 'Points', 'Hull', 'Net of points').Points = [FreeCAD.Vector(x,y,z) for x,z,y in coords]
Code: Select all
class HullPoint(graphics.Marker):
def __init__(self, vertices, index):
super().__init__([vertices[index]], True)
self.vertices = vertices
self.index = index
self.on_drag_release.append(self.moved)
def _update_vertex(self, v):
self.vertices[self.index] = v
def moved(self):
self._update_vertex(FreeCAD.Vector(self.points[0]))
Code: Select all
points = [[None] for jj in range(n)] for ii in range(m)]
vertex_data = obj.Object.getPropertyByName('Points')
for ii in range(m):
for jj in range(n):
points[ii][jj] = HullPoint(vertex_data, ii * n + jj)