Pan in Three.js和VTK

时间:2012-08-10 17:17:26

标签: python web-applications three.js vtk

当我使用平底锅时,除了位置之外,three.js透视相机有什么变化?或者我如何与VTK同步。旋转和缩放我同步只给VTK three.js透视相机参数。这里有一些Pan in python的代码:

 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

0 个答案:

没有答案