Example #1
0
        private void DisplayWarnings()
        {
            if (!urdfVisual.transform.HasExactlyOneChild())
            {
                GUILayout.Space(5);
                EditorGUILayout.HelpBox("Visual element must have one and only one child Geometry element.", MessageType.Error);
            }
            else if (UrdfGeometry.IsTransformed(urdfVisual.transform.GetChild(0), urdfVisual.GeometryType))
            {
                GUILayout.Space(5);
                EditorGUILayout.HelpBox("Changes to the transform of the child Geometry element cannot be exported to URDF. " +
                                        "Make any translation, rotation, or scale changes to this Visual object instead.", MessageType.Error);

                if (GUILayout.Button("Fix transformations"))
                {
                    bool transferRotation = urdfVisual.GeometryType != GeometryTypes.Mesh;
                    urdfVisual.transform.MoveChildTransformToParent(transferRotation);
                }
            }
        }