In VTK-Datasets (dh Klassen, die vtkDataSet erben, das ist die einfachste Art von Daten, die eine Vorstellung von Punkten bietet), sind Punkte einfach Orte in Raum. Daten können an Orten im Raum oder an Zellen (z. B. Dreiecken oder Tetraedern) gespeichert werden, die einen Ort von Punkten darstellen. Werte, die in Zellen gespeichert sind, nehmen an jedem Punkt im Zellen-Locus den gleichen Wert an.
Zellen werden durch ihre Eckpunkte definiert. In vtkPolyData wird jede Zelle durch eine Liste von Ganzzahl-Offsets in die Punktkoordinaten in einer vtkPoints-Instanz definiert.
Ein Vertex in VTK ist eine Zelle, deren Punktlokus ein einzelner Punkt ist.
Es ist möglich, Punkte in einem VTK-Dataset explizit anzugeben, die keine Referenz für eine Zelle sind (z. B. können Sie Punktkoordinaten in einem vtkPoints-Objekt angeben, die nicht als Eckpunkte für Tetraeder, Dreieck oder Scheitelpunkt verwendet werden) Zelle). Diese Punkte können nur Punktdaten enthalten (die von Arrays in einer vtkPointData-Instanz gespeichert werden, die von vtkDataSet gehalten wird) und nicht von Zellendaten (die von Arrays in einer vtkCellData-Instanz gespeichert werden, die von vtkDataSet gehalten wird).
So können Sie mit SetPoints()
Punktkoordinaten angeben, auf die sich vtkCellArray-Instanzen dann beziehen, um Punktloci verschiedener Formen zu definieren. Eine Kategorie von Formen ist Vertices (daher SetVerts()
), während andere Linien und Polylinien (SetLines()
) und Dreiecke/Quads (SetPolys()
) enthalten.