Ejemplo n.º 1
0
        private static GameObject CreateMeshCollider(Link.Geometry.Mesh mesh)
        {
            GameObject prefabObject = LocateAssetHandler.FindUrdfAsset <GameObject>(mesh.filename);

            if (prefabObject == null)
            {
                return(null);
            }

            GameObject meshObject = (GameObject)PrefabUtility.InstantiatePrefab(prefabObject);

            ConvertMeshToColliders(meshObject);

            return(meshObject);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// <para>CreateMesh</para>
        /// Creates a Godot mesh instance using a Urdf
        /// defined Mesh geometry object.
        /// </summary>
        /// <param name="mesh">Urdf mesh object generated from a link.</param>
        /// <param name="mat">Optional material to apply to the mesh.</param>
        /// <returns>A Godot.Mesh representing the Urdf mesh data.</returns>
        private MeshInstance CreateMesh(
            Link.Geometry.Mesh mesh,
            SpatialMaterial mat = null)
        {
            string fileName = mesh.filename;

            fileName = GetFullPath(fileName);

            GD.Print(fileName);
            MeshMaker mmaker = new MeshMaker();

            var meshMat = (MeshInstance)mmaker.CreateMesh(fileName);

            return(meshMat);
        }
Ejemplo n.º 3
0
        public void _Reads_Link_Visual_Geometry()
        {
            robot.ConstructFromString(urdfString);

            Link sensorLink = robot.links.Find(link => link.name == "sensor_link");

            Link.Geometry        geometry = sensorLink.visuals[0].geometry;
            Link.Geometry.Sphere sphere   = geometry.sphere;
            Assert.That(sphere.radius, Is.EqualTo(0.1d));

            Link baseLink = robot.links.Find(link => link.name == "base_link");

            Link.Geometry.Mesh mesh = baseLink.visuals[0].geometry.mesh;
            Assert.That(mesh.filename, Is.EqualTo("filename.stl"));
            Assert.That(mesh.scale, Is.EqualTo(new[] { 0.001d, 0.001d, 0.001d }));
        }
Ejemplo n.º 4
0
        private static GameObject CreateMeshVisual(Link.Geometry.Mesh mesh)
        {
            GameObject meshObject = LocateAssetHandler.FindUrdfAsset <GameObject>(mesh.filename);

            return(meshObject == null ? null : (GameObject)UnityEditor.PrefabUtility.InstantiatePrefab(meshObject));
        }
Ejemplo n.º 5
0
        private static GameObject CreateMeshVisual(Link.Geometry.Mesh mesh)
        {
            GameObject meshObject = LocateAssetHandler.FindUrdfAsset <GameObject>(mesh.filename);

            return(meshObject == null ? null : GameObject.Instantiate(meshObject));
        }