devNotes 7-12-16 Bench Tabbed UI World Sphere Cursor

hfgmhmfhm

Tab

From:

// TransformCopier.cs v 1.1
// homepage: http://wiki.unity3d.com/index.php/CopyTransform
 
using UnityEngine;
using UnityEditor;
using System.Collections;
 
public class TransformCopier : ScriptableObject {
 
	private static Vector3 position;
	private static Quaternion rotation;
	private static Vector3 scale;
	private static string myName;
 
	[MenuItem ("Window/Transform Copier/Copy",false,0)]
	static void DoRecord () {
		position = Selection.activeTransform.localPosition;
		rotation = Selection.activeTransform.localRotation;
		scale = Selection.activeTransform.localScale;
		myName = Selection.activeTransform.name;
		EditorUtility.DisplayDialog("Transform Copy", "Local position, rotation, & scale of "+myName +" copied relative to parent.", "OK", "");
    }
 
	// PASTE POSITION:
	[MenuItem ("Window/Transform Copier/Paste Position",false,50)]
    static void DoApplyPositionXYZ () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localPosition = position;
    }
 
	[MenuItem ("Window/Transform Copier/Paste Position X",false,51)]
    static void DoApplyPositionX () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localPosition = new Vector3(position.x, selection.localPosition.y, selection.localPosition.z);
    }
 
	[MenuItem ("Window/Transform Copier/Paste Position Y",false,52)]
    static void DoApplyPositionY () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localPosition = new Vector3(selection.localPosition.x, position.y, selection.localPosition.z);
	}
 
	[MenuItem ("Window/Transform Copier/Paste Position Z",false,53)]
    static void DoApplyPositionZ () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localPosition = new Vector3(selection.localPosition.x, selection.localPosition.y, position.z);
    }
 
	// PASTE ROTATION:
	[MenuItem ("Window/Transform Copier/Paste Rotation",false,100)]
    static void DoApplyRotationXYZ () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localRotation = rotation;
    }
 
	[MenuItem ("Window/Transform Copier/Paste Rotation X",false,101)]
	static void DoApplyRotationX () {
		Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localRotation = Quaternion.Euler(rotation.eulerAngles.x, selection.localRotation.eulerAngles.y, selection.localRotation.eulerAngles.z);
	}
 
	[MenuItem ("Window/Transform Copier/Paste Rotation Y",false,102)]
    static void DoApplyRotationY () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localRotation = Quaternion.Euler(selection.localRotation.eulerAngles.x, rotation.eulerAngles.y, selection.localRotation.eulerAngles.z);
	}
 
	[MenuItem ("Window/Transform Copier/Paste Rotation Z",false,103)]
    static void DoApplyRotationZ () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localRotation = Quaternion.Euler(selection.localRotation.eulerAngles.x, selection.localRotation.eulerAngles.y, rotation.eulerAngles.z);
	}
 
	// PASTE SCALE:
	[MenuItem ("Window/Transform Copier/Paste Scale",false,150)]
    static void DoApplyScaleXYZ () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localScale = scale;
    }
 
	[MenuItem ("Window/Transform Copier/Paste Scale X",false,151)]
    static void DoApplyScaleX () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localScale = new Vector3(scale.x, selection.localScale.y, selection.localScale.z);
    }
 
	[MenuItem ("Window/Transform Copier/Paste Scale Y",false,152)]
    static void DoApplyScaleY () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localScale = new Vector3(selection.localScale.x, scale.y, selection.localScale.z);
    }
 
	[MenuItem ("Window/Transform Copier/Paste Scale Z",false,153)]
    static void DoApplyScaleZ () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localScale = new Vector3(selection.localScale.x, selection.localScale.y, scale.z);
    }
 
	// CHANGE LOCAL ROTATION :
	[MenuItem ("Window/Transform Copier/localRotation.x + 90",false,200)]
    static void localRotateX90 () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localRotation = selection.localRotation*Quaternion.Euler(90f,0f,0f);
    }
 
	[MenuItem ("Window/Transform Copier/localRotation.y + 90",false,201)]
    static void localRotateY90 () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localRotation = selection.localRotation*Quaternion.Euler(0f,90f,0f);
    }
 
	[MenuItem ("Window/Transform Copier/localRotation.z + 90",false,202)]
    static void localRotateZ90 () {
        Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localRotation = selection.localRotation*Quaternion.Euler(0f,0f,90f);
	}
 
	// SWAP:
	[MenuItem ("Window/Transform Copier/Swap Y and Z Scale", false, 251)]
	static void SwapYZScale () {
		Transform[] selections  = Selection.transforms;
		foreach (Transform selection  in selections) selection.localScale = new Vector3 (selection.localScale.x,selection.localScale.z,selection.localScale.y);
	}
}

ryjyrjrj

CnBQXwzWYAA-jcL