UnityEditor.CollisionModuleUI.DrawSolidPlane C# (CSharp) Method

DrawSolidPlane() private method

private DrawSolidPlane ( Vector3 pos, Quaternion rot, int planeIndex ) : void
pos Vector3
rot UnityEngine.Quaternion
planeIndex int
return void
        private void DrawSolidPlane(Vector3 pos, Quaternion rot, int planeIndex)
        {
        }

Usage Example

Exemplo n.º 1
0
 private void CollisionPlanesSceneGUI()
 {
     if (this.m_ScenePlanes.Count != 0)
     {
         Event current = Event.current;
         Color color   = Handles.color;
         Color color2  = new Color(1f, 1f, 1f, 0.5f);
         for (int i = 0; i < this.m_ScenePlanes.Count; i++)
         {
             if (!(this.m_ScenePlanes[i] == null))
             {
                 Transform  transform = this.m_ScenePlanes[i];
                 Vector3    position  = transform.position;
                 Quaternion rotation  = transform.rotation;
                 Vector3    axis      = rotation * Vector3.right;
                 Vector3    normal    = rotation * Vector3.up;
                 Vector3    axis2     = rotation * Vector3.forward;
                 bool       flag      = EditorApplication.isPlaying && transform.gameObject.isStatic;
                 if (this.editingPlanes)
                 {
                     if (object.ReferenceEquals(CollisionModuleUI.s_SelectedTransform, transform))
                     {
                         EditorGUI.BeginChangeCheck();
                         Vector3    position2 = transform.position;
                         Quaternion rotation2 = transform.rotation;
                         using (new EditorGUI.DisabledScope(flag))
                         {
                             if (flag)
                             {
                                 Handles.ShowStaticLabel(position);
                             }
                             if (EditMode.editMode == EditMode.SceneViewEditMode.ParticleSystemCollisionModulePlanesMove)
                             {
                                 position2 = Handles.PositionHandle(position, rotation);
                             }
                             else if (EditMode.editMode == EditMode.SceneViewEditMode.ParticleSystemCollisionModulePlanesRotate)
                             {
                                 rotation2 = Handles.RotationHandle(rotation, position);
                             }
                         }
                         if (EditorGUI.EndChangeCheck())
                         {
                             Undo.RecordObject(transform, "Modified Collision Plane Transform");
                             transform.position = position2;
                             transform.rotation = rotation2;
                             ParticleSystemEditorUtils.PerformCompleteResimulation();
                         }
                     }
                     else
                     {
                         float     num       = HandleUtility.GetHandleSize(position) * 0.6f;
                         EventType eventType = current.type;
                         if (current.type == EventType.Ignore && current.rawType == EventType.MouseUp)
                         {
                             eventType = current.rawType;
                         }
                         Vector3    arg_1F3_0 = position;
                         Quaternion arg_1F3_1 = Quaternion.identity;
                         float      arg_1F3_2 = num;
                         Vector3    arg_1F3_3 = Vector3.zero;
                         if (CollisionModuleUI.< > f__mg$cache0 == null)
                         {
                             CollisionModuleUI.< > f__mg$cache0 = new Handles.CapFunction(Handles.RectangleHandleCap);
                         }
                         Handles.FreeMoveHandle(arg_1F3_0, arg_1F3_1, arg_1F3_2, arg_1F3_3, CollisionModuleUI.< > f__mg$cache0);
                         if (eventType == EventType.MouseDown && current.type == EventType.Used)
                         {
                             CollisionModuleUI.s_SelectedTransform = transform;
                             GUIUtility.hotControl = 0;
                         }
                     }
                 }
                 Handles.color = color2;
                 Color color3 = Handles.s_ColliderHandleColor * 0.9f;
                 if (flag)
                 {
                     color3.a *= 0.2f;
                 }
                 if (CollisionModuleUI.m_PlaneVisualizationType == CollisionModuleUI.PlaneVizType.Grid)
                 {
                     CollisionModuleUI.DrawGrid(position, axis, axis2, normal, color3);
                 }
                 else
                 {
                     CollisionModuleUI.DrawSolidPlane(position, rotation, color3, Color.yellow);
                 }
             }
         }
         Handles.color = color;
     }
 }