ŗō
jHc           @   s¯   d  d k  l Z l Z d  d k l Z d  d k Z d d d     YZ d d d     YZ e d j oF d  d	 k	 Te d
 d d  Z
 e d d
 d  Z e e
 Z e
 e Z n d S(   i˙˙˙˙(   t   Vector2t   Vector3(   t   sqrtNt   Point2c           B   s   e  Z d  d  d  Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d	   Z
 d
   Z d   Z d   Z d   Z d   Z d   Z RS(   g        c         C   s(   t  |  t  |  g |  _ d |  _ d  S(   NR   (   t   floatt   et   name(   t   selft   xt   y(    (    s   bin/python/point.pyt   __init__   s    c         C   s   | | |  i  d <|  i  d <d  S(   Ni    i   (   R   (   R   R   R	   (    (    s   bin/python/point.pyt   Set   s    c         C   s   | |  i  d <d  S(   Ni    (   R   (   R   R   (    (    s   bin/python/point.pyt   SetX   s    c         C   s   | |  i  d <d  S(   Ni   (   R   (   R   R	   (    (    s   bin/python/point.pyt   SetY   s    c         C   s   |  i  d S(   Ni    (   R   (   R   (    (    s   bin/python/point.pyR      s    c         C   s   |  i  d S(   Ni   (   R   (   R   (    (    s   bin/python/point.pyR	      s    c         C   s2   t  |  i d |  i d |  i d |  i d  S(   Ni    i   (   R   R   (   R   (    (    s   bin/python/point.pyt   length   s    c         C   s,   |  i  d |  i  d |  i  d |  i  d S(   Ni    i   (   R   (   R   (    (    s   bin/python/point.pyt   squaredLength   s    c         C   s{   |  i    } y& |  i d | } |  i d | } Wn' d Gt i Gt i GHt i d  n X| | |  i d <|  i d <d  S(   Ni    i   t   Error(   R   R   t   syst   exc_typet	   exc_valuet   exit(   R   t   lR   R	   (    (    s   bin/python/point.pyt   MakeUnitVector    s    c         C   s   |  i  | S(   N(   R   (   R   t   i(    (    s   bin/python/point.pyt   __getitem__-   s    c         C   s   | |  i  | <d  S(   N(   R   (   R   R   t   val(    (    s   bin/python/point.pyt   __setitem__/   s    c         C   s+   t  |  i d | d |  i d | d  S(   Ni    i   (   R   R   (   R   t   other(    (    s   bin/python/point.pyt   __add__1   s    c         C   sq   |  i  | i  j o/ t |  i d | d |  i d | d  Sn, t |  i d | d |  i d | d  Sd  S(   Ni    i   (   R   R   R   R    (   R   R   (    (    s   bin/python/point.pyt   __sub__3   s    /c         C   s   d |  i  d |  i  d f S(   Ns   %f %fi    i   (   R   (   R   (    (    s   bin/python/point.pyt   __repr__8   s    c         C   s   t  |  |  S(   N(   t   getattr(   R   R   (    (    s   bin/python/point.pyt   __getattr__:   s    (   t   __name__t
   __module__R
   R   R   R   R   R	   R   R   R   R   R   R   R   R   R    (    (    (    s   bin/python/point.pyR   
   s   													t   Point3c           B   sĒ   e  Z d  d  d  d  Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d	   Z
 d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   i    c         C   s1   t  |  t  |  t  |  g |  _ d |  _ d  S(   NR#   (   R   R   R   (   R   R   R	   t   z(    (    s   bin/python/point.pyR
   >   s    $c         C   s-   | | | |  i  d <|  i  d <|  i  d <d  S(   Ni    i   i   (   R   (   R   R   R	   R$   (    (    s   bin/python/point.pyR   B   s    c         C   s   | |  i  d <d  S(   Ni    (   R   (   R   R   (    (    s   bin/python/point.pyR   E   s    c         C   s   | |  i  d <d  S(   Ni   (   R   (   R   R	   (    (    s   bin/python/point.pyR   H   s    c         C   s   | |  i  d <d  S(   Ni   (   R   (   R   R$   (    (    s   bin/python/point.pyt   SetZJ   s    c         C   s   |  i  d S(   Ni    (   R   (   R   (    (    s   bin/python/point.pyR   M   s    c         C   s   |  i  d S(   Ni   (   R   (   R   (    (    s   bin/python/point.pyR	   N   s    c         C   s   |  i  d S(   Ni   (   R   (   R   (    (    s   bin/python/point.pyR$   O   s    c         C   sH   t  |  i d |  i d |  i d |  i d |  i d |  i d  S(   Ni    i   i   (   R   R   (   R   (    (    s   bin/python/point.pyR   Q   s    .c         C   sB   |  i  d |  i  d |  i  d |  i  d |  i  d |  i  d S(   Ni    i   i   (   R   (   R   (    (    s   bin/python/point.pyR   T   s    c         C   s   |  i    } y7 |  i d | } |  i d | } |  i d | } Wn' d Gt i Gt i GHt i d  n* X| | | |  i d <|  i d <|  i d <d  S(   Ni    i   i   R   (   R   R   R   R   R   R   (   R   R   R   R	   R$   (    (    s   bin/python/point.pyR   W   s    c         C   s   |  i  | S(   N(   R   (   R   R   (    (    s   bin/python/point.pyR   e   s    c         C   s   | |  i  | <d  S(   N(   R   (   R   R   R   (    (    s   bin/python/point.pyR   g   s    c         C   s=   t  |  i d | d |  i d | d |  i d | d  S(   Ni    i   i   (   R#   R   (   R   R   (    (    s   bin/python/point.pyR   i   s    'c         C   s   |  i  | i  j oA t |  i d | d |  i d | d |  i d | d  Sn> t |  i d | d |  i d | d |  i d | d  Sd  S(   Ni    i   i   (   R   R#   R   R   (   R   R   (    (    s   bin/python/point.pyR   l   s
    ''c         C   s&   d |  i  d |  i  d |  i  d f S(   Ns   %f %f %fi    i   i   (   R   (   R   (    (    s   bin/python/point.pyR   s   s    c         C   s   t  |  |  S(   N(   R   (   R   R   (    (    s   bin/python/point.pyR    v   s    (   R!   R"   R
   R   R   R   R%   R   R	   R$   R   R   R   R   R   R   R   R   R    (    (    (    s   bin/python/point.pyR#   =   s"   															t   __main__(   t   *i   i    (    (    (   t   vectorR    R   t   mathR   R   R   R#   R!   t   typest   p1t   p2t   v1t   p3(    (    (    s   bin/python/point.pys   <module>   s   3>

