Table Of Contents

Previous topic

Point

Next topic

PointsObjectMixin

This Page

phoenix_title PointSet

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.


class_hierarchy Inheritance Diagram

Inheritance diagram for class PointSet

Inheritance diagram of PointSet


method_summary Methods Summary

__init__  
DrawD2  
FindClosestPoint Returns the index of the closest point to the point, XY, given
SetDiameter  

api Class API



class PointSet(PointsObjectMixin, ColorOnlyMixin, DrawObject)

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.


Methods



__init__(self, Points, Color = "Black", Diameter = 1, InForeground = False)


DrawD2(self, dc, Points)


FindClosestPoint(self, XY)

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.



SetDiameter(self, Diameter)