SIMULATE(nged)
DESCRIPTION
simulate performs rigid-body physics evaluation. The Bullet physics engine is used with a collision algorithm that utilizes the librt ray tracer.
The path parameter specifies the path to the objects within the
simulation. All primitives under this path are regarded as separate
physical objects by default. If a combination has the attribute
simulate::type=region
, all primitives below it in the hierarchy are
regarded as one physical object.
The duration parameter specifies the duration of the physics simulation (each use of the simulate command operates within a new physics environment).
All values are specified in units of meters, kilograms, and seconds. Note that Bullet is primarily designed for objects of sizes between approximately 0.05 and 10.0 meters, with a collision tolerance of 0.004 meters; hence, using simulate on a model that is significantly different from this scale may give worse results.
OPTIONS
- --debug=MODE
-
Set the debugging mode. Multiple mode flags can be separated using commas.
- aabb
-
Draw Bullet’s axis-aligned bounding boxes after the simulation step. These can usually be regarded as indicating the "true" position of geometry. Any discrepancies may indicate that the simulate command is incorrectly applying the Bullet transformations.
- contact
-
Draw all of Bullet’s collision contact points during the simulation.
- ray
-
Draw all of the rays fired by the internal collision detection algorithm.
OBJECT ATTRIBUTES
The simulation can be configured by setting certain attributes on objects within the specified path.
- simulate::type=TYPE
-
Specify the type of the associated object.
- region
-
Regard all solids under this combination as belonging to one rigid body.
- simulate::mass=SCALAR
-
Specify the mass of the associated object. Objects with a mass of
0.0
are immobile. - simulate::linear_velocity=<x, y, z>
-
Specify the linear velocity of the associated object as a vector.
- simulate::angular_velocity=<x, y, z>
-
Specify the angular velocity of the associated object as a vector.
- simulate::gravity=<x, y, z>
-
Specify the acceleration due to gravity as a vector. This attribute can only be applied to the topmost object under path. The default gravity vector is
<0.0, 0.0, -9.80665>
, specifying an accleration of -9.8 mm/s/s along the z-axis. - simulate::grid_radius=x
-
Specify the number of rays along the radii of the circular grids of rays fired during collision detection. This attribute can only be applied to the topmost object under path. The default value is
10
.
COPYRIGHT
This software is Copyright (c) 1989-2021 by the United States Government as represented by U.S. Army Research Laboratory.
BUG REPORTS
Reports of bugs or problems should be submitted via electronic mail to devs@brlcad.org