コード例 #1
0
        private RotationAxis GetRotationAxis(ViewAxis axis, Matrix3D viewMatrix)
        {
            switch (axis)
            {
            case ViewAxis.XAxis:
                return(new RotationAxis
                {
                    Axis = viewMatrix.Row1,
                    LinearLabel = "X",
                    RotaryLabel = "A"
                });

            case ViewAxis.YAxis:
                return(new RotationAxis
                {
                    Axis = viewMatrix.Row2,
                    LinearLabel = "Y",
                    RotaryLabel = "B"
                });

            case ViewAxis.ZAxis:
                return(new RotationAxis
                {
                    Axis = viewMatrix.Row3,
                    LinearLabel = "Z",
                    RotaryLabel = "C"
                });

            default:
                return(new RotationAxis());
            }
        }
コード例 #2
0
 getViewPortSize(ViewAxis ViewAxis_)
 {
     if (getTeamViewAsix() == ViewAxis.X)
     {
         if (ViewAxis_ == ViewAxis.X)
         {
             return(getTeamViewPortSize() * 0.5f);
         }
         else
         {
             return(getAgentViewPortSize());
         }
     }
     else
     {
         if (ViewAxis_ == ViewAxis.X)
         {
             return(getAgentViewPortSize() * 0.5f);
         }
         else
         {
             return(getTeamViewPortSize());
         }
     }
 }
コード例 #3
0
 protected virtual void DestroyAxisViews()
 {
     if (_viewAxis == null)
     {
         return;
     }
     if (_viewAxis != null)
     {
         DestroyImmediate(_viewAxis.gameObject);
     }
     _viewAxis = null;
 }
コード例 #4
0
        public void CreateRotatedViews(MCView view, ViewAxis selectedAxis, int number, double angle, DistanceType distanceType, string viewNameTemplate, bool useExistingWorkOffset)
        {
            var rotationAxis = GetRotationAxis(selectedAxis, view.ViewMatrix);

            if (distanceType == DistanceType.TotalSweep)
            {
                angle /= number;
                RotateView(view, rotationAxis, number, angle, viewNameTemplate, useExistingWorkOffset);
            }
            else
            {
                RotateView(view, rotationAxis, number, angle, viewNameTemplate, useExistingWorkOffset);
            }
        }
コード例 #5
0
 public virtual void SetupInitialAxisViews()
 {
     DestroyAxisViews();
     // Generic X Axis
     _viewAxis = Instantiate(_viewAxisPrefab, transform, false);
     _viewAxis.AxisPresenter = _axisPresenter;
     if (vertical)
     {
         _viewAxis.transform.localRotation = Quaternion.Euler(0, 0, 90);
         _viewAxis.Swapped = true;
     }
     if (categorical)
     {
         _viewAxis.RebuildAxis(_axisPresenter.GenerateFromDiscreteRange(0, presenter.dataDimensions[0].Count));
     }
     else
     {
         _viewAxis.RebuildAxis(_axisPresenter.GenerateFromMinMaxValue(0, ((FloatDataDimension)presenter.dataDimensions[1]).Max()));
     }
 }