
    sg                     l    	 d dl mZ d dlmZ d dlmZm	Z
 d Zd Zd Zd Zd Zd	Zd
 Zy# e$ r Y *w xY w)    )c_floatN)sqrtacosc                     | d   |d   z  | d   |d   z  z
  | d   |d   z  | d   |d   z  z
  | d   |d   z  | d   |d   z  z
  fS )N      r    abs     Z/var/www/html/venv/lib/python3.12/site-packages/sympy/plotting/pygletplot/plot_rotation.pycrossr   
   sl    aD1Q4K!A$1+%aD1Q4K!A$1+%aD1Q4K!A$1+%' '    c                 H    | d   |d   z  | d   |d   z  z   | d   |d   z  z   S Nr   r   r   r	   r
   s     r   dotr      s6    Q4!A$;1!$qtad{22r   c                 H    t        | d   dz  | d   dz  z   | d   dz  z         S )Nr   r   r   )_sqrt)r   s    r   magr      s/    1q1Q47"QqT1W,--r   c                 F    t        |       }| d   |z  | d   |z  | d   |z  fS r   )r   )r   ms     r   normr      s0    AAaD1HadQh!q))r   c                 (   t        t        | dg      |g      } t        t        |dg      |g      }t        |dz  dz  |dz  dz  z         }| |dz  z
  |z  }||dz  z
  |z  }d|dz  z
  |dz  z
  }|dkD  rt        |      }|||fS d}t        |||f      S )Nr   r         ?g        )minmaxr   r   )xywidthheightsrsxsyszs           r   get_sphere_mappingr%      s    S!Q[% !AS!Q[&!"A	a!|vax!m+	,Buqy=B
Bvz>R
B	r1ur1u	B	Cx2YB|RRL!!r   gFa~ܥL@c                    t        | d   | d   ||      }t        |d   |d   ||      }t        t        t        ||      dg      d      }t	        |dz
        dk  ry t        t        ||            }|t        z  t        |      z  }	t        j                          t        j                          t        j                  |	g|  t        dz         }
t        j                  t        j                  |
       t        j                           |
S )Nr   r   r   gư>   )r%   r   r   r   absr   r   rad2deg_acospglglPushMatrixglLoadIdentity	glRotatefr   glGetFloatvGL_MODELVIEW_MATRIXglPopMatrix)p1p2r   r    theta_multiplierv1v2draxisrthetamats              r   get_spherical_rotatationr<   1   s    	BqE2a5%	8B	BqE2a5%	8BCRb!"A&A
1s7|h%B-!E'%(2FMM&!5!2:.COOC++S1OOJr   )ctypesr   ImportError	pyglet.glglr,   mathr   r   r   r+   r   r   r   r   r%   r*   r<   r	   r   r   <module>rB      sO   	  -'3.*
"" ]  		s   + 33