+
    ‹°³jˆ  ã                   ód   € ^ RI Ht ^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 ^ RI
Ht  ! R R]4      tR	# )
é    )ÚBasic)ÚStr)ÚVector)Ú
CoordSys3D)Ú_path)Úcacheitc                   ót   a a€ ] tR t^	t oRt]P                  R3V 3R llt]R 4       t	R t
R tR tRtVtV ;t# )	ÚPointz"
Represents a point in 3-D space.
Nc                óÈ  <€ \        V4      p\        V\        4      '       g   \        R \	        V4      ,          4      h\        V\
        4      '       g    Ve   \        R\	        V4      ,          4      hVf   \        SV `  V \        V4      V4      pM\        SV `  V \        V4      W#4      pWn	        W$n
        Vf   RVn        WDn        V# W4n        VP                  Vn        V# )z0position should be an instance of Vector, not %sNz3parent_point should be an instance of Point, not %s)ÚstrÚ
isinstancer   Ú	TypeErrorÚtyper
   ÚsuperÚ__new__r   Ú_nameÚ_posÚ_parentÚ_root)ÚclsÚnameÚpositionÚparent_pointÚobjÚ	__class__s   &&&& €ÚS/home/luca/screen-checking/.venv/lib/python3.14/site-packages/sympy/vector/point.pyr   ÚPoint.__new__   sÞ   ø€ Ü�4‹yˆä˜(¤F×+Ò+ÜØBÄTØóFõ óð ô ˜<¬×/Ò/ØÒ(ÜØEÌØ óI"õ "ó#ð #ð ÒÜ‘'‘/ #¤s¨4£y°(Ó;‰Cä‘'‘/ #¤s¨4£y°(ÓIˆCàŒ	ØŒØÒØˆCŒKØŒIð
 ˆ
ð 'ŒKØ$×*Ñ*ˆCŒIàˆ
ó    c                óŒ  € \        V\        4      '       g2   \        V\        4      '       g   \        \	        V4      R,           4      h\        V\        4      '       d   VP
                  pW8X  d   \        P                  # WP                  8X  d   V P                  # VP                  V 8X  d   RVP                  ,          # \        W4      w  r#\        P                  p\        V4       F  pWCV,          P                  ,          pK  	  \        V^,           \        V4      4       F  pWCV,          P                  ,          pK  	  V# )aÌ  
Returns the position vector of this Point with respect to
another Point/CoordSys3D.

Parameters
==========

other : Point/CoordSys3D
    If other is a Point, the position of this Point wrt it is
    returned. If its an instance of CoordSyRect, the position
    wrt its origin is returned.

Examples
========

>>> from sympy.vector import CoordSys3D
>>> N = CoordSys3D('N')
>>> p1 = N.origin.locate_new('p1', 10 * N.i)
>>> N.origin.position_wrt(p1)
(-10)*N.i

zis not a Point or CoordSys3Déÿÿÿÿ)r   r
   r   r   r   Úoriginr   Úzeror   r   r   ÚrangeÚlen)ÚselfÚotherÚ	rootindexÚpathÚresultÚis   &&    r   Úposition_wrtÚPoint.position_wrt+   sî   € ô2 ˜5¤%×(Ò(Ü˜u¤j×1Ò1ÜœC ›JØ:õ;ó <ð <ä�eœZ×(Ò(Ø—L‘LˆEàŒ=Ü—;‘;ÐØ—l‘lÔ"Ø—9‘9ÐØ�]‰]˜dÔ"Ø˜Ÿ
™
•?Ð"ä Ó,‰ˆ	Ü—‘ˆÜ�yÖ!ˆAØ˜1•g—l‘lÕ"ŠFñ "ä�y 1•}¤c¨$£iÖ0ˆAØ˜1•g—l‘lÕ"ŠFñ 1àˆr   c                ó   € \        WV 4      # )aÙ  
Returns a new Point located at the given position wrt this
Point.
Thus, the position vector of the new Point wrt this one will
be equal to the given 'position' parameter.

Parameters
==========

name : str
    Name of the new point

position : Vector
    The position vector of the new Point wrt this one

Examples
========

>>> from sympy.vector import CoordSys3D
>>> N = CoordSys3D('N')
>>> p1 = N.origin.locate_new('p1', 10 * N.i)
>>> p1.position_wrt(N.origin)
10*N.i

)r
   )r%   r   r   s   &&&r   Ú
locate_newÚPoint.locate_newZ   s   € ô4 �T TÓ*Ð*r   c                ól   € V P                  VP                  4      p\        VP                  V4      4      # )aÁ  
Returns the Cartesian/rectangular coordinates of this point
wrt the origin of the given CoordSys3D instance.

Parameters
==========

coordinate_system : CoordSys3D
    The coordinate system to express the coordinates of this
    Point in.

Examples
========

>>> from sympy.vector import CoordSys3D
>>> N = CoordSys3D('N')
>>> p1 = N.origin.locate_new('p1', 10 * N.i)
>>> p2 = p1.locate_new('p2', 5 * N.j)
>>> p2.express_coordinates(N)
(10, 5, 0)

)r+   r!   ÚtupleÚ	to_matrix)r%   Úcoordinate_systemÚpos_vects   && r   Úexpress_coordinatesÚPoint.express_coordinatesv   s2   € ð2 ×$Ñ$Ð%6×%=Ñ%=Ó>ˆä�X×'Ñ'Ð(9Ó:Ó;Ð;r   c                ó   € V P                   # )N)r   )r%   Úprinters   &&r   Ú	_sympystrÚPoint._sympystr“   s   € Ø�z‰zÐr   © )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r"   r   r   r+   r.   r5   r9   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   Ú__classdict__s   @@r   r
   r
   	   sC   ù‡ € ñð %+§K¡K¸d÷ ð: ñ,ó ð,ò\+ò8<÷:ò r   r
   N)Úsympy.core.basicr   Úsympy.core.symbolr   Úsympy.vector.vectorr   Úsympy.vector.coordsysrectr   Úsympy.vector.functionsr   Úsympy.core.cacher   r
   r;   r   r   Ú<module>rK      s%   ðÝ "Ý !Ý &Ý 0Ý (Ý $ôKˆEö Kr   