public Color[] GetModeColors(EditToolMode mode) { Color[] mode_colors = new Color[2]; if (mode == EditToolMode.SELECT) { mode_colors[0] = _SelectColor; mode_colors[1] = _SelectRimColor; } if (mode == EditToolMode.DESELECT) { mode_colors[0] = _DeselectColor; mode_colors[1] = _DeselectRimColor; } if (mode == EditToolMode.DELETE) { mode_colors[0] = _DeleteColor; mode_colors[1] = _DeleteRimColor; } if (mode == EditToolMode.NONE) { mode_colors[0] = _InactiveColor; mode_colors[1] = _InactiveColor; } return(mode_colors); }
private void EditToolTogleModeButtonPress(SteamVR_Action_Boolean fromAction, SteamVR_Input_Sources fromSource, bool newState) { EditToolMode mode = _EditTool.GetAction(); EditToolMode new_mode = EditToolMode.NONE; if (mode == EditToolMode.NONE) { new_mode = EditToolMode.SELECT; } if (mode == EditToolMode.SELECT) { new_mode = EditToolMode.DESELECT; } if (mode == EditToolMode.DESELECT) { new_mode = EditToolMode.DELETE; } if (mode == EditToolMode.DELETE) { new_mode = EditToolMode.NONE; } EditToolSetMode(new_mode); }
public void EditToolSetMode(EditToolMode mode) { _EditTool.SetMode(mode); Material material = new Material(_EditTool.GetMaterial()); MenuButtonLeftMaterialSet(material); }
public void UpdateMaterialColors() { EditToolMode editToolMode = _point_cloud_manager.GetEditToolMode(); Color[] actionColors = GetModeColors(editToolMode); _Material.SetColor("_ColorTint", actionColors[0]); _Material.SetColor("_RimColor", actionColors[1]); }
private void SelectionStart(RaycastHit hit) { editToolMode = EditToolMode.Selecting; // Start Selection selectionFaceNormalA = new Vector3(Mathf.Round(hit.normal.x), Mathf.Round(hit.normal.y), Mathf.Round(hit.normal.z)); selectionBlockPosA = hit.point + (hit.normal * 0.5f); selectionBlockPosA = new Vector3(Mathf.Round(selectionBlockPosA.x), Mathf.Round(selectionBlockPosA.y), Mathf.Round(selectionBlockPosA.z)); selectionFacePosA = selectionBlockPosA - (selectionFaceNormalA * 0.5f); Debug.Log("Block World Pos: " + selectionBlockPosA); }
private void EditToolSetAction(EditToolMode action) { if (_ViveCtrl.EditToolGetAction() != action) { _ViveCtrl.EditToolSetMode(action); } else { _ViveCtrl.EditToolSetMode(EditToolMode.NONE); } MenuUpdate(); }
public void SetMode(EditToolMode mode) { _mode = mode; Color[] mode_colors = GetModeColors(_mode); _Material.SetColor("_ColorTint", mode_colors[0]); _Material.SetColor("_RimColor", mode_colors[1]); _Material.SetFloat("_RimPower", 6); // Update shader to current EditToolMode _point_cloud_manager.EditToolSetMode(mode); }
private void ManipulationStart(RaycastHit hit) { editToolMode = EditToolMode.Manipulating; manipulationBlockDirectional = Directional.Unspecified; manipulationPointStart = hit.point; manipulationSelectionPosInitial = selectionPos; manipulationSelectionPosCurrent = manipulationSelectionPosInitial; // Adjust Manipulator Planes manipulatorPlaneX.transform.position = hit.point; manipulatorPlaneY.transform.position = hit.point; manipulatorPlaneZ.transform.position = hit.point; if (selectionType == SelectionType.Face) { if (selectionFaceNormalA.x != 0) { manipulatorPlaneX.gameObject.SetActive(false); manipulatorPlaneY.gameObject.SetActive(true); manipulatorPlaneZ.gameObject.SetActive(true); } else if (selectionFaceNormalA.y != 0) { manipulatorPlaneX.gameObject.SetActive(true); manipulatorPlaneY.gameObject.SetActive(false); manipulatorPlaneZ.gameObject.SetActive(true); } else if (selectionFaceNormalA.z != 0) { manipulatorPlaneX.gameObject.SetActive(true); manipulatorPlaneY.gameObject.SetActive(true); manipulatorPlaneZ.gameObject.SetActive(false); } } else { manipulatorPlaneX.gameObject.SetActive(true); manipulatorPlaneY.gameObject.SetActive(true); manipulatorPlaneZ.gameObject.SetActive(true); } }
void ChangeEditTool(EditToolMode newMode) { //対象のツール画像にアクティブを移動 switch (newMode) { case EditToolMode.Hand: toolSelectImage.anchoredPosition = toolHandImage.anchoredPosition; break; case EditToolMode.Pen: toolSelectImage.anchoredPosition = toolPenImage.anchoredPosition; break; case EditToolMode.FillRect: toolSelectImage.anchoredPosition = toolFillRectImage.anchoredPosition; break; default: break; } //ハンドツール時はクリックでスクロールができる bool canScroll = newMode == EditToolMode.Hand; viewScroll.horizontal = canScroll; viewScroll.vertical = canScroll; foreach (var item in generateViewImage) { item.gameObject.GetComponent <EventTrigger>().enabled = !canScroll; } //モードを変更 currentTool = newMode; }
void addButton_Click(object sender, RoutedEventArgs e) { ToolMode = EditToolMode.Add; }
void selectButton_Click(object sender, RoutedEventArgs e) { ToolMode = EditToolMode.Select; }
void handButton_Click(object sender, RoutedEventArgs e) { ToolMode = EditToolMode.Hand; }