VTK tiene un extenso número de métodos para el procesamiento de imágenes y renderización de volúmenes. Los datos de imágenes 2D y 3D vienen dados por la clase vtkImageData. En un dataset de imagen los datos son ordenados en un vector regular alineado con los ejes. Mapas de bits y mapas de píxeles son ejemplos de
datasets de imágenes 2D, y volúmenes (pilas de imágenes 2D) lo son de datasets de imágenes 3D.
datasets de imágenes 2D, y volúmenes (pilas de imágenes 2D) lo son de datasets de imágenes 3D.
Los process objects en un pipeline de imagen siempre tienen como entradas y salidas data objects de imagen. Debido a la naturaleza regular y simple de los datos, el pipeline de imagen tiene otros rasgos importantes. La renderización de volumen se usa para visualizar objetos 3D de la clase vtkImageData, y visores especiales de imágenes se usan para ver objetos 2D. La mayoría de los process objets en el pipeline de imagen están multiensamblados y son capaces de hacer fluir los datos por partes (para hacer un uso satisfactorio del límite de memoria). Los filtros automáticamente detectan el número disponible de procesos en el sistema y crean el mismo número de uniones durante la ejecución; igualmente, separan automáticamente los datos en partes que fluyen a través del pipeline.
Creación de una aplicación
Crear aplicaciones gráficas con VTK es un proceso que consta de dos partes básicas:
Crear aplicaciones gráficas con VTK es un proceso que consta de dos partes básicas:
- Primero, es necesario construir un pipeline de datos para procesar los datos
- Segundo, hay que crear los objetos gráficos necesarios para interpretar esos datos
Construir un pipeline quiere decir conectar fuentes (crear datos), filtros (procesar datos) y mappers (transformar datos en gráficos). Están disponible muchos tipos distintos de fuentes, filtros y mappers, dependiendo del tipo de datos que se estén procesando y de la funcionalidad deseada.
Para crear objetos gráficos los pasos típicos pueden ser:
- Crear una ventada de renderización para trabajar en ella.
- Crear un render.
- Crear un interactor (que permite interactuar con los datos).
- Crear uno o más actores (cada uno de los cuales es unido a un mapper).
- Renderizar.
Además, los objetos pueden ser transformados, pueden cambiarse sus propiedades materiales y/o pueden crearse luces, cámaras, mapas de textura, tablas de consulta y otros objetos gráficos.