private void ACTsetRotationAxis(object sender, System.Windows.Controls.SelectionChangedEventArgs e) { if (!(e.AddedItems[0] is TextBlock)) { return; } String s = (String)(((TextBlock)(e.AddedItems[0])).Tag); ComboBox cb = (ComboBox)(((TextBlock)(e.AddedItems[0])).Parent); RotateTransform3D rt = (RotateTransform3D)(cb.Tag); AxisAngleRotation3D aar = (AxisAngleRotation3D)(rt.Rotation); switch (s) { case "X": aar.Axis = new Vector3D(1, 0, 0); break; case "Y": aar.Axis = new Vector3D(0, 1, 0); break; case "Z": aar.Axis = new Vector3D(0, 0, 1); break; } RotationAxisDisplay.UpdateLocation(); }
private void ACTsetRotateCenterpoint(object sender, System.Windows.Controls.TextChangedEventArgs e) { TextBox tb = (TextBox)sender; RotateTransform3D rot = (RotateTransform3D)(((TextBox)sender).Tag); Point3D newpt = new Point3D(); try { newpt = Point3D.Parse(tb.Text); rot.CenterX = newpt.X; rot.CenterY = newpt.Y; rot.CenterZ = newpt.Z; } catch (Exception) { return; } RotationAxisDisplay.UpdateLocation(); }
private void ACTtreeviewSelectedItemChanged (object sender, RoutedPropertyChangedEventArgs <object> e) { if (e.NewValue is RotateTransform3D) { RotationAxisDisplay.Start(StuffOnTurntable, (RotateTransform3D)(e.NewValue)); return; } else { RotationAxisDisplay.Stop(StuffOnTurntable); } if (e.NewValue is TRVU_GeometryMesh) { RemoveObjectHighlights(); AddObjectHighlights((e.NewValue as TRVU_GeometryMesh).parent); return; } if (e.NewValue is TRVU_GeometryModel3D) { RemoveObjectHighlights(); AddObjectHighlights((e.NewValue as TRVU_GeometryModel3D)); return; } if ((e.NewValue is BindingList <object>)) { RemoveObjectHighlights(); AddObjectHighlights(e.NewValue as BindingList <object>); return; } e.Handled = true; }