chrono::collision_settings Class Reference

Description

Chrono::Parallel collision_settings.

This structure that contains all settings associated with the collision detection phase.

#include <ChSettings.h>

Collaboration diagram for chrono::collision_settings:

Public Member Functions

 collision_settings ()
 The default values are specified in the constructor, use these as guidelines when experimenting with your own simulation setup. More...
 

Public Attributes

real3 min_bounding_point
 
real3 max_bounding_point
 
real collision_envelope
 This parameter, similar to the one in chrono inflates each collision shape by a certain amount. More...
 
bool use_aabb_active
 Chrono parallel has an optional feature that allows the user to set a bounding box that automatically freezes (makes inactive) any object that exits the bounding box. More...
 
real3 aabb_min
 The size of the bounding box (if set to active) is specified by its min and max extents.
 
real3 aabb_max
 The size of the bounding box (if set to active) is specified by its min and max extents.
 
vec3 bins_per_axis
 This variable is the primary method to control the granularity of the collision detection grid used for the broadphase. More...
 
NarrowPhaseType narrowphase_algorithm
 There are multiple narrowphase algorithms implemented in the collision detection code. More...
 
real grid_density
 
bool fixed_bins
 Use fixed number of bins instead of tuning them.
 

Constructor & Destructor Documentation

chrono::collision_settings::collision_settings ( )

The default values are specified in the constructor, use these as guidelines when experimenting with your own simulation setup.

Member Data Documentation

vec3 chrono::collision_settings::bins_per_axis

This variable is the primary method to control the granularity of the collision detection grid used for the broadphase.

As the name suggests, it is the number of slices along each axis. During the broadphase stage the extents of the simulation are computed and then sliced according to the variable.

real chrono::collision_settings::collision_envelope

This parameter, similar to the one in chrono inflates each collision shape by a certain amount.

This is necessary when using NSC as it creates the contact constraints before objects acutally come into contact. In general this helps with stability.

NarrowPhaseType chrono::collision_settings::narrowphase_algorithm

There are multiple narrowphase algorithms implemented in the collision detection code.

The narrowphase_algorithm parameter can be used to change the type of narrowphase used at runtime.

bool chrono::collision_settings::use_aabb_active

Chrono parallel has an optional feature that allows the user to set a bounding box that automatically freezes (makes inactive) any object that exits the bounding box.