/// <summary> /// Initializes a new instance of the <see cref="CombinedManipulator" /> class. /// </summary> public CombinedManipulator() { this.translateXManipulator = new TranslateManipulator { Direction = new Vector3D(1, 0, 0), Color = Colors.Red }; this.translateYManipulator = new TranslateManipulator { Direction = new Vector3D(0, 1, 0), Color = Colors.Green }; this.translateZManipulator = new TranslateManipulator { Direction = new Vector3D(0, 0, 1), Color = Colors.Blue }; this.rotateXManipulator = new RotateManipulator { Axis = new Vector3D(1, 0, 0), Color = Colors.Red }; this.rotateYManipulator = new RotateManipulator { Axis = new Vector3D(0, 1, 0), Color = Colors.Green }; this.rotateZManipulator = new RotateManipulator { Axis = new Vector3D(0, 0, 1), Color = Colors.Blue }; BindingOperations.SetBinding(this, TransformProperty, new Binding("TargetTransform") { Source = this }); BindingOperations.SetBinding( this.translateXManipulator, Manipulator.TargetTransformProperty, new Binding("TargetTransform") { Source = this }); BindingOperations.SetBinding( this.translateYManipulator, Manipulator.TargetTransformProperty, new Binding("TargetTransform") { Source = this }); BindingOperations.SetBinding( this.translateZManipulator, Manipulator.TargetTransformProperty, new Binding("TargetTransform") { Source = this }); BindingOperations.SetBinding( this.rotateXManipulator, RotateManipulator.DiameterProperty, new Binding("Diameter") { Source = this }); BindingOperations.SetBinding( this.rotateYManipulator, RotateManipulator.DiameterProperty, new Binding("Diameter") { Source = this }); BindingOperations.SetBinding( this.rotateZManipulator, RotateManipulator.DiameterProperty, new Binding("Diameter") { Source = this }); BindingOperations.SetBinding( this.rotateXManipulator, Manipulator.TargetTransformProperty, new Binding("TargetTransform") { Source = this }); BindingOperations.SetBinding( this.rotateYManipulator, Manipulator.TargetTransformProperty, new Binding("TargetTransform") { Source = this }); BindingOperations.SetBinding( this.rotateZManipulator, Manipulator.TargetTransformProperty, new Binding("TargetTransform") { Source = this }); this.UpdateChildren(); }