Ë
    Jÿiñ  ã                  óð  — U d Z ddlmZ ddlmZmZ ddlmZ ddlmZ  G d„ de«      Z	eee	df   e
ee	df   ee	df   f   f   Zd	ed
<   eee	df   e
ee	df   ee	df   ee	df   f   f   Zd	ed<    G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d „ d!e«      Z G d"„ d#e«      Z G d$„ d%e«      Z G d&„ d'e«      Z G d(„ d)e«      Z G d*„ d+e«      Z G d,„ d-e«      Z G d.„ d/e«      Z G d0„ d1e«      Z  G d2„ d3e«      Z! G d4„ d5e«      Z" G d6„ d7e«      Z# G d8„ d9e«      Z$ G d:„ d;e«      Z%y)<aÙ  
build123d ENUMs

name: build_enums.py
by:   Gumyr
date: Oct 11th 2022

desc:
    A collection of enums used throughout build123d.

license:

    Copyright 2022 Gumyr

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

é    )Úannotations)ÚEnumÚauto)ÚUnion)Ú	TypeAliasc                  óD   — e Zd ZdZ e«       Z e«       Z e«       ZdZd„ Z	y)ÚAlignúAlign object about AxisNc                óP   — d| j                   j                  › d| j                  › d�S ©NÚ<Ú.Ú>©Ú	__class__Ú__name__Úname©Úselfs    úf/workspace/moltex-experiments/.pixi/envs/default/lib/python3.12/site-packages/build123d/build_enums.pyÚ__repr__zAlign.__repr__-   ó&   € Ø�4—>‘>×*Ñ*Ð+¨1¨T¯Y©Y¨K°qÐ9Ð9ó    )
r   Ú
__module__Ú__qualname__Ú__doc__r   ÚMINÚCENTERÚMAXÚNONEr   © r   r   r	   r	   %   s$   „ Ù!á
‹&€CÙ‹V€FÙ
‹&€CØ€Dó:r   r	   Nr   ÚAlign2DTypeÚAlign3DTypec                  ó@   — e Zd ZdZ e«       Z e«       Z e«       Zd„ Zy)ÚApproxOptionz(DXF export spline approximation strategyc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zApproxOption.__repr__C   r   r   N)	r   r   r   r   r   ÚARCr    ÚSPLINEr   r!   r   r   r%   r%   <   s   „ Ù2á
‹&€CÙ‹6€DÙ‹V€Fó:r   r%   c                  ó2   — e Zd ZdZ e«       Z e«       Zd„ Zy)ÚAngularDirectionzAngular rotation directionc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zAngularDirection.__repr__M   r   r   N)r   r   r   r   r   Ú	CLOCKWISEÚCOUNTER_CLOCKWISEr   r!   r   r   r*   r*   G   s   „ Ù$á“€IÙ›Ðó:r   r*   c                  ó@   — e Zd ZdZ e«       Z e«       Z e«       Zd„ Zy)ÚCenterOfzCenter Optionsc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zCenterOf.__repr__X   r   r   N)	r   r   r   r   r   ÚGEOMETRYÚMASSÚBOUNDING_BOXr   r!   r   r   r/   r/   Q   s   „ Ùá‹v€HÙ‹6€DÙ“6€Ló:r   r/   c                  ó¾   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Z e«       Z	 e«       Z
 e«       Z e«       Z e«       Z e«       Z e«       Z e«       Zd„ Zy)Ú	Extrinsicz*Order to apply extrinsic rotations by axisc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zExtrinsic.__repr__m   r   r   N©r   r   r   r   r   ÚXYZÚXZYÚYZXÚYXZÚZXYÚZYXÚXYXÚXZXÚYZYÚYXYÚZXZÚZYZr   r!   r   r   r5   r5   \   ó^   „ Ù4á
‹&€CÙ
‹&€CÙ
‹&€CÙ
‹&€CÙ
‹&€CÙ
‹&€Cá
‹&€CÙ
‹&€CÙ
‹&€CÙ
‹&€CÙ
‹&€CÙ
‹&€Có:r   r5   c                  ó2   — e Zd ZdZ e«       Z e«       Zd„ Zy)ÚFrameMethodzMoving frame calculation methodc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zFrameMethod.__repr__w   r   r   N)r   r   r   r   r   ÚFRENETÚ	CORRECTEDr   r!   r   r   rF   rF   q   s   „ Ù)á‹V€FÙ“€Ió:r   rF   c                  óö   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Z e«       Z	 e«       Z
 e«       Z e«       Z e«       Z e«       Z e«       Z e«       Z e«       Z e«       Z e«       Z e«       Zd„ Zy)ÚGeomTypezCAD geometry object typec                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zGeomType.__repr__�   r   r   N)r   r   r   r   r   ÚPLANEÚCYLINDERÚCONEÚSPHEREÚTORUSÚBEZIERÚBSPLINEÚ
