cart: empty [ Login ]

How to reset the view transforms

1 
FH
9/11/2015 8:23 PM
Following along with one of the OpenGL examples I have a small viewer that displays my model and allows rotation/pan etc. Now I want to implement a "Reset View" function so user can reset everything back to the original view when opening ( ie after they've rotated,zoomed and panned into oblivion). I do it as follows: public void ViewReset() { _modelbounds.Reset(); BoundsCalculator boundsCalculator = new BoundsCalculator(_modelbounds); boundsCalculator.GetBounds(_model, Matrix4D.Identity); // the following reset triggers event to CalculateModelViewAndProjection transformationProvider.ResetTransforms(_modelbounds); } It almost works - rotation and positioning are restored. The remaining issue is that the "zoom" factor is not restored. The transformProvider.worldtransform is reset but the canonicalprojection is different than after initialization ( ie before any manipulation ). It seems to maintain the current zoom factor. Is there a better/recommended way to do this? Thanks
FH
9/15/2015 8:27 PM
Issue resolved: Need to set transformProvider.ViewScaling back to 1.0 before resetting transforms.
1