public void UpdateManipulation(Ray rayInObject, Matrix gizmoToParent) { DragUpdate(rayInObject, gizmoToParent); foreach (var pair in RelavantGizmoParameters) { GizmoParameter parameter = pair.Value; UpdateManipulationCommand(parameter.Input, parameter.Value); } _updateValueGroupMacroCommand.Do(); }
public void StartManimpulation() { _commandsForInputs = new Dictionary <OperatorPart, ICommand>(); _parameterValuesBeforeDrag = new Dictionary <GizmoParameterIds, float>(); var commandList = new List <ICommand>(); foreach (var pair in RelavantGizmoParameters) { GizmoParameter parameter = pair.Value; _parameterValuesBeforeDrag[pair.Key] = parameter.Value; commandList.Add(BuildManipulationCommand(parameter.Input, parameter.Value)); } _updateValueGroupMacroCommand = new MacroCommand("Update Transform Gizmo", commandList); _updateValueGroupMacroCommand.Do(); }