It looks like you're new here. If you want to get involved, click one of these buttons!
I'm displaying a mesh object in a WPF Viewport3D, and would like to be able to manipulate the view, using the mouse, in a similar fashion to many programs that display 3D models (e.g. openSCAD, STL viewers, blender, etc.).
I have a Point3D for the cameraPosition, and a Vector3D for the lookDirection.
I had a go at each; zoom's the only one I got working alright, which is simply: cameraPosition = zoomFactor * (cameraPosition - lookedAtPoint) + lookedAtPoint; (I've set lookedAtPoint = cameraPosition - cameraPosition.toVector().length * lookDirection / lookDirection.length)
My results are not like those in real 3D model viewer software. Does anyone know the equations for pan, rotate and zoom normally used?