Collision Geometries
A part on its own does not have volume. Therefore, it cannot collide with other elements in a scene. For this reason, collision geometries must be added to allow rigid body interactions.
When creating parts, you can add primitive geometric shapes, such as boxes, spheres, capsules, planes, and cylinders.
You can also create polygon-based geometries, such as triangle meshes and composite type geometries. These shapes define the behavior of a part upon collision; however, they do not have any bearing on its dynamic behavior. If a part does not have collision, buoyancy, or drag geometries, it will not collide with other parts. The position and volume of geometries are optionally used to determine the inertia tensor properties. The figure below indicates where geometries are located in the Vortex® hierarchy.
- 1 The Relationship Between Geometries, Parts, and Materials
- 2 Assigning a Material to a Collision Geometry
- 3 Editing Position, Orientation, and Shape of a Geometry
- 4 Changing the Geometry Interaction Type
- 5 Fluid Interaction with Geometries
- 6 Creating Composite Collision Geometries
- 7 Creating Geometries using Convex Mesh Decomposition
- 8 Geometry Shape Types
A geometry can be used in any of these contexts:
Model collisions between rigid bodies
Model fluid dynamics (buoyancy, drag, lift)
Buoyancy and drag are used to allow interaction of the part with fluid, for example when building subsea mechanisms such as a remotely operated vehicle (ROV). For more information please refer to Fluid Interaction with Geometries.
After you add a geometry to a Part, you should modify properties such as position, orientation, and its dimensions as well as the associated Part's center of mass (COM) and the inertia tensor.
For a list of supported geometries, please refer to Geometry Shape Types.
The Relationship Between Geometries, Parts, and Materials
When a Part (or rigid body) collides with another, contacts are produced which represent the physical interactions between the colliding bodies. The resultant collision forces can be controlled through material properties associated with these contacts, such as compliance, friction, adhesion, and restitution. To this end, every geometry can have a single material assigned to it, such as steel or rubber. Upon collision between two geometries, the resultant contact's properties are chosen based on the colliding pair of materials, such as "steel with rubber", or "rubber with asphalt".
For each such material pairing, referred to as contact material, the properties that define the collision forces can be found in a material table. The material table, as such, contains physical parameters that describe the material properties of colliding rigid bodies.
Let's look at a concrete example. When a tennis ball hits or contacts with the ground, there are two objects: the tennis ball and the terrain (tennis court). The tennis ball has a collision geometry with a sphere shape and is made up of an associated Rubber material. The ground or terrain is made up of Asphalt material and has a collision geometry of a plane. Therefore, the contact material is Asphalt+Rubber:
You can assign a specific material to each collision geometry defined on a part.
For example, in order to achieve the correct collision response when a wheel collides with terrain, you could assign the Wheel material the wheel's collision geometry and assign Mud, Ice, or Ground to the terrain's geometry.
To assign a specific material to a collision geometry, follow this procedure:
Open the
.vxassemblyfile containing the Part and Collision Geometry you want to modify.From the Explorer, select the geometry you want to modify.
Its properties appear in the Property panel on the right side of your workspace.
Locate the Material text box at the bottom of the list of properties.
Carefully type the name of the Material you want to assign to this geometry.
You can now validate the materials in your scene, mechanism, or assembly.
Editing Position, Orientation, and Shape of a Geometry
You can edit position orientation and shape of every Geometry.
Open the
.vxassemblyfile containing the Part and Collision Geometry you want to modify.In the Explorer panel, select the geometry that you want to modify.
Different properties are displayed depending on the type of geometry you select. For example, Drag Coefficient properties will be displayed for the Drag type geometry.Set the Position and Orientation properties of the geometry using either of these methods:
By using the Transform tools in the 3D View
By editing the values directly in the Properties panel
Set the dimensions of the geometry: for example, the radius of a sphere, the length of a capsule, or the dimensions of a box.
By default, all geometries will be used when calculating collision. However, if you want to remove a specific geometry from the calculation, uncheck its Enabled option.
You can also modify the material assigned to this geometry. For more information, see Assigning a Material to a Collision Geometry.
Changing the Geometry Interaction Type
When you click on the Part icon in the Explorer, the Properties panel displays a table of geometries defined on the part, with checkboxes indicating whether they are Collision, Buoyancy, Drag, or Lift geometries or a combination of geometries. Note that the different types of geometries have a different color in the 3D View.
You can use this table to redefine the collision type of geometry. The table also provides quick links to the shape properties.
If you don't already have a part with geometry, follow the procedure in Building Assemblies from a 3D Model or Creating Parts and Geometries Manually.
Select the part you want to edit in the Explorer panel.
The Geometries section displays the name and type of all geometries in the Properties panel.Click the arrow to the left of the geometry to open the specific properties for that shape.
To use a different geometry, select the check box you want and de-select the one you don't want.
Geometries support fluid interaction and can be used to model Buoyancy, Drag, and Lift forces applied to Parts. The following sections explain how to enable these features.
Enabling Buoyancy
If you don't already have a part that contains the buoyancy geometry, follow the procedure in Creating Parts and Geometries Manually.
You can also convert an existing type from Collision or Drag to Buoyancy by following the procedure under Changing the Geometry Type (Collision, Buoyancy, Drag, Lift).
In the Explorer panel, select the geometry shape (for example, Cylinder).
Under the Fluid interaction section, set the following:
Center of Buoyancy
Displaced volume
Center of Buoyancy
The center of buoyancy refers to the point through which the buoyancy force acts. Vortex® calculates the center of buoyancy from the centroid of the displaced fluid.
The center of buoyancy is given in the local frame of the geometry. By default, its three coordinates are (0,0,0), which coincides with the center of the geometry.
Displaced Volume
The displaced volume is the volume of fluid displaced by the collision geometry when it is wholly immersed.
For more information about setting buoyancy in the SDK, see Buoyancy Force.
Enabling the Drag Force
If you don't already have a part that contains the Drag geometry, follow the procedure in Creating Parts and Geometries Manually.
You can also convert an existing type from Collision or Drag to Buoyancy by following the procedure under Changing the Geometry Type (Collision, Buoyancy, Drag, Lift).
In the Explorer panel, select the geometry shape (for example, Cylinder).
Under the Fluid interaction section, set the drag coefficients. (See Drag Force for more information.)