
    \h                     >    S SK Jr  S SKJr  S SKJr   " S S\5      rg)    N)S)PlotModeBasec                   0    \ rS rSrSrS rS rS rS rSr	g)	PlotSurface   perspectivec                 
   U R                   S   U l        [        U R                  R                  5       5      U l        U R                   S   U l        [        U R
                  R                  5       5      U l        [        R                  [        R                  S/[        R                  [        R                  S/[        R                  [        R                  S//U l
        U R                  5       nSU l        [        U R                  R                  U R
                  R                  -  5      U l        / nU R                  nU R                   H  n/ nU R                   Hy  n U" XF5      nUbD  [#        S5       H5  n[%        X8   S   Xx   /5      X8   S'   ['        X8   S   Xx   /5      X8   S'   M7     UR)                  U5        U =R                  S-  sl        M{     UR)                  U5        M     [#        S5       H+  nX8   S   X8   S   -
  X8   S'   X8   S   S:X  d  M$  SX8   S'   M-     X l        U R-                  U R/                  SS5      5        U R1                  U R/                  SS5      5        g ! [          a    S n GNf = f)	Nr      g                 ?   FT)	intervals
u_intervallistfrangeu_set
v_intervalv_setr   InfinityNegativeInfinitybounds_get_evaluator_calculating_verts_posfloatv_len_calculating_verts_lenZeroDivisionErrorrangeminmaxappendvertspush_wireframe
draw_verts
push_solid)	selfevaluater"   bucolumnv_eaxiss	            ^/var/www/auris/envauris/lib/python3.13/site-packages/sympy/plotting/pygletplot/plot_surface.py_on_calculate_vertsPlotSurface._on_calculate_verts   s'   ..+$//0023
..+$//0023


A$6$6:

A$6$6:

A$6$6:< &&(&)#&+OO!!$//"7"77'9# KKAFZZ!!B > %a%(!'!*bh)?%@
%(!'!*bh)?%@
 !) b!++s2+   LL   !HDagaj0AGAJwqzS  
 
 
DOOE59:t45# ) Bs   !I22JJc                 D  ^  T R                   (       a  T R                  (       d  g U 4S jnU 4S jnU" S5        ST l        T R                  R                  T R                   T R                  T R
                  UUS9T l        T R                  T R                  SS5      5        g )Nc                 &   > [        U 5      Tl        g )N)r   _calculating_cverts_len)nr&   s    r.   set_work_len6PlotSurface._on_calculate_cverts.<locals>.set_work_len7   s    +08D(    c                  0   > T =R                   S-  sl         g )Nr   )_calculating_cverts_pos)r&   s   r.   inc_work_pos6PlotSurface._on_calculate_cverts.<locals>.inc_work_pos:   s    ((C/(r7   r
   r   )set_leninc_posT)	r"   colorr9   apply_to_surfacer   r   cvertsr%   r$   )r&   r5   r:   s   `  r.   _on_calculate_cverts PlotSurface._on_calculate_cverts3   s{    zz	4	0Q'($jj11$**26**26**:F:F	 2 H
 	d34r7   c                     U R                   U   U   nU R                  US   US   US   U R                  U   U R                  U   5      $ )Nr   r
   r   )r"   r>   r   r   )r&   r)   r+   verts       r.   calculate_one_cvertPlotSurface.calculate_one_cvertE   sL    zz!}Qzz$q'47DG**Q-A8 	8r7   c                    ^ ^^ U UU4S jnU$ )Nc                  4  > [        S[        TR                  5      5       GHs  n [        R                  " [        R
                  5        [        [        TR                  5      5       GH  nTR                  U S-
     U   nTR                  U    U   nUb  Uc;  [        R                  " 5         [        R                  " [        R
                  5        Ml  T(       a2  TR                  U S-
     U   nTR                  U    U   nUc  SnUc  SnO"T(       a  TR                  =pEOTR                  =pE[        R                  " U6   [        R                  " U6   [        R                  " U6   [        R                  " U6   GM     [        R                  " 5         GMv     g )Nr
   )r   r   r   )r   lenr   pglglBeginGL_QUAD_STRIPr   r"   glEndr@   default_solid_colordefault_wireframe_color	glColor3f
glVertex3f)	r)   r+   papbcacbr&   
use_cvertsuse_solid_colors	         r.   f!PlotSurface.draw_verts.<locals>.fK   s2   1c$**o.C--.s4::/AAE*1-BAq)BzRZ		C$5$56 !![[Q/2![[^A.:!*B:!*B*&*&>&>>B&*&B&BBBMM2&NNB'MM2&NNB'- 0. 		3 /r7    )r&   rV   rW   rX   s   ``` r.   r$   PlotSurface.draw_vertsJ   s    	6 r7   )r3   r9   r   r   r   r@   r   r   r   r   r"   N)
__name__
__module____qualname____firstlineno__default_rot_presetr/   rA   rE   r$   __static_attributes__rZ   r7   r.   r   r      s    &&6P5$8
r7   r   )	pyglet.glglrJ   
sympy.corer   (sympy.plotting.pygletplot.plot_mode_baser   r   rZ   r7   r.   <module>rf      s      A_, _r7   