public void SetMultiAxisScaleMode(GizmoMultiAxisScaleMode scaleMode) { if (Gizmo.IsDragged || scaleMode == _multiAxisScaleMode) { return; } _multiAxisScaleMode = scaleMode; if (_multiAxisScaleMode == GizmoMultiAxisScaleMode.DoubleAxis) { _dblSliders.SetVisible(true, true); _midCap.SetVisible(false); } else if (_multiAxisScaleMode == GizmoMultiAxisScaleMode.Uniform) { _dblSliders.SetVisible(false, true); _midCap.SetVisible(true); } }
public void SetVertexSnapEnabled(bool isEnabled) { if (_isVertexSnapEnabled == isEnabled || _is2DModeEnabled || !_isEnabled || Gizmo.IsDragged) { return; } if (isEnabled) { _vertSnapCap.SetVisible(true); _midCap.SetVisible(false); _dblSliders.SetVisible(false, true); } else { _vertSnapCap.SetVisible(false); } _isVertexSnapEnabled = isEnabled; }
public override void OnGizmoUpdateBegin() { if (UseSnapEnableHotkey) { SetSnapEnabled(Hotkeys.EnableSnapping.IsActive()); } _midCap.SetVisible(LookAndFeel3D.IsMidCapVisible); _camXYRotationDrag.Sensitivity = Settings3D.DragSensitivity; _xSlider.SetBorderVisible(LookAndFeel3D.IsAxisVisible(0)); _ySlider.SetBorderVisible(LookAndFeel3D.IsAxisVisible(1)); _zSlider.SetBorderVisible(LookAndFeel3D.IsAxisVisible(2)); _camLookSlider.SetBorderVisible(LookAndFeel3D.IsCamLookSliderVisible); if (_camLookSlider.IsBorderVisible) { UpdateCamLookSlider(Gizmo.FocusCamera); } }
/// <summary> /// Sets the visibility state of the 3D cap. A visible cap will be rendered, and /// it can also be hovered if it is set to be hoverable (see 'Set3DCapHoverable'). /// </summary> public void Set3DCapVisible(bool isVisible) { _cap3D.SetVisible(isVisible); }
public override void OnGizmoUpdateBegin() { if (UseSnapEnableHotkey) { SetSnapEnabled(Hotkeys.EnableSnapping.IsActive()); } if (Use2DModeEnableHotkey) { Set2DModeEnabled(Hotkeys.Enable2DMode.IsActive()); } // Move Update2DGizmoPosition(); if (!_is2DModeEnabled) { bool vSnapWasEnabled = _isMvVertexSnapEnabled; if (!vSnapWasEnabled) { _mvPostVSnapPosRestore = Gizmo.Transform.Position3D; } if (UseVertSnapEnableHotkey) { SetMvVertexSnapEnabled(Hotkeys.EnableVertexSnapping.IsActive()); } if (vSnapWasEnabled && !_isMvVertexSnapEnabled) { Gizmo.Transform.Position3D = _mvPostVSnapPosRestore; } if (!Gizmo.IsDragged || IsDraggingMoveHandle()) { _mvPXSlider.SetVisible(LookAndFeel3D.IsMvPositiveSliderVisible(0)); _mvPXSlider.Set3DCapVisible(LookAndFeel3D.IsMvPositiveSliderCapVisible(0)); _mvPYSlider.SetVisible(LookAndFeel3D.IsMvPositiveSliderVisible(1)); _mvPYSlider.Set3DCapVisible(LookAndFeel3D.IsMvPositiveSliderCapVisible(1)); _mvPZSlider.SetVisible(LookAndFeel3D.IsMvPositiveSliderVisible(2)); _mvPZSlider.Set3DCapVisible(LookAndFeel3D.IsMvPositiveSliderCapVisible(2)); _mvNXSlider.SetVisible(LookAndFeel3D.IsMvNegativeSliderVisible(0)); _mvNXSlider.Set3DCapVisible(LookAndFeel3D.IsMvNegativeSliderCapVisible(0)); _mvNYSlider.SetVisible(LookAndFeel3D.IsMvNegativeSliderVisible(1)); _mvNYSlider.Set3DCapVisible(LookAndFeel3D.IsMvNegativeSliderCapVisible(1)); _mvNZSlider.SetVisible(LookAndFeel3D.IsMvNegativeSliderVisible(2)); _mvNZSlider.Set3DCapVisible(LookAndFeel3D.IsMvNegativeSliderCapVisible(2)); } } if (!_isMvVertexSnapEnabled && !_is2DModeEnabled) { if (!Gizmo.IsDragged || IsDraggingMoveHandle()) { _mvXYSlider.SetVisible(LookAndFeel3D.IsMvDblSliderVisible(PlaneId.XY)); _mvXYSlider.SetBorderVisible(_mvXYSlider.IsVisible); _mvYZSlider.SetVisible(LookAndFeel3D.IsMvDblSliderVisible(PlaneId.YZ)); _mvYZSlider.SetBorderVisible(_mvYZSlider.IsVisible); _mvZXSlider.SetVisible(LookAndFeel3D.IsMvDblSliderVisible(PlaneId.ZX)); _mvZXSlider.SetBorderVisible(_mvZXSlider.IsVisible); PlaceMvDblSlidersInSliderPlanes(Gizmo.FocusCamera); } } else if (_isMvVertexSnapEnabled) { if (GetMvVertexSnapState() == MvVertexSnapState.SelectingPivot && _mvVertexSnapDrag.SelectSnapPivotPoint(Gizmo)) { Gizmo.Transform.Position3D = _mvVertexSnapDrag.SnapPivot; } } else if (_is2DModeEnabled) { if (!Gizmo.IsDragged || IsDraggingMoveHandle()) { _mvP2DModeXSlider.SetVisible(LookAndFeel2D.IsMvPositiveSliderVisible(0)); _mvP2DModeXSlider.Set2DCapVisible(LookAndFeel2D.IsMvPositiveSliderCapVisible(0)); _mvP2DModeYSlider.SetVisible(LookAndFeel2D.IsMvPositiveSliderVisible(1)); _mvP2DModeYSlider.Set2DCapVisible(LookAndFeel2D.IsMvPositiveSliderCapVisible(1)); _mvN2DModeXSlider.SetVisible(LookAndFeel2D.IsMvNegativeSliderVisible(0)); _mvN2DModeXSlider.Set2DCapVisible(LookAndFeel2D.IsMvNegativeSliderCapVisible(0)); _mvN2DModeYSlider.SetVisible(LookAndFeel2D.IsMvNegativeSliderVisible(1)); _mvN2DModeYSlider.Set2DCapVisible(LookAndFeel2D.IsMvNegativeSliderCapVisible(1)); bool wasVisible = _mv2DModeDblSlider.IsVisible; _mv2DModeDblSlider.SetVisible(LookAndFeel2D.IsMvDblSliderVisible); _mv2DModeDblSlider.SetBorderVisible(LookAndFeel2D.IsMvDblSliderVisible); if (!wasVisible && _mv2DModeDblSlider.IsVisible) { Update2DModeHandlePositions(); } } } // Rotate if (!_is2DModeEnabled && !_isMvVertexSnapEnabled) { if (!Gizmo.IsDragged || IsDraggingRotationHandle()) { _rtMidCap.SetVisible(LookAndFeel3D.IsRtMidCapVisible); _rtCamXYRotationDrag.Sensitivity = Settings3D.RtDragSensitivity; _rtXSlider.SetBorderVisible(LookAndFeel3D.IsRtAxisVisible(0)); _rtYSlider.SetBorderVisible(LookAndFeel3D.IsRtAxisVisible(1)); _rtZSlider.SetBorderVisible(LookAndFeel3D.IsRtAxisVisible(2)); _rtCamLookSlider.SetBorderVisible(LookAndFeel3D.IsRtCamLookSliderVisible); if (_rtCamLookSlider.IsBorderVisible) { UpdateRtCamLookSlider(Gizmo.FocusCamera); } } } // Scale _scMidCap.SetVisible(LookAndFeel3D.IsScMidCapVisible && !_is2DModeEnabled); _scUnformScaleDrag.Sensitivity = Settings3D.ScDragSensitivity; }
private void SetScaleHandlesVisible(bool visible) { _scMidCap.SetVisible(visible); }