public void Execute(TranformationManager manager, ModulationEditionTool tool, RaycastHit hit) { var target = hit.collider.gameObject; if (target.transform.parent != null && target.transform.parent.name == "Snaps") { return; } if (target.name == "x" || target.name == "y" || target.name == "z" || target.name == "RotationAxis" || target.name == "SingleAxis") { return; } if (_tm.Target != null) { _tm.Target.GetComponent <MeshRenderer> ().material = _pm; } _pm = target.GetComponent <MeshRenderer> ().material; target.GetComponent <MeshRenderer> ().material = _sm; _tm.Target = target; _tm.TargetPosition = target.transform.position; _tm.TargetRotation = target.transform.rotation; _tm.state = TranformationManager.State.SET_TARGET; }
public void RotateMode() { _activeTool.Gizmo.SetActive(false); _activeTool = _rotateTool; _activeTool.TurnOnGizmo.Execute(this, _activeTool, _hit); //if (testing) { PanelInsertItem.SetActive(false); //} }
void SetGizmos() { _moveTool = new MoveTool(); _rotateTool = new RotationTool(); _moveTool.Gizmo = Instantiate(MoveGizmo); _rotateTool.Gizmo = Instantiate(RotateGizmo); _moveTool.Gizmo.SetActive(false); _rotateTool.Gizmo.SetActive(false); _activeTool = _moveTool; _inactiveTool = _rotateTool; }
public void MoveMode() { if (Target != null) { _activeTool.TurnOnGizmo.Undo(_activeTool); } _activeTool = _moveTool; _activeTool.TurnOnGizmo.Execute(this, _activeTool, _hit); //if (testing) { PanelInsertItem.SetActive(false); //} }
public void Execute(TranformationManager manager, ModulationEditionTool tool, RaycastHit hit) { if (hit.transform == null) { return; } var rotationTool = tool as RotationTool; rotationTool.Gizmo.SetActive(true); rotationTool.allAxis.SetActive(true); rotationTool.singleAxis.SetActive(false); rotationTool.Gizmo.transform.position = manager.Target.transform.position; manager.state = TranformationManager.State.SET_TRANSFORMATION; }
// new panel target public void Execute(TranformationManager manager, ModulationEditionTool tool, GameObject newPanel) { if (newPanel.name == "x" || newPanel.name == "y" || newPanel.name == "z" || newPanel.name == "RotationAxis" || newPanel.name == "SingleAxis") { return; } if (_tm.Target != null) { _tm.Target.GetComponent <MeshRenderer> ().material = _pm; } _pm = newPanel.GetComponent <MeshRenderer> ().material; newPanel.GetComponent <MeshRenderer> ().material = _sm; _tm.Target = newPanel; _tm.TargetPosition = newPanel.transform.position; _tm.TargetRotation = newPanel.transform.rotation; _tm.state = TranformationManager.State.SET_TARGET; }
public void Execute(TranformationManager manager, ModulationEditionTool tool, RaycastHit hit) { if (hit.transform == null) { return; } tool.Gizmo.SetActive(true); tool.Gizmo.transform.position = hit.transform.position; manager.state = TranformationManager.State.SET_TRANSFORMATION; var snaps = tool.Gizmo.transform.FindChild("Snaps"); var comp = hit.transform.gameObject.GetComponent <WallPanelInfo> (); var p = hit.transform.position; var p1 = p + comp.height * hit.transform.up; var p2 = p + -comp.width * hit.transform.right; var p3 = p + -comp.width * hit.transform.right + comp.height * hit.transform.up; snaps.FindChild("2").transform.position = p1; snaps.FindChild("3").transform.position = p2; snaps.FindChild("4").transform.position = p3; }
public void Undo(ModulationEditionTool tool) { }
public void Execute(TranformationManager manager, ModulationEditionTool tool, RaycastHit hit) { }
public void Undo(ModulationEditionTool tool) { tool.Gizmo.SetActive(false); }
public void Execute(TranformationManager manager, ModulationEditionTool tool, RaycastHit hit) { _target = manager.Target; Destroy(manager.Target); }