+
    iL7                     v    ^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IHt  ! R R	]4      tR
 tR# )   )PlotInterval)
PlotObject)parse_option_stringSymbol)sympify)GeometryEntity)is_sequencec            	       $  a  ] tR t^
t o RtRRutt. t. tRt	R t
. t^^/ ^/ /^^/ ^/ /^^/ ^/ //t^/ ^/ ^/ /t^^uttR t]R 4       t]RR l4       t]RR l4       t]R	 4       t]R
 4       tRt]R 4       tR tR t]R 4       t]R 4       tRtV tR# )PlotModez
Grandparent class for plotting
modes. Serves as interface for
registration, lookup, and init
of modes.

To create a new plot mode,
inherit from PlotModeBase
or one of its children, such
as PlotSurface or PlotCurve.
 Fc                    \        4       hN)NotImplementedError)selfs   &a/var/www/html/photoedit/myenv/lib/python3.14/site-packages/sympy/plotting/pygletplot/plot_mode.pydrawPlotMode.draw%   s    !##    c                   \         P                  W4      w  r4VP                  RR4      p\         P                  V4      w  rg\         P	                  Wg4      p\        \        V4      \        V4      .4      \        V4      r\         P                  WYV
4      p\        P                  V4      pWln
        VP                  V4       VP                  V4       WLn        V# )z
This is the function which interprets
arguments given to Plot.__init__ and
Plot.__setattr__. Returns an initialized
instance of the appropriate child class.
moder   )r   _extract_optionsget_interpret_args_find_i_varsmaxlen	_get_modeobject__new__d_vars_fill_i_vars_fill_intervalsoptions)clsargskwargsnewargs	newkwargsmode_argr!   	intervalsi_varsidsubclsos   &*,          r   r    PlotMode.__new__<   s     &66tD==, %44W=&&v9CKY013v;1 ##H3 NN6" 	v	)$	r   c                    Rp\        V \        4      '       d   T pX'       d   TP                  '       g)   \	        RTP
                  : RTP
                  : R24      hY#P                  8w  d)   \	        RTP
                  TP                  3,          4      hYP                  8  d)   \	        RTP
                  TP                  3,          4      hT# \        T \        4      '       d   YrTT\        P                  8  d   \	        \        RR4      4      hT\        P                  8  d   \	        \        RR4      4      hT '       g   \        P                  YE4      # \        P                  YT4      # \	        R	4      h  \         d     ELli ; i)
a  
Tries to return an appropriate mode class.
Intended to be called only by __new__.

mode_arg
    Can be a string or a class. If it is a
    PlotMode subclass, it is simply returned.
    If it is a string, it can an alias for
    a mode or an empty string. In the latter
    case, we try to find a default mode for
    the i_var_count and d_var_count.

i_var_count
    The number of independent variables
    needed to evaluate the d_vars.

d_var_count
    The number of dependent variables;
    usually the number of functions to
    be evaluated in plotting.

