private void setKinematicWeight(float weight) {
        assert weight >= 0f : weight;

        boolean wasKinematic = (kinematicWeight > 0f);
        kinematicWeight = (weight > 1f) ? 1f : weight;
        boolean isKinematic = (kinematicWeight > 0f);

        if (wasKinematic && !isKinematic) {
            rigidBody.setKinematic(false);
            rigidBody.setPhysicsLocation(kpTransform.getTranslation());
            rigidBody.setPhysicsRotation(kpTransform.getRotation());
            rigidBody.getCollisionShape().setScale(kpTransform.getScale());
            rigidBody.setLinearVelocity(kpVelocity);
        } else if (isKinematic && !wasKinematic) {
            rigidBody.getPhysicsLocation(kpTransform.getTranslation());
            rigidBody.getPhysicsRotation(kpTransform.getRotation());
            Vector3f scale = rigidBody.getCollisionShape().getScale();
            kpTransform.setScale(scale);
            rigidBody.getLinearVelocity(kpVelocity);
            rigidBody.setKinematic(true);
        }
    }
Alter the kinematic weight and copy the physics transform and velocity
info as needed.

@param weight (&ge;0)
jme3-jbullet/src/main/java/com/jme3/bullet/animation/PhysicsLink.java