REVOLUTIONÚ	EXTRUSIONÚOFFSETÚLINEÚCIRCLEÚELLIPSEÚ	HYPERBOLAÚPARABOLAÚOTHERr   r!   r   r   rK   rK   {   sz   „ Ù"á‹F€EÙ‹v€HÙ‹6€DÙ‹V€FÙ‹F€EÙ‹V€FÙ‹f€GÙ“€JÙ“€IÙ‹V€FÙ‹6€DÙ‹V€FÙ‹f€GÙ“€IÙ‹v€HÙ‹F€Eó:r   rK   c                  ó@   — e Zd ZdZ e«       Z e«       Z e«       Zd„ Zy)ÚHeadTypezArrow head typesc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zHeadType.__repr__š   r   r   N)	r   r   r   r   r   ÚSTRAIGHTÚCURVEDÚFILLETEDr   r!   r   r   r^   r^   “   s   „ Ùá‹v€HÙ‹V€FÙ‹v€Hó:r   r^   c                  ó¾   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Z e«       Z	 e«       Z
 e«       Z e«       Z e«       Z e«       Z e«       Z e«       Zd„ Zy)Ú	Intrinsicz*Order to apply intrinsic rotations by axisc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zIntrinsic.__repr__¯   r   r   Nr7   r!   r   r   rd   rd   ž   rD   r   rd   c                  ój   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Z e«       Z	 e«       Z
d„ Zy)ÚKeepzSplit optionsc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zKeep.__repr__½   r   r   N)r   r   r   r   r   ÚALLÚBOTTOMÚBOTHÚINSIDEÚOUTSIDEÚTOPr   r!   r   r   rg   rg   ³   s4   „ Ùá
‹&€CÙ‹V€FÙ‹6€DÙ‹V€FÙ‹f€GÙ
‹&€Có:r   rg   c                  ó@   — e Zd ZdZ e«       Z e«       Z e«       Zd„ Zy)ÚKindzOffset corner transitionc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zKind.__repr__È   r   r   N)	r   r   r   r   r   r'   ÚINTERSECTIONÚTANGENTr   r!   r   r   rp   rp   Á   s   „ Ù"á
‹&€CÙ“6€LÙ‹f€Gó:r   rp   c                  ó\   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Z e«       Z	d„ Z
y)ÚModezCombination Modec                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zMode.__repr__Õ   r   r   N)r   r   r   r   r   ÚADDÚSUBTRACTÚ	INTERSECTÚREPLACEÚPRIVATEr   r!   r   r   ru   ru   Ì   s-   „ Ùá
‹&€CÙ‹v€HÙ“€IÙ‹f€GÙ‹f€Gó:r   ru   c                  ó@   — e Zd ZdZ e«       Z e«       Z e«       Zd„ Zy)Ú	FontStylezText Font Stylesc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zFontStyle.__repr__à   r   r   N)	r   r   r   r   r   ÚREGULARÚBOLDÚITALICr   r!   r   r   r}   r}   Ù   s   „ Ùá‹f€GÙ‹6€DÙ‹V€Fó:r   r}   c                  ó@   — e Zd ZdZ e«       Z e«       Z e«       Zd„ Zy)Ú
LengthModez+Method of specifying length along PolarLinec                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zLengthMode.__repr__ë   r   r   N)	r   r   r   r   r   ÚDIAGONALÚ
HORIZONTALÚVERTICALr   r!   r   r   rƒ   rƒ   ä   s   „ Ù5á‹v€HÙ“€JÙ‹v€Hó:r   rƒ   c                  óN   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Zd„ Z	y)ÚMeshTypez(3MF mesh types typically for 3D printingc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zMeshType.__repr__÷   r   r   N)
r   r   r   r   r   r\   ÚMODELÚSUPPORTÚSOLIDSUPPORTr   r!   r   r   r‰   r‰   ï   s&   „ Ù2á‹F€EÙ‹F€EÙ‹f€GÙ“6€Ló:r   r‰   c                  ó2   — e Zd ZdZ e«       Z e«       Zd„ Zy)ÚNumberDisplayzMethods for displaying numbersc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zNumberDisplay.__repr__  r   r   N)r   r   r   r   r   ÚDECIMALÚFRACTIONr   r!   r   r   r�   r�   û   s   „ Ù(á‹f€GÙ‹v€Hó:r   r�   c                  óÚ   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Z e«       Z	 e«       Z
 e«       Z e«       Z e«       Z e«       Z e«       Z e«       Z e«       Z e«       Zd„ Zy)ÚPageSizer
   c                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zPageSize.__repr__  r   r   N)r   r   r   r   r   ÚA0ÚA1ÚA2ÚA3ÚA4ÚA5ÚA6ÚA7ÚA8ÚA9ÚA10ÚLETTERÚLEGALÚLEDGERr   r!   r   r   r”   r”     sl   „ Ù!á	‹€BÙ	‹€BÙ	‹€BÙ	‹€BÙ	‹€BÙ	‹€BÙ	‹€BÙ	‹€BÙ	‹€BÙ	‹€BÙ