For example, a Cartesian function y = f(x) has
one i_var (x) and one d_var (y). A parametric
form x,y,z = f(u,v), f(u,v), f(u,v) has two
two i_vars (u,v) and three d_vars (x,y,z).
NzTo use unregistered plot mode z you must first call z._init_mode().z7%s can only plot functions with %i dependent variables.zA%s cannot plot functions with more than %i independent variables.TFz-PlotMode argument must be a class or a string)
issubclassr   	TypeError_was_initialized
ValueError__name__d_var_counti_var_count
isinstancestr
_i_var_maxvar_count_error
_d_var_max_get_default_mode_get_aliased_mode)r*   r9   r8   mr-   r.   s   &&&   r   r   PlotMode._get_modeZ   si   @	A(H-- %%% $%JJ

"< = = mm+  #A$%JJ%&]]$4"4 5 5 ]]*  #/ %&JJ%&]]$4"4 5 5
 Hh$$q8&&& t!<==8&&& !=>> 11!77  11(qAA 3 4 4G  		s   E: :F	F	c                    VR8X  d   T p \         P                  V,          V ,          #   \         dI    T \         P                  8  d    \         P	                  T ^,           Y4      u # \        RY!3,          4      hi ; i)r   zKCouldn't find a default mode for %i independent and %i dependent variables.)r   _mode_default_mapKeyErrorr<   r?   r6   )r-   r.   r,   s   &&&r   r?   PlotMode._get_default_mode   s    R<F	I--a033 		I 8&&&11!a%CC  #9=CK"H I I		Is   ) =A<(A<c                   VR8X  d   TpV \         P                  9  d2   \        RV : RRP                  \         P                  4      : R24      h \         P                  V,          V,          V ,          #   \
         dJ    T\         P                  8  d    \         P                  Y^,           Y#4      u # \        RYT3,          4      hi ; i)r   zCouldn't find a mode called z. Known modes: z, .zFCouldn't find a %s mode for %i independent and %i dependent variables.rD   )r   _mode_alias_listr6   join	_mode_mapr4   r<   r@   )aliasr-   r.   r,   s   &&&&r   r@   PlotMode._get_aliased_mode   s    R<F111 %tyy1J1J'KM N N	7%%a(+E22 
	7 8&&&11%QJJ  #9 %*1#5"6 7 7
	7s   $A6 6=C
5C
c           	        V P                   pV P                  4         V P                  V P                  r2V P                   FX  pV\
        P                  9  d    \
        P                  P                  V4       V \
        P                  V,          V,          V&   KZ  	  V P                  '       d   V \
        P                  V,          V&   R# R#   \         d"   p\        RT: R\        T4      : 24      hRp?ii ; i)z
Called once for each user-usable plot mode.
For Cartesian2D, it is invoked after the
class definition: Cartesian2D._register()
zFailed to register plot mode z
. Reason: N)r7   
_init_moder9   r8   aliasesr   rJ   appendrL   
is_defaultrE   	ExceptionRuntimeErrorr;   )r%   namer-   r.   aes   &     r   	_registerPlotMode._register   s     ||	3??COOq [[H555 --44Q7.1""1%a(+ ! ~~~ 47**1-a0	   	3"&Q 2 3 3	3s   BC /C C9C44C9c                <   R pV! V P                   4      V n         V! V P                  4      V n        \        V P                   4      V n        \        V P                  4      V n        V P                  \
        P                  8  d   \        \        RR4      4      hV P                  \
        P                  8  d   \        \        RR4      4      h\        V P                  4      ^ 8  d   V P                  ^ ,          V n        MV P                  V n        V P                  p\        V4      V P                  8w  d   \        R4      h\        V P                  4       F9  p\        W#,          4      ^8w  d   \        R4      h\        R.W#,          O5!  W#&   K;  	  RV n        R# )z
Initializes the plot mode based on
the 'mode-specific parameters' above.
Only intended to be called by
PlotMode._register(). To use a mode without
registering it, you can directly call
ModeSubclass._init_mode().
c                 B    V  Uu. uF  p\        V4      NK  	  up# u upi r   r   )
symbol_strss   & r   symbols_list)PlotMode._init_mode.<locals>.symbols_list   s    '12z!F1Iz222s   TFz9Plot mode must provide a default interval for each i_var.zlength should be equal to 3N)r,   r!   r   r9   r8   r   r<   r6   r=   r>   rQ   primary_aliasr7   r+   ranger   r5   )r%   r_   dir-   s   &   r   rP   PlotMode._init_mode   s;   	3
 "#**-
!#**-
 cjj/cjj/??X000_T59::??X000_UE:;; s{{a #AC #C]]r7coo% @ A As'A 25zQ !>??
 !..BE (  $r   c                H   . pV Fd  pVP                   f   K  VP                   V9   d&   \        R\        VP                   4      ,          4      hVP                  VP                   4       Kf  	  V  F/  pVP                   F  pWR9  g   K  VP                  V4       K  	  K1  	  V# )Nz Multiple intervals given for %s.)vr6   r;   rR   free_symbols)	functionsr+   r,   r-   frW   s   &&    r   r   PlotMode._find_i_vars$  s    
 Ass{  #,03ACC": ; ;MM!##  A^^?MM!$ $ 
 r   c                    V P                    Uu. uF  p\        \        V4      4      NK  	  upV n         \        \	        V4      4       F  pW,          V P                   V&   K  	  R # u upi r   )r,   r   r;   rb   r   )r   r,   r-   s   && r   r"   PlotMode._fill_i_vars=  sK    /3{{;{!vc!f~{;s6{#A#YDKKN $ <s   A&c                   V P                    Uu. uF  p\        V4      NK  	  upV n         . p\        \        V4      4       Fx  pV P                   V,          P	                  W,          4       V P                   V,          P
                  f   KL  VP                  V P                   V,          P
                  4       Kz  	  \        \        V P                   4      4       F  pV P                   V,          P
                  e   K$  V P                   Uu. uF  qDV9  g   K  VNK  	  pp\        V4      ^ 8X  d   \        R4      hV^ ,          V P                   V,          n        VP                  V^ ,          4       K  	  R # u upi u upi )Nzlength should not be equal to 0)	r+   r   rb   r   	fill_fromrf   rR   r,   r6   )r   r+   r-   v_usedrf   us   &&    r   r#   PlotMode._fill_intervalsD  s   37>>B>a,q/>B s9~&ANN1''	5~~a "".dnnQ/112 ' s4>>*+A~~a ""* $?1QQ?q6Q;$%FGG&'dq!#ad# , C @s   E:E?E?c                   R pRp. . rC\        V ^ ,          \        4      '       dv   \        V ^ ,          P                  4       4       F  pVP	                  V4       K  	  VP	                  \
        P                  ! V ^ ,          P                  4       4      4       W43# V  F  p\
        P                  ! V4      pVe?   \        V4      ^ 8X  d   \        V\        V4      ,          4      hVP	                  V4       K[  \        V\        R7      '       d   \        V\        V4      ,          4      h \        V4      pVP	                  V4       K  	  W43#   \         d    \        T\        T4      ,          4      hi ; i)z1PlotInterval %s was given before any function(s).z1Could not interpret %s as a function or interval.)include)r:   r	   listarbitrary_pointrR   r   	try_parseplot_intervalr   r6   r;   r
   r   r4   )	r&   interval_wrong_orderinterpret_errorrh   r+   coordsrW   r-   ri   s	   &        r   r   PlotMode._interpret_argsY  s@   RM!29d1g~..tAw6689  ( :\33DG4I4I4KLM$ ##!  **1-=9~*()=Q)HII!((+"1c22(CF)CDDC#AJ!((+   ## % C(3q6)ABBCs   *E'E4c                    / . r2V  FA  p\        V\        4      '       d   \        V3/ \        V4      B pK0  VP	                  V4       KC  	  \        V3/ VB pW23# r   )r:   r;   dictr   rR   )r&   r'   r)   r(   rW   s   &&   r   r   PlotMode._extract_optionsv  s[    7A!S!! E.A!.DE	q!	 
 -f-	!!r   )r,   r+   N)rD   ) r7   
__module____qualname____firstlineno____doc__r,   r!   r+   rQ   rS   r   rJ   rL   rE   r<   r>   r    staticmethodr   r?   r@   classmethodrY   rP   r5   r   r"   r#   r   r   __static_attributes____classdictcell__)__classdict__s   @r   r   r   
   sE    
" NFFIGJ$ 	Ar1b>	Ar1b>	Ar1b>I 	
2	2	2
 J
< G4 G4R I I  7 7* 3 3> 2$ 2$h   0'$* $ $8 " "r   r   c                    V'       d   RpMRpV '       d   \         P                  RrCM\         P                  RrCRW#V3,          # )zE
Used to format an error message which differs
slightly in 4 places.
PlottingzRegistering plot modesindependent	dependentz3%s with more than %i %s variables is not supported.)r   r<   r>   )is_independentis_plottingrf   nr^   s   &&   r   r=   r=     sD    
 $""M1""K1 $%!9- -r   N)rw   r   plot_objectr   utilr   sympy.core.symbolr   sympy.core.sympifyr   sympy.geometry.entityr	   sympy.utilities.iterablesr
   r   r=    r   r   <module>r      s.    ' # % $ & 0 1u"z u"p-r   