+
    i                         ^ RI HtHtHt ^ RIHt ^ RIH	t	 ]]P                  3R lt]]P                  3R ltR tR tR tR	 tR
 tR tR tR tR tR tR tR tR tR tR tRR ltR tR tR tR t R#   ] d     Lwi ; i)    )c_floatc_intc_doubleN)Sc                P    V ^,          ! 4       pV! \         P                  V4       V# z'
Returns the current modelview matrix.
)pglGL_MODELVIEW_MATRIX
array_typeglGetMethodms   && ~/Users/tonyclaw/.openclaw/workspace/skills/math-calculator/venv/lib/python3.14/site-packages/sympy/plotting/pygletplot/util.pyget_model_matrixr   
   s%     
BA''+H    c                P    V ^,          ! 4       pV! \         P                  V4       V# r   )r	   GL_PROJECTION_MATRIXr   s   && r   get_projection_matrixr      s%     
BA((!,Hr   c                 t    \         ^,          ! 4       p \        P                  ! \        P                  V 4       V # )z
Returns the current viewport.
)r   r	   glGetIntegervGL_VIEWPORTr   s    r   get_viewportr      s(     
qAcooq)Hr   c                      \        4       p V ^ ,          V ^,          V ^,          3V ^,          V ^,          V ^	,          3V ^,          V ^,          V ^
,          33# r   r   r   s    r   get_direction_vectorsr   %   V    AqT1Q41qT1Q41qT1Q42! !r   c                      \        4       p V ^ ,          V ^,          V ^,          3V ^,          V ^,          V ^,          3V ^,          V ^	,          V ^
,          33# r   r   r   s    r   get_view_direction_vectorsr    ,   r   r   c                      R# )   ))r"   r   r   )r   r"   r   )r   r   r"    r#   r   r   get_basis_vectorsr$   3   s    ,,r   c                 x   \        \        \        P                  4      p\	        \        \        P                  4      p\        4       p\        4       \        4       \        4       rp\        P                  ! WW#WEWgV4	       \        VP                  4      \        VP                  4      \        VP                  4      3# N)	r   r   r	   glGetDoublevr   r   gluUnProjectfloatvalue	xyzr   pwmxmymzs	   &&&      r   screen_to_modelr4   7   sy    3#3#34Ah(8(89AAXZBBQ1rr2?E"((OU288_<<r   c                 x   \        \        \        P                  4      p\	        \        \        P                  4      p\        4       p\        4       \        4       \        4       rp\        P                  ! WW#WEWgV4	       \        VP                  4      \        VP                  4      \        VP                  4      3# r&   )	r   r   r	   r'   r   r   
gluProjectr)   r*   r+   s	   &&&      r   model_to_screenr7   @   sw    3#3#34Ah(8(89AAXZBBNN1qRR0?E"((OU288_<<r   c                    a a \         ;QJ d*    . V V3R  l\        \        S 4      4       4       F  NK  	  5# ! V V3R  l\        \        S 4      4       4       4      # )c              3   R   <"   T F  pSV,          SV,          ,
          x  K  	  R # 5ir&   r#   ).0iabs   & r   	<genexpr>vec_subs.<locals>.<genexpr>J   s     4m1!m   $')tuplerangelen)r<   r=   s   ffr   vec_subsrD   I   s5    54eCFm45454eCFm444r   c                     \        4       p ^V ^ &   ^ V ^&   ^ V ^&   ^ V ^&   ^V ^&   ^ V ^&   ^ V ^&   ^ V ^	&   ^V ^
&   \        P                  ! V 4       R# )z
Removes rotational components of
current matrix so that primitives
are always drawn facing the viewer.

