ó
    ÀMóiú	  ã                   óD   • S r SSKrSSKJrJr  SSKJr  SSKJ	r	  S r
S rg)	zr
objects.py
--------------

Deal with objects which hold visual properties, like
ColorVisuals and TextureVisuals.
é    Né   )ÚColorVisualsÚcolor_to_uv)Úpack)ÚTextureVisualsc                  ó   • [        S0 U D6$ )a  
Create Visuals object from keyword arguments.

Parameters
-----------
face_colors : (n, 3|4) uint8
  Face colors
vertex_colors : (n, 3|4) uint8
  Vertex colors
mesh : trimesh.Trimesh
  Mesh object

Returns
----------
visuals : ColorVisuals
  Visual object created from arguments
© )r   )Úkwargss    Úp/var/www/eduai.edurigo.com/storigo/production/storigo_env/lib/python3.13/site-packages/trimesh/visual/objects.pyÚcreate_visualr      s   € ô$ Ñ!˜&Ñ!Ð!ó    c                 óÞ  • [        U5      S:”  a  [        R                  " X5      n O[        R                  " U 5      n [	        S U  5       5      (       aö  / n/ nU  HØ  nUR
                  S:X  aŽ  UR                  UR                  5        UR                  cI  UR                  [        R                  " [        UR                  R                  5      S45      S-   5        M„  UR                  UR                  5        M¡  [        UR                  S9u  pVUR                  U5        UR                  U5        MÚ     [        X#S9u  px[        XxS	9$ [        S
 U  5       S5      n	U	S:X  a9  [        R                   " U  Vs/ s H  oDR"                  PM     sn5      n
[%        U
S9$ U	S:X  a9  [        R                   " U  Vs/ s H  oDR                  PM     sn5      n
[%        U
S9$ [%        5       $ s  snf s  snf )zé
Concatenate multiple visual objects.

Parameters
----------
visuals : ColorVisuals or list
  Visuals to concatenate
*args :  ColorVisuals or list
  More visuals to concatenate

Returns
----------
concat : Visuals
  If all are color
r   c              3   ó>   #   • U  H  oR                   S :H  v •  M     g7f)ÚtextureN©Úkind©Ú.0Úvs     r   Ú	<genexpr>Úconcatenate.<locals>.<genexpr><   s   é € Ð
0ª 16‰6YÖªùs   ‚r   Né   g      à?)Úvertex_colors)Ú	materialsÚuvs)ÚmaterialÚuvc              3   óV   #   • U  H  oR                   c  M  UR                   v •  M!     g 7f)Nr   r   s     r   r   r   T   s   é € Ð?¢˜A¯F©F“—–¢ùs   ‚)–)Úface)Úface_colorsÚvertex)ÚlenÚnpÚappendÚarrayÚanyr   r   r   ÚzerosÚmeshÚverticesr   r   r   r   ÚnextÚvstackr    r   )ÚvisualsÚargsÚmatsr   r   Ú	color_matÚcolor_uvÚnew_matÚnew_uvr   Úcolorss              r   Úconcatenater4   %   s‚  € ô" ˆ4ƒy1ƒ}Ü—)’)˜GÓ*‰ä—(’(˜7Ó#ˆô Ñ
0©Ó
0×0Ñ0àˆØˆÛˆAØv‰v˜Ó"Ø—‘˜AŸJ™JÔ'Ø—4‘4‘<à—J‘JœrŸxšx¬¨Q¯V©V¯_©_Ó)=¸qÐ(AÓBÀSÑHÖIð —J‘J˜qŸt™tÖ$ô '2ÀÇÁÑ&PÑ#	Ø—‘˜IÔ&Ø—
‘
˜8Ö$ñ ô  ¨Ñ7‰ˆÜ wÑ:Ð:ô Ñ?¡Ó?ÀÓF€DØˆvƒ~Ü—’±7Ó;²7¨aŸMœM±7Ñ;Ó<ˆÜ¨Ñ/Ð/Ø	Ó	Ü—’±WÓ=²W°ŸOœO±WÑ=Ó>ˆÜ¨&Ñ1Ð1ä‹>Ðùò <ùò >s   Å7G%Æ6G*)Ú__doc__Únumpyr#   Úcolorr   r   r   r   r   r   r   r4   r	   r   r   Ú<module>r8      s"   ðñó ç ,Ý Ý #ò"ó*7r   