
    uki%                     	   d Z ddlmZmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 ddlmZ dZd	Zd
ZdZdZdZdZdZdZdZdZdZdZdZe
j6                  e
j8                  e
j:                  e
j<                  e
j>                  e
j@                  fZ!e
jD                  e
jF                  e
jH                  fZ%e
jL                  e
jN                  e
jP                  fZ)e
jT                  e
jV                  e
jX                  fZ-e
j\                  e
j^                  e
j`                  fZ1e
jd                  e
jf                  e
jh                  fZ5e! eeee      e% eeee      e) eeee      e- eeee      e1 eeee      e5 eeee      iZ6ejn                   eee      ejp                   eee      ejr                   eee      ejt                   eee      ejv                   eee      ejx                   eee      iZ=dZ>dZ?ej                   eee?      ej                   eee?      ej                   eee?      ej                   eee?      ej                   eee?      ej                   eee?      iZFej                   eee?      ej                   eee?      ej                   eee?      ej                   eee?      ej                   eee?      ej                   eee?      ej                   eee?      iZHdZI eJej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  g      Z[ eJej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  g      Zldeemef   fdZndeeememf   ef   fdZo	 d"demdeeememf   ef   fdZpdefdZqdeeememf   ef   fdZrdeemef   fd Zsy!)#z"MediaPipe solution drawing styles.    )MappingTuple)face_mesh_connections)hands_connections)DrawingSpec)HandLandmark)PoseLandmark   )0   r      )r   r   r   )   e      )r      r   )   r   r   )r   @   r   )      r   )   r   r   )r   r   r   )r   r   r         )color	thicknesscircle_radiusr   r      returnc                  Z    i } t         j                         D ]  \  }}|D ]  }|| |<   	  | S )zReturns the default hand landmarks drawing style.

  Returns:
      A mapping from each hand landmark to its default drawing spec.
  )_HAND_LANDMARK_STYLEitems)hand_landmark_stylekvlandmarks       d/home/cdr/jupyterlab/.venv/lib/python3.12/site-packages/mediapipe/python/solutions/drawing_styles.py get_default_hand_landmarks_styler'      sH     "((* (da (&'(#(( 
    c                  Z    i } t         j                         D ]  \  }}|D ]  }|| |<   	  | S )zReturns the default hand connections drawing style.

  Returns:
      A mapping from each hand connection to its default drawing spec.
  )_HAND_CONNECTION_STYLEr!   )hand_connection_styler#   r$   
connections       r&   "get_default_hand_connections_styler-      sH     $**, ,da ,
*+J',, 
r(   ic                 t    | dk(  rt         nt        }i }|j                         D ]  \  }}|D ]  }|||<   	  |S )zReturns the default face mesh contours drawing style.

  Args:
      i: The id for default style. Currently there are two default styles.

  Returns:
      A mapping from each face mesh contours connection to its default drawing
      spec.
  r   )%_FACEMESH_CONTOURS_CONNECTION_STYLE_1#_FACEMESH_CONTOURS_CONNECTION_STYLEr!   )r.   default_style#face_mesh_contours_connection_styler#   r$   r,   s         r&   $get_default_face_mesh_contours_styler4      s^     
a ,. 
 )+%!!# :da :
89)*5:: 
-,r(   c                  ,    t        t        t              S )z\Returns the default face mesh tesselation drawing style.

  Returns:
      A DrawingSpec.
  r   )r   _GRAY_THICKNESS_TESSELATION r(   r&   'get_default_face_mesh_tesselation_styler9      s     
5,B	CCr(   c                      i } t        t        t              }t        j                  D ]  }|| |<   	 t        t
        t              }t        j                  D ]  }|| |<   	 | S )zReturns the default face mesh iris connections drawing style.

  Returns:
       A mapping from each iris connection to its default drawing spec.
  r   )r   _GREEN_THICKNESS_CONTOURSr   FACEMESH_LEFT_IRIS_REDFACEMESH_RIGHT_IRIS) face_mesh_iris_connections_style	left_specr,   
right_specs       r&   ,get_default_face_mesh_iris_connections_stylerC      sj     &("2EF))<< =j3<$Z0=1DE*)== >j3=$Z0>	))r(   c                      i } t        dt              }t        dt              }t        D ]  }|| |<   	 t        D ]  }|| |<   	 t        t        t              | t
        j                  <   | S )zReturns the default pose landmarks drawing style.

  Returns:
      A mapping from each pose landmark to its default drawing spec.
  )r      r   r   )      r   )r   _THICKNESS_POSE_LANDMARKS_POSE_LANDMARKS_LEFT_POSE_LANDMARKS_RIGHT_WHITEr	   NOSE)pose_landmark_stylerA   rB   r%   s       r&    get_default_pose_landmarks_stylerN      s     %>@)%>@*& .h$-!.' /h$.!/+67,9l''(	r(   N)r   )t__doc__typingr   r   mediapipe.python.solutionsr   r   (mediapipe.python.solutions.drawing_utilsr    mediapipe.python.solutions.handsr   mediapipe.python.solutions.poser	   _RADIUSr>   r;   _BLUE_YELLOWr6   _PURPLE_PEACHrK   _CYAN_MAGENTA_THICKNESS_WRIST_MCP_THICKNESS_FINGER_THICKNESS_DOTWRIST	THUMB_CMCINDEX_FINGER_MCPMIDDLE_FINGER_MCPRING_FINGER_MCP	PINKY_MCP_PALM_LANDMARKS	THUMB_MCPTHUMB_IP	THUMB_TIP_THUMP_LANDMARKSINDEX_FINGER_PIPINDEX_FINGER_DIPINDEX_FINGER_TIP_INDEX_FINGER_LANDMARKSMIDDLE_FINGER_PIPMIDDLE_FINGER_DIPMIDDLE_FINGER_TIP_MIDDLE_FINGER_LANDMARKSRING_FINGER_PIPRING_FINGER_DIPRING_FINGER_TIP_RING_FINGER_LANDMARKS	PINKY_PIP	PINKY_DIP	PINKY_TIP_PINKY_FINGER_LANDMARKSr    HAND_PALM_CONNECTIONSHAND_THUMB_CONNECTIONSHAND_INDEX_FINGER_CONNECTIONSHAND_MIDDLE_FINGER_CONNECTIONSHAND_RING_FINGER_CONNECTIONSHAND_PINKY_FINGER_CONNECTIONSr*   r7   r<   FACEMESH_LIPSFACEMESH_LEFT_EYEFACEMESH_LEFT_EYEBROWFACEMESH_RIGHT_EYEFACEMESH_RIGHT_EYEBROWFACEMESH_FACE_OVALr1   FACEMESH_NOSEr0   rH   	frozensetLEFT_EYE_INNERLEFT_EYELEFT_EYE_OUTERLEFT_EAR
MOUTH_LEFTLEFT_SHOULDER
LEFT_ELBOW
LEFT_WRIST
LEFT_PINKY
LEFT_INDEX
LEFT_THUMBLEFT_HIP	LEFT_KNEE
LEFT_ANKLE	LEFT_HEELLEFT_FOOT_INDEXrI   RIGHT_EYE_INNER	RIGHT_EYERIGHT_EYE_OUTER	RIGHT_EARMOUTH_RIGHTRIGHT_SHOULDERRIGHT_ELBOWRIGHT_WRISTRIGHT_PINKYRIGHT_INDEXRIGHT_THUMB	RIGHT_HIP
RIGHT_KNEERIGHT_ANKLE
RIGHT_HEELRIGHT_FOOT_INDEXrJ   intr'   r-   r4   r9   rC   rN   r8   r(   r&   <module>r      sW   ) ! < 8 @ 9 8
	

		     %%|'='=0011<3O3O))+ !**L,A,A **, '88'88'88:  )::(::(::<  '66&66&668  (11<3I3I'113  .	IN'	K^7	L^7	LN'	K>	J# . ++%+?@,,&,=>33'->?44'->?22&,=>33%+<=     ''&,?@++&,?@//&,?@,,$*=>00$*=>,,&,?@' #  ''%+>?++%+>?//&,?@,,(.AB00$*=>,,&,?@'''-@A) %$   !6!6!6!68O8O 7 7\44l6M6M\22L4J4J\33  "   "  ,"8"8  ,"8"8l99l66l66l44l6M6Ml55!!	# 	 
'#{2B*C 
U38_k)* -
-U38_k)*-0D D*U38_k)**"'#{2B*C r(   