‹&€CÙ‹V€FÙ‹F€EÙ‹V€Fó:r   r”   c                  ó2   — e Zd ZdZ e«       Z e«       Zd„ Zy)ÚPositionModezPosition along curve modec                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zPositionMode.__repr__!  r   r   N)r   r   r   r   r   ÚLENGTHÚ	PARAMETERr   r!   r   r   r¥   r¥     s   „ Ù#á‹V€FÙ“€Ió:r   r¥   c                  ó&   — e Zd ZdZdZdZdZdZd„ Zy)ÚPrecisionModeaá  
    When you export a model to a STEP file, the precision of the geometric data
    (such as the coordinates of points, the definitions of curves and surfaces, etc.)
    can significantly impact the file size and the fidelity of the model when it is
    imported into another CAD system. Higher precision means that the geometric
    data is described with more detail, which can improve the accuracy of the model
    in the target system but can also increase the file size.
    é   é   r   éÿÿÿÿc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zPrecisionMode.__repr__4  r   r   N)	r   r   r   r   ÚSESSIONÚGREATESTÚAVERAGEÚLEASTr   r!   r   r   rª   rª   %  s"   „ ñð €GØ€HØ€GØ€Eó:r   rª   c                  ó@   — e Zd ZdZ e«       Z e«       Z e«       Zd„ Zy)ÚSelectz3Selector scope - all, last operation or new objectsc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zSelect.__repr__?  r   r   N)	r   r   r   r   r   ri   ÚLASTÚNEWr   r!   r   r   r´   r´   8  s   „ Ù=á
‹&€CÙ‹6€DÙ
‹&€Có:r   r´   c                  ó@   — e Zd ZdZ e«       Z e«       Z e«       Zd„ Zy)ÚSidez2D Offset typesc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zSide.__repr__J  r   r   N)	r   r   r   r   r   ÚLEFTÚRIGHTrk   r   r!   r   r   r¹   r¹   C  s   „ Ùá‹6€DÙ‹F€EÙ‹6€Dó:r   r¹   c                  ó\   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Z e«       Z	d„ Z
y)ÚSortByzSorting criteriac                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zSortBy.__repr__W  r   r   N)r   r   r   r   r   r§   ÚRADIUSÚAREAÚVOLUMEÚDISTANCEr   r!   r   r   r¾   r¾   N  s-   „ Ùá‹V€FÙ‹V€FÙ‹6€DÙ‹V€FÙ‹v€Hó:r   r¾   c                  ó@   — e Zd ZdZ e«       Z e«       Z e«       Zd„ Zy)Ú
Transitionz#Sweep discontinuity handling optionc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zTransition.__repr__b  r   r   N)	r   r   r   r   r   r¼   ÚROUNDÚTRANSFORMEDr   r!   r   r   rÅ   rÅ   [  s   „ Ù-á‹F€EÙ‹F€EÙ“&€Kó:r   rÅ   c                  ój   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Z e«       Z	 e«       Z
d„ Zy)ÚUnitzStandard Unitsc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zUnit.__repr__p  r   r   N)r   r   r   r   r   ÚMCÚMMÚCMÚMÚINÚFTr   r!   r   r   rÊ   rÊ   f  s4   „ Ùá	‹€BÙ	‹€BÙ	‹€BÙ‹€AÙ	‹€BÙ	‹€Bó:r   rÊ   c                  óN   — e Zd ZdZ e«       Z e«       Z e«       Z e«       Zd„ Z	y)ÚUntilzExtrude limitc                óP   — d| j                   j                  › d| j                  › d�S r   r   r   s    r   r   zUntil.__repr__|  r   r   N)
r   r   r   r   r   ÚNEXTr¶   ÚPREVIOUSÚFIRSTr   r!   r   r   rÓ   rÓ   t  s&   „ Ùá‹6€DÙ‹6€DÙ‹v€HÙ‹F€Eó:r   rÓ   )&r   Ú
__future__r   Úenumr   r   Útypingr   r   r	   Útupler"   Ú__annotations__r#   r%   r*   r/   r5   rF   rK   r^   rd   rg   rp   ru   r}   rƒ   r‰   r�   r”   r¥   rª   r´   r¹   r¾   rÅ   rÊ   rÓ   r!   r   r   Ú<module>rÝ      sÖ  ðòõ8 #ç Ý å ô	:ˆDô 	:ð Ø	ˆ%�ˆ+ÑØ	ˆ%��t�Ñ
˜e E¨4 KÑ0Ð
0Ñ1ð3ñ€ˆYó ð
 Ø	ˆ%�ˆ+ÑØ	ˆ%��t�Ñ
˜e E¨4 KÑ0°%¸¸t¸Ñ2DÐ
DÑEðGñ€ˆYó ô:�4ô :ô:�tô :ô:ˆtô :ô:�ô :ô*:�$ô :ô:ˆtô :ô0:ˆtô :ô:�ô :ô*:ˆ4ô :ô:ˆ4ô :ô
:ˆ4ô 
:ô:�ô :ô:�ô :ô	:ˆtô 	:ô:�Dô :ô:ˆtô :ô,:�4ô :ô:�Dô :ô&:ˆTô :ô:ˆ4ô :ô
:ˆTô 
:ô:�ô :ô:ˆ4ô :ô	:ˆDõ 	:r   