コード例 #1
0
ファイル: TransformData.cs プロジェクト: TagsRocks/skill
        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);
            }
        }
コード例 #2
0
        /// <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.");
            }
        }