Version: 2017.1
public static Vector2 Vector2Field (string label, Vector2 value, params GUILayoutOption[] options);
public static Vector2 Vector2Field (GUIContent label, Vector2 value, params GUILayoutOption[] options);

参数

label 显示在字段上方的标签。
value 要编辑的值。
options An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the style.

返回

Vector2 用户输入的值。

描述

创建用于输入 Vector2 的 X 和 Y 字段。

\ 测量 2 个点之间的距离。

using UnityEditor;
using UnityEngine;

public class EditorGUILayoutVector2Field : UnityEditor.EditorWindow { float distance = 0f; Vector3 p1; Vector3 p2;

[MenuItem("Examples/Measure Distance")] static void Init() { EditorGUILayoutVector2Field window = (EditorGUILayoutVector2Field)EditorWindow.GetWindow(typeof(EditorGUILayoutVector2Field), true, "My Empty Window"); window.Show(); }

void OnGUI() { p1 = EditorGUILayout.Vector2Field("Point 1:", p1); p2 = EditorGUILayout.Vector2Field("Point 2:", p2); EditorGUILayout.LabelField("Distance:", distance.ToString()); if (GUILayout.Button("Close")) this.Close(); }

void OnInspectorUpdate() { distance = Vector2.Distance(p1, p2); this.Repaint(); } }