public void ExportGeometryData_MeshUnityDecomposer_DefaultGeometry() { // Force runtime mode to set testing package root RuntimeUrdf.runtimeModeEnabled = true; UrdfAssetPathHandler.SetPackageRoot("Packages/com.unity.robotics.urdf-importer/Tests/Runtime/Assets/URDF/cube/"); RuntimeUrdf.runtimeModeEnabled = false; UrdfRobotExtensions.importsettings = ImportSettings.DefaultSettings(); UrdfRobotExtensions.importsettings.convexMethod = ImportSettings.convexDecomposer.unity; var parent = new GameObject("Parent").transform; string path = "package://meshes/cube.stl"; var meshGeometry = new Geometry(mesh: new Mesh(path, new double[] { 1, 1, 1 })); UrdfCollisionExtensions.Create(parent, new Collision(meshGeometry)); UrdfExportPathHandler.SetExportPath("Assets"); var t = parent.GetComponentInChildren <UrdfCollision>().transform.GetChild(0); var export = UrdfGeometry.ExportGeometryData(GeometryTypes.Mesh, t); Assert.IsNotNull(export); Object.DestroyImmediate(parent.gameObject); List <string> outFailedPaths = new List <string>(); AssetDatabase.DeleteAssets(new string[] { "Assets/meshes" }, outFailedPaths); }
public void ExportGeometryData_Sphere_DefaultGeometry() { var parent = new GameObject("Parent").transform; UrdfGeometryCollision.Create(parent, GeometryTypes.Sphere); var t = parent.Find("Sphere"); var export = UrdfGeometry.ExportGeometryData(GeometryTypes.Sphere, t); Assert.IsNotNull(export); Assert.AreEqual(0.5, export.sphere.radius); Assert.AreEqual(typeof(Sphere), export.sphere.GetType()); Assert.IsNull(export.box); Assert.IsNull(export.cylinder); Assert.IsNull(export.mesh); Object.DestroyImmediate(parent.gameObject); }
public void ExportGeometryData_Box_DefaultGeometry() { var parent = new GameObject("Parent").transform; UrdfGeometryCollision.Create(parent, GeometryTypes.Box); var t = parent.Find("Box"); var export = UrdfGeometry.ExportGeometryData(GeometryTypes.Box, t); Assert.IsNotNull(export); Assert.AreEqual(new double[] { 1, 1, 1 }, export.box.size); Assert.AreEqual(typeof(Box), export.box.GetType()); Assert.IsNull(export.cylinder); Assert.IsNull(export.sphere); Assert.IsNull(export.mesh); Object.DestroyImmediate(parent.gameObject); }
public void ExportGeometryData_Cylinder_DefaultGeometry() { // Force runtime mode to avoid creating asset file RuntimeUrdf.runtimeModeEnabled = true; var parent = new GameObject("Parent").transform; UrdfGeometryCollision.Create(parent, GeometryTypes.Cylinder); var t = parent.Find("Cylinder"); var export = UrdfGeometry.ExportGeometryData(GeometryTypes.Cylinder, t); Assert.IsNotNull(export); Assert.AreEqual(0.5, export.cylinder.radius); Assert.AreEqual(2, export.cylinder.length); Assert.AreEqual(typeof(Cylinder), export.cylinder.GetType()); Assert.IsNull(export.box); Assert.IsNull(export.sphere); Assert.IsNull(export.mesh); Object.DestroyImmediate(parent.gameObject); }