===============================================
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
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
OPERATIONS:
== - compares two points, both coordinates must be equal
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
METHODS
Assign(Point 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(Matrix m) - applies Matrix transformation to the Point (see Matrix().__doc__)