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.RotateAroundPivot

static function RotateAroundPivot(angle: float, pivotPoint: Vector2): void;
static void RotateAroundPivot(float angle, Vector2 pivotPoint);
static def RotateAroundPivot(angle as float, pivotPoint as Vector2) as void

Description

Helper function to rotate the GUI around a point.

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

See Also: GUI.matrix, ScaleAroundPivot.

	// Rotate a button 10 degrees clockwise when presed.

private var rotAngle : float = 0; private var pivotPoint : Vector2;

function OnGUI () { pivotPoint = Vector2(Screen.width/2,Screen.height/2); GUIUtility.RotateAroundPivot (rotAngle, pivotPoint); if(GUI.Button(Rect(Screen.width/2-25, Screen.height/2-25, 50, 50),"Rotate")) rotAngle += 10; }

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    private float rotAngle = 0;
    private Vector2 pivotPoint;
    void OnGUI() {
        pivotPoint = new Vector2(Screen.width / 2, Screen.height / 2);
        GUIUtility.RotateAroundPivot(rotAngle, pivotPoint);
        if (GUI.Button(new Rect(Screen.width / 2 - 25, Screen.height / 2 - 25, 50, 50), "Rotate"))
            rotAngle += 10;
        
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	private rotAngle as float = 0

	private pivotPoint as Vector2

	def OnGUI() as void:
		pivotPoint = Vector2((Screen.width / 2), (Screen.height / 2))
		GUIUtility.RotateAroundPivot(rotAngle, pivotPoint)
		if GUI.Button(Rect(((Screen.width / 2) - 25), ((Screen.height / 2) - 25), 50, 50), 'Rotate'):
			rotAngle += 10