
    ni                     P   S SK Jr  S SKrS SKrS SKrS SKJr  S SKrS SKr	S SK
r
S SKr\R                  " \	R                  S9r\R!                  \R"                  " 5       5        \R%                  \R&                  * S-  S S /5      r\R+                  S/ SQ\SS	9r\R/                  \S
SS9  \R1                  \R2                  S5        \R5                  S SS 5        \R7                  SS9  \R8                  " 5       r\R"                  " 5       S-   r\R?                  \5        Sr Sr!\RD                  " \\\ \!5      r#Sr$\RK                  \ 5        \R7                  SS9  \RM                  SS SS 5      r'S r(Sr)Sr*\#RW                  5         S r, \R[                  5       r.\(" \.S5      (       a  \)(       + r)\(" \.S5      (       a  Sr*\)(       d  \*(       a  Sr*\/" S5       H  r0\#Rc                  \,5        \#Re                  \#Rf                  5        \#Rh                  r5\#Re                  \#Rf                  5      r6\#Ro                  5       r8/ SQr9Sr:\:(       a#  \#Rw                  \6S\9S9r<\#R{                  \<5        O\#R}                  \6\9S9  \R                  5         \,S-  r,M     \R                  " S5        GM!  )    )bullet_clientN)humanoid_stable_pd)connection_modeg      ?zplane_implicit.urdf)r   r   r   T)useMaximalCoordinatesg?)	linkIndexlateralFriction   g#
   )numSolverIterationsz%/data/motions/humanoid3d_backflip.txtgO贁N[?F   )numSubStepstimec                 b    [        U5      nX ;   a  U [        U5         [        R                  -  $ g)NF)ordpybullet_clientKEY_WAS_TRIGGERED)keyskeyos      c/home/james-whalen/.local/lib/python3.13/site-packages/pybullet_envs/deep_mimic/env/testHumanoid.pyisKeyTriggeredr   )   s,    	#h!YC>O====	     b)+r   r   r   r   r   r   r      r   r   r   2   r   r   r   r   r   r   r      Z   r   r   r   d   r    r    r    <   r   r   r   r   r   r   r   r   r   r    r    r    r    r!   )desiredVelocities	maxForces)r#   )Apybullet_utilsr   r   mathmotion_capture_datapybullet_envs.deep_mimic.envr   pybullet_datapybulletp1humanoid_pose_interpolatornumpynpBulletClientGUIr   setAdditionalSearchPathgetDataPathgetQuaternionFromEulerpiz2yloadURDFplaneIdchangeDynamicsconfigureDebugVisualizerCOV_ENABLE_Y_AXIS_UP
setGravitysetPhysicsEngineParameterMotionCaptureData	mocapData
motionPathLoadtimeStepuseFixedBaseHumanoidStablePDhumanoidisInitializedsetTimeStepaddUserDebugParametertimeIdr   	animating
singleStep	resetPosetgetKeyboardEventsr   rangei
setSimTimecomputePose_frameFraction_poseInterpolatorposedesiredPosegetStatesr#   usePythonStablePDcomputePDForcestausapplyPDForcescomputeAndApplyPDForcesstepSimulationsleep r   r   <module>r_      s   (    ;   ! ,,RVVD  ' '(A(A(C D,,twwhna-CD

"
"#8)#&9= # ?   w"c  J  ( ()M)Mq Q   1dA &  ) )b ) A113	&&(+RR
 	z ..	8Uab   H %  ) )a ) 8		.	.vq"a	@ 	
    		*	*	,$D#ID#J*J 1X !8223''d (()@)@Ak 


ai  	''tW`'at$((y(I$$&9naC F **Ye 	r   