def add_point(self, position): inscription_position = self.inscription.get_position() for i, (a, b) in enumerate(utils.pairs_generator(self.get_all_points())): if utils.is_near_line_segment(a, b, position, 5): point = citems.Point(self, "point", citems.AbsPlacement(position)) point.owner = self self.points.insert(i, point) break self.inscription.set_position(inscription_position) self.net.changed() # Canvas items changed, so self.changed() is not sufficient
def add_point(self, position): inscription_position = self.inscription.get_position() for i, (a, b) in enumerate(utils.pairs_generator(self.get_all_points())): if utils.is_near_line_segment(a, b, position, 5): point = citems.Point(self, "point", citems.AbsPlacement(position)) point.owner = self self.points.insert(i, point) break self.inscription.set_position(inscription_position) self.net.changed( ) # Canvas items changed, so self.changed() is not sufficient
def is_at_position(self, position): for a, b in utils.pairs_generator(self.get_points()): if utils.is_near_line_segment(a, b, position, 5): return True return False