コード例 #1
0
        private void OnGUI()
        {
            //Styles definitions

            GUIStyle titleStyle = new GUIStyle(EditorStyles.boldLabel)
            {
                alignment = TextAnchor.MiddleLeft,
                fontSize  = 13
            };

            GUIStyle buttonStyle = new GUIStyle(EditorStyles.miniButtonRight)
            {
                fixedWidth = 75
            };

            //Window title
            GUILayout.Space(10);
            GUILayout.Label("Select Axis Type", titleStyle);

            //Select the original up axis of the imported mesh
            GUILayout.Space(5);
            EditorGUILayout.BeginHorizontal();
            settings.choosenAxis = (ImportSettings.axisType)EditorGUILayout.EnumPopup(
                "Select Axis Type", settings.choosenAxis);
            EditorGUILayout.EndHorizontal();

            //Window title
            GUILayout.Space(10);
            GUILayout.Label("Select Convex Decomposer", titleStyle);

            //Select the mesh decomposer
            GUILayout.Space(5);
            EditorGUILayout.BeginHorizontal();
            settings.convexMethod = (ImportSettings.convexDecomposer)EditorGUILayout.EnumPopup(
                "Mesh Decomposer", settings.convexMethod);
            EditorGUILayout.EndHorizontal();

            //Import Robot button
            GUILayout.Space(10);
            if (GUILayout.Button("Import URDF"))
            {
                if (urdfFile != "")
                {
                    showLoadBar = true;
                    EditorCoroutineUtility.StartCoroutine(UrdfRobotExtensions.Create(urdfFile, settings, showLoadBar), this);
                }
            }

            if (showLoadBar)
            {
                float progress = (settings.totalLinks == 0) ? 0 : ((float)settings.linksLoaded / (float)settings.totalLinks);
                EditorGUI.ProgressBar(new Rect(3, 400, position.width - 6, 20), progress, String.Format("{0}/{1} Links Loaded", settings.linksLoaded, settings.totalLinks));
                if (progress == 1)
                {
                    Close();
                }
            }
        }
コード例 #2
0
        private static void CreateUrdfObject()
        {
            string urdfFile = EditorUtility.OpenFilePanel(
                "Import local URDF",
                Path.Combine(Path.GetDirectoryName(Application.dataPath), "Assets"),
                "urdf");

            if (urdfFile != "")
            {
                UrdfRobotExtensions.Create(urdfFile);
            }
        }
コード例 #3
0
        private static void CreateUrdfObject()
        {
            //Get path to asset, check if it's a urdf file
            string assetPath = AssetDatabase.GetAssetPath(Selection.activeObject);

            if (Path.GetExtension(assetPath)?.ToLower() == ".urdf")
            {
                UrdfRobotExtensions.Create(UrdfAssetPathHandler.GetFullAssetPath(assetPath));
            }
            else
            {
                EditorUtility.DisplayDialog("URDF Import",
                                            "The file you selected was not a URDF file. A robot can only be imported from a valid URDF file.", "Ok");
            }
        }
コード例 #4
0
        private void OnGUI()
        {
            //Styles definitions

            GUIStyle titleStyle = new GUIStyle(EditorStyles.boldLabel)
            {
                alignment = TextAnchor.MiddleLeft,
                fontSize  = 13
            };

            GUIStyle buttonStyle = new GUIStyle(EditorStyles.miniButtonRight)
            {
                fixedWidth = 75
            };

            //Window title
            GUILayout.Space(10);
            GUILayout.Label("Select Axis Type", titleStyle);

            //Select the original up axis of the imported mesh
            GUILayout.Space(5);
            EditorGUILayout.BeginHorizontal();
            settings.choosenAxis = (ImportSettings.axisType)EditorGUILayout.EnumPopup(
                "Select Axis Type", settings.choosenAxis);
            EditorGUILayout.EndHorizontal();

            //Window title
            GUILayout.Space(10);
            GUILayout.Label("Select Convex Decomposer", titleStyle);

            //Select the mesh decomposer
            GUILayout.Space(5);
            EditorGUILayout.BeginHorizontal();
            settings.convexMethod = (ImportSettings.convexDecomposer)EditorGUILayout.EnumPopup(
                "Mesh Decomposer", settings.convexMethod);
            EditorGUILayout.EndHorizontal();

            //Import Robot button
            GUILayout.Space(10);
            if (GUILayout.Button("Import URDF"))
            {
                if (urdfFile != "")
                {
                    UrdfRobotExtensions.Create(urdfFile, settings);
                }
                Close();
            }
        }
コード例 #5
0
 private static void CreateUrdfObject()
 {
     UrdfRobotExtensions.Create();
 }