位置以外に、パンを使用するとthree.jsパースペクティブカメラで何が変わりますか? または、どのようにVTKと同期できますか。回転とズームは、VTK three.js パースペクティブ カメラ パラメータに与えるだけで同期します。Python での Pan のコードは次のとおりです。
def pan(self, start_x, start_y, dx, dy):
'''
Moving the model.
'''
end_x = start_x + dx
end_y = start_y + dy
dx = dx * self.world_coords_to_pixel_ratio
dy = dy * self.world_coords_to_pixel_ratio
matrix = self.renderer.GetActiveCamera().GetViewTransformMatrix()
inverted_matrix = vtkMatrix4x4()
dz = 0
matrix.Invert(matrix, inverted_matrix)
x, y, z = self.src_actor.GetPosition()
dx, dy, dz = self._multiply_vtkMatrix4x4_by_vector(inverted_matrix,
[dx, -dy, 0])
camera = self.renderer.GetActiveCamera()
self.src_actor.SetPosition(x + dx, y + dy, z + dz)
self.selection_actor.SetPosition(x + dx, y + dy, z + dz)
self.axes_and_bounding_box_actor.SetBounds(self.src_actor.GetBounds())
self.renderer.ResetCameraClippingRange()
three.js で私は TrackballControls を使用します