The PointSet class takes a list of 2-tuples, or a NX2 NumPy array of point coordinates.
If Points is a sequence of tuples: Points[N][0] is the x-coordinate of point N and Points[N][1] is the y-coordinate.
If Points is a NumPy array: Points[N,0] is the x-coordinate of point N and Points[N,1] is the y-coordinate for arrays.
Each point will be drawn the same color and Diameter. The Diameter is in screen pixels, not world coordinates.
The hit-test code does not distingish between the points, you will only know that one of the points got hit, not which one. You can use PointSet.FindClosestPoint(WorldPoint) to find out which one
In the case of points, the HitLineWidth is used as diameter.
lib.floatcanvas.FloatCanvas.ColorOnlyMixin, lib.floatcanvas.FloatCanvas.DrawObject, lib.floatcanvas.FloatCanvas.PointsObjectMixin
__init__ | |
DrawD2 | |
FindClosestPoint | Returns the index of the closest point to the point, XY, given |
SetDiameter |
The PointSet class takes a list of 2-tuples, or a NX2 NumPy array of point coordinates.
If Points is a sequence of tuples: Points[N][0] is the x-coordinate of point N and Points[N][1] is the y-coordinate.
If Points is a NumPy array: Points[N,0] is the x-coordinate of point N and Points[N,1] is the y-coordinate for arrays.
Each point will be drawn the same color and Diameter. The Diameter is in screen pixels, not world coordinates.
The hit-test code does not distingish between the points, you will only know that one of the points got hit, not which one. You can use PointSet.FindClosestPoint(WorldPoint) to find out which one
In the case of points, the HitLineWidth is used as diameter.
Returns the index of the closest point to the point, XY, given in World coordinates. It’s essentially random which you get if there are more than one that are the same.
This can be used to figure out which point got hit in a mouse binding callback, for instance. It’s a lot faster that using a lot of separate points.