|1|0|0|x|
|0|1|0|x|
|0|0|1|x| (x means left unchanged)
|x|x|x|x|
N)r   r	   glLoadMatrixfr   s    r   billboard_matrixrG   M   sk     	AAaDAaDAaDAaDAaDAaDAaDAaDAbEar   c                      \         P                  \         P                  ^ .\         P                  \         P                  ^ .\         P                  \         P                  ^ ..# r   )r   InfinityNegativeInfinityr#   r   r   create_boundsrK   f   sH    ZZ++Q/ZZ++Q/ZZ++Q/1 1r   c                     Vf   R # \        ^4       FU  p\        W,          ^ ,          W,          .4      W,          ^ &   \        W,          ^,          W,          .4      W,          ^&   KW  	  R # r&   )rB   minmax)r=   vaxiss   && r   update_boundsrQ   l   sR    ya!'!*ag./
!'!*ag./
 r   c                 ,    WW,
          ,          ,           # r&   r#   )a_mina_maxa_ratios   &&&r   interpolaterV   t   s    em,,,r   c                 R    W,
          pW8X  d   R pW ,
          \        V4      ,          # )g      ?)r)   )rS   rT   a_valuea_ranges   &&& r   rinterpolaterZ   x   s$    mG~OuW~--r   c                    a aa \         ;QJ d"    . V VV3R  l\        ^4       4       F  NK  	  5# ! V VV3R  l\        ^4       4       4      # )c              3   Z   <"   T F   p\        SV,          SV,          S4      x  K"  	  R # 5ir&   )rV   )r:   r;   color1color2ratios   & r   r>   $interpolate_color.<locals>.<genexpr>   s%     L8aVAYq	5998s   (+rA   rB   )r]   r^   r_   s   fffr   interpolate_colorrb      s-    5L58L5L5L58LLLr   c                      W,
          V,          # r&   r#   )rO   v_minv_lens   &&&r   scale_valuerf      s    Ir   c                 ~    \        V 4      \        V 4      r!W!,
          pV  Uu. uF  p\        WAV4      NK  	  up# u upi r&   )rM   rN   rf   )flistrd   v_maxre   fs   &    r   scale_value_listrk      s7    u:s5z5ME278%QK%(%888s   :c                 8   YrT\        W,
          4      R 8  d   . #  \        \        W,
          4      4       Y8  d   \        R4      hY,          pY!T,          ,
          p\        Yr,
          4      R 8  d   RpY,          p Y,          p\        Y,
          T,          4      pT'       d   Y8  d   \        YET^,          4      # T .\        ^T^,           4       U	u. uF  qY,          ,           NK  	  up	,           T.,           #   \        \        3 d    . u # i ; iu up	i )gMbP?z"r_min cannot be greater than r_maxg        )absrB   int	TypeErrorOverflowError
ValueErrorstrided_range)
r_minr_maxstride	max_stepso_mino_maxr_min_sr_max_sr_stepses
   &&&&      r   rr   rr      s    5
5=E!	c%- ! }=>>~G'G
7u$	E	E5=&()GW(U6!8447a10EF0E1ah&&0EFF%PP }% 	 Gs   C> D>DDc                 P   \        V \        4      '       g   R # / pV P                  R4       Fv  pVP                  R4      p\        V4      ^8X  d   V^ ,          RrTM'\        V4      ^8X  d   Vw  rEM\	        RV ,          4      hVP                  4       WP                  4       &   Kx  	  V# )N;= z%Plot option string '%s' is malformed.)
isinstancestrsplitrC   rq   strip)soptionstokenpiecesoptionr*   s   &     r   parse_option_stringr      s    aGS!v;!"1IrE[A"MFEDJKK"'++-  Nr   c                 D   a a \        V V3R  l\        ^4       4       4      # )c              3   R   <"   T F  pSV,          SV,          ,          x  K  	  R # 5ir&   r#   r:   r;   v1v2s   & r   r>   dot_product.<locals>.<genexpr>   s     -Hqr!uRU{{Hr@   sumrB   r   r   s   ffr   dot_productr      s    -E!H---r   c                    a a \         ;QJ d!    . V V3R  l\        ^4       4       F  NK  	  5# ! V V3R  l\        ^4       4       4      # )c              3   R   <"   T F  pSV,          SV,          ,
          x  K  	  R # 5ir&   r#   r   s   & r   r>   vec_sub.<locals>.<genexpr>   s     11AAr@   ra   r   s   ffr   vec_subr      s-    51a15151a111r   c                 N   a  \        V 3R  l\        ^4       4       4      R,          # )c              3   D   <"   T F  pSV,          ^,          x  K  	  R# 5i)   Nr#   )r:   r;   rO   s   & r   r>   vec_mag.<locals>.<genexpr>   s     )1qtQwws    g      ?r   )rO   s   fr   vec_magr      s    )a))C00r   )2   )!ctypesr   r   r   ImportError	pyglet.glglr	   
sympy.corer   glGetFloatvr   r   r   r   r    r$   r4   r7   rD   rG   rK   rQ   rV   rZ   rb   rf   rk   rr   r   r   r   r   r#   r   r   <module>r      s   	//   !(S__  &-#// !!-==5210-.M9Q, .21q  		s   
A: :BB