Ë
    ¯·g5  ã                   ó    — d 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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dlmZ  G d„ d«      Zy)aø  
vtkImageImportFromArray: a NumPy front-end to vtkImageImport

Load a python array into a vtk image.
To use this class, you must have NumPy installed (http://numpy.scipy.org/)

Methods:

  SetArray()  -- set the numpy array to load
  Update()    -- generate the output
  GetOutput() -- get the image as vtkImageData
  GetOutputPort() -- connect to VTK pipeline

Methods from vtkImageImport:
(if you don't set these, sensible defaults will be used)

  SetDataExtent()
  SetDataSpacing()
  SetDataOrigin()
é    )ÚvtkImageImport)ÚVTK_SIGNED_CHAR)ÚVTK_UNSIGNED_CHAR)Ú	VTK_SHORT)ÚVTK_UNSIGNED_SHORT)ÚVTK_INT)ÚVTK_UNSIGNED_INT)ÚVTK_LONG)ÚVTK_UNSIGNED_LONG)Ú	VTK_FLOAT)Ú
VTK_DOUBLEc                   óª   — e Zd Zd„ Zeeeeee	e
ee
edœ
Zededededede	de
dedi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d„ Zy)ÚvtkImageImportFromArrayc                 ó>   — t        «       | _        d| _        d | _        y ©NF)r   Ú _vtkImageImportFromArray__importÚ3_vtkImageImportFromArray__ConvertIntToUnsignedShortÚ_vtkImageImportFromArray__Array©Úselfs    úGlib/python3.12/site-packages/vtkmodules/util/vtkImageImportFromArray.pyÚ__init__z vtkImageImportFromArray.__init__#   s   € Ü&Ó(ˆŒØ+0ˆÔ(Øˆ�ó    )
ÚbÚBÚhÚHÚiÚIÚfÚdÚFÚDé   é   é   é   c                 ó   — || _         y ©N©r   )r   Úyesnos     r   ÚSetConvertIntToUnsignedShortz4vtkImageImportFromArray.SetConvertIntToUnsignedShort@   ó
   € Ø+0ˆÕ(r   c                 ó   — | j                   S r)   r*   r   s    r   ÚGetConvertIntToUnsignedShortz4vtkImageImportFromArray.GetConvertIntToUnsignedShortC   s   € Ø×/Ñ/Ð/r   c                 ó   — d| _         y )NTr*   r   s    r   ÚConvertIntToUnsignedShortOnz3vtkImageImportFromArray.ConvertIntToUnsignedShortOnF   s
   € Ø+/ˆÕ(r   c                 ó   — d| _         y r   r*   r   s    r   ÚConvertIntToUnsignedShortOffz4vtkImageImportFromArray.ConvertIntToUnsignedShortOffI   r-   r   c                 ó8   — | j                   j                  «        y r)   )r   ÚUpdater   s    r   r5   zvtkImageImportFromArray.UpdateL   s   € Ø�‰×ÑÕr   c                 ó6   — | j                   j                  «       S r)   )r   ÚGetOutputPortr   s    r   r7   z%vtkImageImportFromArray.GetOutputPortP   ó   € Ø�}‰}×*Ñ*Ó,Ð,r   c                 ó6   — | j                   j                  «       S r)   )r   Ú	GetOutputr   s    r   r:   z!vtkImageImportFromArray.GetOutputT   s   € Ø�}‰}×&Ñ&Ó(Ð(r   c           
      ó  — || _         d}|j                  }t        |«      dk(  rd}nRt        |«      dk(  r	dd|d   f}n;t        |«      dk(  rd|d   |d   f}n!t        |«      dk(  r|d   }|d   |d   |d   f}|j                  j                  }| j
                  |   }d}|dk(  s|dk(  r|dz  }d}| j                  r|d	k(  r|j                  d
«      }t        }t        |j                  «      | j                  |   z  |z  }| j                  j                  ||«       | j                  j                  |«       | j                  j                  |«       | j                  j                  «       }| j                  j!                  |d   |d   |d   z   dz
  |d   |d   |d   z   dz
  |d   |d   |d   z   dz
  «       | j                  j#                  |d   |d   |d   z   dz
  |d   |d   |d   z   dz
  |d   |d   |d   z   dz
  «       y )Nr$   r   )r$   r$   r$   r%   r&   é   r"   r#   r   r   )r   ÚshapeÚlenÚdtypeÚcharÚ"_vtkImageImportFromArray__typeDictr   Úastyper   ÚflatÚ"_vtkImageImportFromArray__sizeDictr   ÚCopyImportVoidPointerÚSetDataScalarTypeÚSetNumberOfScalarComponentsÚGetDataExtentÚSetDataExtentÚSetWholeExtent)	r   ÚimArrayÚnumComponentsÚdimÚtypecodeÚar_typeÚcomplexComponentsÚsizeÚextents	            r   ÚSetArrayz vtkImageImportFromArray.SetArrayX   s"  € ØˆŒØˆØ�m‰mˆÜˆs‹8�qŠ=Ø‰CÜ�‹X˜Š]Ø�a˜˜Q™�.‰CÜ�‹X˜Š]Ø�c˜!‘f˜c !™fÐ%‰CÜ�‹X˜Š]Ø ™FˆMØ�q‘6˜#˜a™&  Q¡Ð(ˆCà—=‘=×%Ñ%ˆà—/‘/ (Ñ+ˆàÐØ˜ŠO˜x¨3šØ)¨AÑ-ˆMØ !Ðà×,Ò,°¸S²Ø—n‘n SÓ)ˆGÜ(ˆGä�7—<‘<Ó  §¡°Ñ!9Ñ9Ð:KÑKˆØ�‰×+Ñ+¨G°TÔ:Ø�‰×'Ñ'¨Ô0Ø�‰×1Ñ1°-Ô@Ø—‘×,Ñ,Ó.ˆØ�‰×#Ñ# F¨1¡I¨f°Q©i¸¸A¹Ñ.>¸qÑ.@Ø$*¨1¡I¨f°Q©i¸¸A¹Ñ.>¸qÑ.@Ø$*¨1¡I¨f°Q©i¸¸A¹Ñ.>¸qÑ.@ô	Bð 	�‰×$Ñ$ V¨A¡Y¨v°a©y¸¸Q¹Ñ/?ÀÑ/AØ%+¨A¡Y¨v°a©y¸¸Q¹Ñ/?ÀÑ/AØ%+¨A¡Y¨v°a©y¸¸Q¹Ñ/?ÀÑ/Aõ	Cr   c                 ó   — | j                   S r)   )r   r   s    r   ÚGetArrayz vtkImageImportFromArray.GetArray   s   € Ø�|‰|Ðr   c                 ó:   — | j                   j                  |«       y r)   )r   rI   )r   rR   s     r   rI   z%vtkImageImportFromArray.SetDataExtent„   ó   € Ø�‰×#Ñ# FÕ+r   c                 ó6   — | j                   j                  «       S r)   )r   rH   r   s    r   rH   z%vtkImageImportFromArray.GetDataExtent‡   r8   r   c                 ó:   — | j                   j                  |«       y r)   )r   ÚSetDataSpacing)r   Úspacings     r   rZ   z&vtkImageImportFromArray.SetDataSpacingŠ   s   € Ø�‰×$Ñ$ WÕ-r   c                 ó6   — | j                   j                  «       S r)   )r   ÚGetDataSpacingr   s    r   r]   z&vtkImageImportFromArray.GetDataSpacing�   s   € Ø�}‰}×+Ñ+Ó-Ð-r   c                 ó:   — | j                   j                  |«       y r)   )r   ÚSetDataOrigin)r   Úorigins     r   r_   z%vtkImageImportFromArray.SetDataOrigin�   rW   r   c                 ó6   — | j                   j                  «       S r)   )r   ÚGetDataOriginr   s    r   rb   z%vtkImageImportFromArray.GetDataOrigin“   r8   r   N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r	   r   r   rA   rD   r,   r/   r1   r3   r5   r7   r:   rS   rU   rI   rH   rZ   r]   r_   rb   © r   r   r   r   "   s¬   „ òð &Ø'ØØ(ØØ&ØØ ØØ ñ
€Jð # 1Ø$ QØ˜QØ% aØ˜1Ø# AØ˜QØ˜að"€Jò1ò0ò0ò1òò-ò)ò%CòNò
,ò-ò.ò.ò,ó-r   r   N)Ú__doc__Úvtkmodules.vtkIOImager   Úvtkmodules.vtkCommonCorer   r   r   r   r   r	   r
   r   r   r   r   rf   r   r   Ú<module>rj      s9   ðñõ* 1Ý 4Ý 6Ý .Ý 7Ý ,Ý 5Ý -Ý 6Ý .Ý /÷r-ò r-r   