Exemplo n.º 1
0
        public static Rigidbody Create(this Link.Inertial inertial, GameObject gameObject)
        {
            Rigidbody rigidbody = gameObject.AddComponent <Rigidbody>();

            rigidbody.mass = (float)inertial.mass;

            if (inertial.origin != null)
            {
                rigidbody.centerOfMass = inertial.origin.GetPosition();
            }

            inertial.inertia.SetInertia(rigidbody);

            RigidbodyUrdfDataManager rigidbodyUrdfDataManager
                = gameObject.AddComponent <RigidbodyUrdfDataManager>();

            rigidbodyUrdfDataManager.GetValuesFromUrdf(
                rigidbody.centerOfMass,
                rigidbody.inertiaTensor,
                rigidbody.inertiaTensorRotation);
            rigidbodyUrdfDataManager.UseUrdfData = true;

            return(rigidbody);
        }