public void Copy(Transform t) { this.Name = t.name; this._Position.Import(t.position); this._LocalPosition.Import(t.localPosition); this._LocalScale.Import(t.localScale); this._Rotation.Import(t.rotation); this._LocalRotation.Import(t.localRotation); RectTransform rt = t.GetComponent <RectTransform>(); if (rt != null) { if (_RectTransform == null) { _RectTransform = new RectTransformData(this); } _RectTransform.Copy(rt); } _Children.Clear(); for (int i = 0; i < t.childCount; i++) { TransformData tdc = new TransformData(); tdc.Copy(t.GetChild(i)); Add(tdc); } }
/// <summary> /// Copy localPosition, localRotation and localScale of selected objetc to clipboard as formated string /// </summary> public static void CopyTransformHierarchy() { Transform t = Selection.activeTransform; if (t != null) { TransformData tr = new TransformData(); tr.Copy(t); Skill.Framework.IO.XmlDocument document = new Framework.IO.XmlDocument(); document.AppendChild(tr.ToXmlElement()); EditorGUIUtility.systemCopyBuffer = document.OuterXml; Debug.Log("Hierarchy Transform copied to clipboard."); } else { Debug.LogError("No selected transform to copy."); } }