newton.geometry.SDFHydroelasticConfig#
- class newton.geometry.SDFHydroelasticConfig(reduce_contacts=True, buffer_mult_broad=1, buffer_mult_iso=1, buffer_mult_contact=1, grid_size=262144, output_contact_surface=False, betas=(10.0, -0.5), sticky_contacts=0.0, normal_matching=True, moment_matching=False, margin_contact_area=0.01)[source]#
Bases:
objectControls properties of SDF hydroelastic collision handling.
- __init__(reduce_contacts=True, buffer_mult_broad=1, buffer_mult_iso=1, buffer_mult_contact=1, grid_size=262144, output_contact_surface=False, betas=(10.0, -0.5), sticky_contacts=0.0, normal_matching=True, moment_matching=False, margin_contact_area=0.01)#
- betas: tuple[float, float] = (10.0, -0.5)#
Penetration beta values for contact reduction heuristics. See
compute_score()for more details.
- buffer_mult_broad: int = 1#
Multiplier for the preallocated broadphase buffer that stores overlapping block pairs. Increase only if a broadphase overflow warning is issued.
- buffer_mult_contact: int = 1#
Multiplier for the preallocated face contact buffer that stores contact positions, normals, depths, and areas. Increase only if a face contact overflow warning is issued.
- buffer_mult_iso: int = 1#
Multiplier for preallocated iso-surface extraction buffers used during hierarchical octree refinement (subblocks and voxels). Increase only if an iso buffer overflow warning is issued.
- moment_matching: bool = False#
Whether to attempt adjusting reduced contacts friction coefficients so their net maximum moment matches that of the reference given by unreduced contacts. Only active when reduce_contacts is True.
- normal_matching: bool = True#
Whether to adjust reduced contacts normals so their net force direction matches that of the reference given by unreduced contacts. Only active when reduce_contacts is True.
- output_contact_surface: bool = False#
Whether to output hydroelastic contact surface vertices for visualization.