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.

GUIUtility.ScaleAroundPivot

static function ScaleAroundPivot(scale: Vector2, pivotPoint: Vector2): void;
static void ScaleAroundPivot(Vector2 scale, Vector2 pivotPoint);
static def ScaleAroundPivot(scale as Vector2, pivotPoint as Vector2) as void

Description

Helper function to scale the GUI around a point.

Modifies GUI.matrix to rotate all GUI elements angle degrees around pivotPoint.

See Also: GUI.matrix, RotateAroundPivot.

	// Scale a button by 1.5 times each time is pressed.

private var scale : Vector2 = Vector2(1,1); private var pivotPoint : Vector2;

function OnGUI () { pivotPoint = Vector2(Screen.width/2,Screen.height/2); GUIUtility.ScaleAroundPivot (scale, pivotPoint); if(GUI.Button(Rect(Screen.width/2-25, Screen.height/2-25, 50, 50),"Big!")){ scale += Vector2(0.5,0.5); } }

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    private Vector2 scale = new Vector2(1, 1);
    private Vector2 pivotPoint;
    void OnGUI() {
        pivotPoint = new Vector2(Screen.width / 2, Screen.height / 2);
        GUIUtility.ScaleAroundPivot(scale, pivotPoint);
        if (GUI.Button(new Rect(Screen.width / 2 - 25, Screen.height / 2 - 25, 50, 50), "Big!"))
            scale += new Vector2(0.5F, 0.5F);
        
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	private scale as Vector2 = Vector2(1, 1)

	private pivotPoint as Vector2

	def OnGUI() as void:
		pivotPoint = Vector2((Screen.width / 2), (Screen.height / 2))
		GUIUtility.ScaleAroundPivot(scale, pivotPoint)
		if GUI.Button(Rect(((Screen.width / 2) - 25), ((Screen.height / 2) - 25), 50, 50), 'Big!'):
			scale += Vector2(0.5F, 0.5F)