Some basic concepts about graphics. The main contents come from the VTK text book.

During the programing for rendering sth, it is easy to get confused if we lack the knoledge about the meaning of the terms used by computer graphics, such as actor, scence, mapper, canvas, views. etc.

This sentences shows the relationship between the graphics and visulization “Computer graphics is the foundation of data visualization. Practically speaking, visualization is the process that transforms data into a set of graphics primitives.”

This paragraph describes clearly about the relationship between different concepts:

Actors represent graphical data or objects, lights illuminate the actors, and the camera constructs a picture by projecting the actors onto a view plane. We call the combination of lights, camera, and actors the scene, and refer to the rendering process as rendering the scene.

light source and actors are easy to understand. When considering how to project the 3d scene into the 2d plane, we need the concepts of cameras. The position of th camera can be described clearly based on figure used in the VTK text book, and we do not describe details here.

The Figure 3-24 shows how different concepts can work together.

Concrete example in VTK rendering process, such as the exmaple in 3.10 of the vtk text boook

The operation before the mapper belongs to the data pipeline, the output of the data pipeline is set to the mapper, which map the data into the graphics operation, the operation after the mapper belongs to the graphics pipeline. The actor contains the mapper. The vtkRenderer object handles the actor, light and camera. The vtkRenderWindow object can contains multiple renderers. Then the renderWindowInteractor help to process the interactive operations such as handling the mouse and the keyboard events. It can transfer these events from user to the graphics primitives such as change the view of the camera.

Concrete example in VTK-m rendering process.

a view is a unit that collects all the structure needed to perform the rendering. The scene contains a actor(same with vtk). Canvas is a unit that represent the image space that is the target of the rendering. Mappers are similar with the vtk.