VTK笔记——空间几何变换(Transform),平移、旋转和缩放
其中注意,在进行旋转和缩放操作时,都需要先将该polydata整体平移回它的中心位置,然后再进行旋转和缩放操作,最后再将其移回到原来的位置处。
vtkSmartPointer<vtkTransform> transform = vtkSmartPointer<vtkTransform>::New();
vtkSmartPointer<vtkPolyData> polyData = vtkSmartPointer<vtkPolyData>::New();
box->GetPolyData(polyData);
Point3D centerPoint(polyData->GetPoints()->GetPoint(14));//最后一个点是中心点,一共15个点;围绕中心轴旋转一个弧度
transform->Translate(centerPoint.x, centerPoint.y, centerPoint.z);//旋转和缩放都是围