private void Viewport_MouseDown(object sender, MouseButtonEventArgs e) { if (e.ChangedButton == MouseButton.Middle && e.ButtonState == MouseButtonState.Pressed) { Viewport.CaptureMouse(); start = e.GetPosition(this); startAngleX = XRotation.Angle; startAngleY = YRotation.Angle; } }
private void Viewport_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { // capture the mouse to keep grabing MouseMove events if the user drags the // mouse outside of the _viewport bounds if (!Viewport.IsMouseCaptured) { Viewport.CaptureMouse(); } // update the target position var viewportPos = e.GetPosition(Viewport); TargetPosX = ViewportToLogicalX(viewportPos.X); TargetPosY = ViewportToLogicalY(viewportPos.Y); }
private void Viewport_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { Viewport.CaptureMouse(); start = e.GetPosition(this); diffOffset.X = Translation.OffsetX; diffOffset.Y = Translation.OffsetY; Point mouseposition = e.GetPosition(Viewport); Point3D testpoint3D = new Point3D(mouseposition.X, mouseposition.Y, 0); Vector3D testdirection = new Vector3D(mouseposition.X, mouseposition.Y, 10); PointHitTestParameters pointparams = new PointHitTestParameters(mouseposition); RayHitTestParameters rayparams = new RayHitTestParameters(testpoint3D, testdirection); hitGeo = null; VisualTreeHelper.HitTest(Viewport, null, HTResult, pointparams); }