<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="../style/class_view.xsl"?>
<Point>
===============================================
  Point - base class to represent point
===============================================
Integer or float values are accepted as coordinates

<CONSTRUCTOR>
  Point() - generic constructor, creates a Point with zero coordinates
  Point(Point) - copy constructor
  Point(x, y)  - creates a Point and assigns coordinates.
                 x and y may be integer or float
</CONSTRUCTOR>
	<ATTRIBUTES>
  parent (read-only)   - Point's parent object
  x (integer or float) - horizontal position of the point
  y (integer or float) - vertical position of the point
</ATTRIBUTES>
	<OPERATIONS>
  ==       - compares two points, both coordinates must be equal
  coerce   - can be operated on Point, float value, Matrix and Rect
  add      - Point must be second operand, both coordinates are added
  subtract - Point must be second operand, both coordinates are added
  multiply - second operand may be Point, float or Matrix. If second operand is Point,
             then result of scalar product is returned
</OPERATIONS>
	<METHODS>
  Assign(<cl>Point</cl> p) | (x, y) - assigns new values to a Point
  Shift(Point p) | (x, y) - shifts Point on a position defined by p or x and y values
  Add(Point p) - same as Shift(Point p)
  Sub(Point p) - subtracts p coordinates from the current Point
  Mul(float s) - mutiplies Point's position to s value
  Transform(<cl>Matrix</cl> m) - applies Matrix transformation to the Point (see Matrix().__doc__)
</METHODS>
</Point>
