.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2020 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc

.. currentmodule:: wx.lib.floatcanvas.FCObjects

.. highlight:: python



.. _wx.lib.floatcanvas.FCObjects.PointSet:

==========================================================================================================================================
|phoenix_title|  **wx.lib.floatcanvas.FCObjects.PointSet**
==========================================================================================================================================

Draws a set of points

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 distinguish 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| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>PointSet</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.lib.floatcanvas.FCObjects.PointSet_inheritance.png" alt="Inheritance diagram of PointSet" usemap="#dummy" class="inheritance"/></center>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.lib.floatcanvas.FCObjects.PointSet.html" title="wx.lib.floatcanvas.FCObjects.PointSet" alt="" coords="383,83,649,112"/> <area shape="rect" id="node2" href="wx.lib.floatcanvas.FCObjects.PointsObjectMixin.html" title="wx.lib.floatcanvas.FCObjects.PointsObjectMixin" alt="" coords="5,5,336,35"/> <area shape="rect" id="node3" href="wx.lib.floatcanvas.FCObjects.ColorOnlyMixin.html" title="wx.lib.floatcanvas.FCObjects.ColorOnlyMixin" alt="" coords="360,5,672,35"/> <area shape="rect" id="node4" href="wx.lib.floatcanvas.FCObjects.DrawObject.html" title="wx.lib.floatcanvas.FCObjects.DrawObject" alt="" coords="697,5,986,35"/> </map> 
   </p>
   </div>

|


|super_classes| Known Superclasses
==================================

:class:`wx.lib.floatcanvas.FCObjects.ColorOnlyMixin`, :class:`wx.lib.floatcanvas.FCObjects.DrawObject`, :class:`wx.lib.floatcanvas.FCObjects.PointsObjectMixin`

|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.lib.floatcanvas.FCObjects.PointSet.__init__`                          Default class constructor.
:meth:`~wx.lib.floatcanvas.FCObjects.PointSet.DrawD2`                            
:meth:`~wx.lib.floatcanvas.FCObjects.PointSet.FindClosestPoint`                  Returns the index of the closest point to the point, XY, given
:meth:`~wx.lib.floatcanvas.FCObjects.PointSet.SetDiameter`                       Sets the diameter
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: PointSet(PointsObjectMixin, ColorOnlyMixin, DrawObject)

   Draws a set of points
   
   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 distinguish 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.

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

      Default class constructor.
      
      :param `Points`: takes a 2-tuple, or a (2,)
       `NumPy <http://www.numpy.org/>`_ array of point coordinates
      :param `Color`: see :meth:`~lib.floatcanvas.FloatCanvas.DrawObject.SetColor`
      :param integer `Diameter`: the points diameter
      :param boolean `InForeground`: should object be in foreground


   .. method:: DrawD2(self, dc, Points)


   .. method:: 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.
      
      :param `XY`: the (x,y) coordinates of the point to look for, it takes a
       2-tuple or (2,) numpy array in World coordinates


   .. method:: SetDiameter(self, Diameter)

      Sets the diameter
      
      :param integer `Diameter`: the points diameter


