Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

EditorGUI.BoundsField

static function BoundsField(position: Rect, value: Bounds): Bounds;
static Bounds BoundsField(Rect position, Bounds value);
static def BoundsField(position as Rect, value as Bounds) as Bounds
static function BoundsField(position: Rect, label: GUIContent, value: Bounds): Bounds;
static Bounds BoundsField(Rect position, GUIContent label, Bounds value);
static def BoundsField(position as Rect, label as GUIContent, value as Bounds) as Bounds

Parameters

positionRectangle on the screen to use for the field.
labelOptional label to display above the field.
valueThe value to edit.

Returns

Bounds The value entered by the user.

Description

Make Center & Extents field for entering a Bounds.


Bounds field in an Editor Window.

	// Simple script that shows radius of bounds of selected MeshFilter

class EditorGUILayoutBoundsField extends EditorWindow {

var radius : float = 0; var bounds : Bounds;

@MenuItem("Examples/Show Radius of mesh bounds") static function Init() { var window = GetWindow(EditorGUILayoutBoundsField); window.Show(); } function OnGUI() { GUILayout.Label("Select a mesh in the Hierarchy view and click 'Capture Bounds'"); EditorGUILayout.BeginHorizontal(); bounds = EditorGUILayout.BoundsField("Mesh bounds:", bounds); if(GUILayout.Button("Capture Bounds") && Selection.activeTransform) { var meshFilter : MeshFilter = Selection.activeTransform.GetComponentInChildren(MeshFilter); if (meshFilter) bounds = meshFilter.sharedMesh.bounds; } EditorGUILayout.EndHorizontal(); EditorGUILayout.LabelField("Radius:", bounds.size.magnitude.ToString()); if(GUILayout.Button("Close")) this.Close(); } }