Как выбрать конкретные элементы ячейки в ВТК - PullRequest
0 голосов
/ 01 марта 2019

Для программы, которую я пишу, я хочу иметь возможность выбирать конкретные грани трехмерного объекта.Я могу визуализировать 3D неструктурированные данные с помощью оболочки Python.Чтобы упростить ситуацию, предположим, что у меня есть неструктурированные данные, подобные этим

# vtk DataFile Version 2.0
tiny, Created by Gmsh
ASCII
DATASET UNSTRUCTURED_GRID
POINTS 4 double
0 0 0
1.0 0 0
0 1.0 0
0 0 2.0

CELLS 4 16
3 0 1 2
3 0 1 3
3 0 2 3
3 1 2 3

CELL_TYPES 4  
5 
5
5
5

. Я хочу в интерактивном режиме выбрать одну или несколько граней этого трехмерного объекта и получить координаты лица и лица.Обратите внимание, что 3D-объект будет вращаться, перемещаться.Я не говорю о получении координат щелчка мышью.Я заинтересован в том, чтобы получить «оригинальные» координаты или «точечный идентификатор» лиц, так сказать.Я использую оболочку Python VTK.Хотя есть один пример выбора и изменения свойств (например, цвета), я не смог найти никаких указателей относительно того, как извлечь выбранное лицо (идентификатор лица / идентификатор точки) трехмерного объекта.

Любые указателибыло бы полезно.Благодарю.

1 Ответ

0 голосов
/ 01 марта 2019

Что вы ищете, это vtkCellPicker класс, особенно vtkIdType GetCellId().

Документация: https://vtk.org/doc/nightly/html/classvtkCellPicker.html

См. Этот пример использования: https://lorensen.github.io/VTKExamples/site/Cxx/Picking/CellPicking/

...