示例#1
0
 private void DeleteDot()
 {
     if (_pointContainer.selectedPoint != null)
     {
         _pointContainer.RemovePoint(_pointContainer.selectedPoint);
     }
 }
示例#2
0
        private void DrawPoint(int id, PointContainer target)
        {
            EditorGUILayout.BeginVertical("box");
            EditorGUILayout.BeginHorizontal();

            GUI.color = (id == target.activeId) ? Color.green : Color.white;

            if (GUILayout.Button(string.Format("Select Point {0}", id)))
            {
                target.activeId = id;
            }

            GUI.color = Color.white;
            EditorGUILayout.BeginVertical("box");

            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("X");
            target.points[id].LocalPosition.x = EditorGUILayout.FloatField(target.points[id].LocalPosition.x);
            EditorGUILayout.EndHorizontal();

            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Y");
            target.points[id].LocalPosition.y = EditorGUILayout.FloatField(target.points[id].LocalPosition.y);
            EditorGUILayout.EndHorizontal();

            EditorGUILayout.BeginHorizontal();
            GUILayout.Label("Z");
            target.points[id].LocalPosition.z = EditorGUILayout.FloatField(target.points[id].LocalPosition.z);
            EditorGUILayout.EndHorizontal();

            EditorGUILayout.EndVertical();

            if (target.points[id].GetPointInRadius)
            {
                EditorGUILayout.BeginVertical("box");
                GUILayout.Label("Radius");
                target.points[id].Radius = EditorGUILayout.Slider(target.points[id].Radius, .1f, 10f);
                EditorGUILayout.EndVertical();
            }

            if (GUILayout.Button("Snap To Ground"))
            {
                target.SnapToGround(id);
            }

            GUI.color = Color.red;
            if (GUILayout.Button("X"))
            {
                target.RemovePoint(id);
            }

            GUI.color = Color.white;

            EditorGUILayout.EndHorizontal();

            target.points[id].GetPointInRadius = EditorGUILayout.Toggle("Get random point within radius", target.points[id].GetPointInRadius);

            EditorGUILayout.EndVertical();


            SceneView.RepaintAll();
        }