def add_edge(self, region, pt1, pt2, do_corners=True, draggable_edge=True, draggable_corner=True, invisible_edge=False, edge_width=1, invisible_corner=False): """ Add edge handles to region Also adds corner handles """ edge = self.get_edge_with(pt1, pt2) if edge is None: edge = SelectEdge(self, rect=[pt1, pt2], draggable=draggable_edge, edge_width=edge_width, invisible=invisible_edge) self.add_part(edge) if do_corners: self.add_corners(region, [pt1, pt2], edge=edge, draggable=draggable_corner, invisible=invisible_corner) # So we get corners region.add_connected(edge) edge.add_adjacent(region) # Connect region to edge
def get_edge(self, pt1, pt2): """ Get edge, creating edge if new to area Also adds corners, creating corners if new to area """ edge = self.current_edge(pt1, pt2) if edge is None: edge = SelectEdge(rect=[pt1, pt2]) return edge
def add_edge(self, region, pt1, pt2): """ Add edge handles to region Also adds corner handles """ edge = self.get_edge_with(pt1, pt2) if edge is None: edge = SelectEdge(rect=[pt1, pt2]) self.add_part(edge) self.add_corners(region, [pt1, pt2], edge=edge) # So we get corners region.add_connected(edge)