Version: 5.3 (switch to 5.4b)
ЯзыкEnglish
  • C#
  • JS

Язык программирования

Выберите подходящий для вас язык программирования. Все примеры кода будут представлены на выбранном языке.

EditorGUILayout.Vector3Field

Предложить изменения

Успех!

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Закрыть

Ошибка внесения изменений

По определённым причинам предложенный вами перевод не может быть принят. Пожалуйста <a>попробуйте снова</a> через пару минут. И выражаем вам свою благодарность за то, что вы уделяете время, чтобы улучшить документацию по Unity.

Закрыть

Отменить

Руководство
public static function Vector3Field(label: string, value: Vector3, params options: GUILayoutOption[]): Vector3;
public static Vector3 Vector3Field(string label, Vector3 value, params GUILayoutOption[] options);
public static function Vector3Field(label: GUIContent, value: Vector3, params options: GUILayoutOption[]): Vector3;
public static Vector3 Vector3Field(GUIContent label, Vector3 value, params GUILayoutOption[] options);

Параметры

label Label to display above the field.
value @param value Значение для редактирования.
options @param options Настраиваемый список настроек слоя, который определяет дополнительные свойства слоя. Любые значения, переданные здесь, будут переопределять настройки, определенный стилем. See Also: GUILayout.Width, GUILayout.Height, GUILayout.MinWidth, GUILayout.MaxWidth, GUILayout.MinHeight, GUILayout.MaxHeight, GUILayout.ExpandWidth, GUILayout.ExpandHeight.

Возврат значений

Vector3 Значение, введенное пользователем.

Описание

Make an X, Y & Z field for entering a Vector3.


Measure the distance between 2 GameObjects or 2 positions in 3D space.

	// Simple Script that measures the distance between 2 GameObjects
	// or measure the distance between 2 positions in 3D space
	
	class EditorGUILayoutVector3Field extends EditorWindow {
		
		var distance : float = 0;
		var obj1 : Vector3;
		var obj2 : Vector3;
	
		@MenuItem("Examples/Measure Distance between 2 objects")
		static function Init() {
			var window = GetWindow(EditorGUILayoutVector3Field);
			window.Show();
		}
		function OnGUI() {
			GUILayout.Label("Select an object in the Hierarchy view and click 'Capture Position'");
			EditorGUILayout.BeginHorizontal();
				obj1 = EditorGUILayout.Vector3Field("GameObject 1:", obj1);
				if(GUILayout.Button("Capture Position"))
					obj1 = Selection.activeTransform.position;
			EditorGUILayout.EndHorizontal();
			
			EditorGUILayout.BeginHorizontal();
				obj2 = EditorGUILayout.Vector3Field("GameObject 2:", obj2);
				if(GUILayout.Button("Capture Position"))
					obj2 = Selection.activeTransform.position;
			EditorGUILayout.EndHorizontal();
			EditorGUILayout.LabelField("Distance:", distance.ToString());
			if(GUILayout.Button("Close"))
				this.Close();		
		}
		function OnInspectorUpdate() {
			distance = Vector3.Distance(obj1,obj2);
			this.Repaint();
		}
	}