Package-level declarations
Types
Represents a physical body in a simulation composed of nodes, links, and triangles.
Represents a constraint that maintains a specified area for a deformable body.
BoundaryNodeRelaxForce is a type of force that acts on the boundary nodes of a Body. It aims to relax the boundary nodes by adjusting their velocities based on neighboring node positions. Each boundary node is influenced by the midpoint of its neighboring boundary nodes, providing a smoothing effect.
Interface for detecting broad-phase collisions in a physics simulation.
An interface representing a constraint that resolves collisions between two bodies in a simulation.
Represents a constraint in a physical system, which influences the behavior of a Body.
Represents a physics simulation of interacting bodies.
Represents a constant gravitational force applied to a physical body in a simulation.
Interface representing a force interaction between two physical bodies in a simulation.
A constraint that enforces the lengths of links between nodes within a Body.
A naive implementation of a broad-phase collision detection algorithm.
Represents a circular constraint applied to nodes of a physical body.
Represents a constraint for resolving collisions between nodes within a physical body.
Represents a constraint that enforces nodes within a body to remain near the defined contour of a rectangle.
Represents a repulsive force applied to nodes within a specified search radius.
Represents a repulsive force applied on nodes of a Body using a bounding volume hierarchy (BVH) for optimization.
Implementation of the InterbodyForce interface that applies a repulsive force between the nodes of two physical bodies based on their proximity, utilizing a bounding volume hierarchy (BVH) for improved performance during pair detection.
Enforces rectangular boundary constraints on a physical body within a simulation.
A class that implements collision resolution between two bodies in a simulation using a Sweep and Prune (SAP) algorithm. This constraint resolves collisions by identifying and responding to intersections between the boundary nodes or edges of the two bodies.
Represents a constraint that maintains the area of triangles within a physical body.
Functions
Adds a body area constraint to the body, ensuring that its area remains close to a target rest area during simulation. The constraint includes compliance and uses iterative solving to maintain this condition.
Adds a BoundaryNodeRelaxForce to the Body's list of forces. This force acts on the boundary nodes of the body to relax their positions by adjusting their velocities based on neighboring node positions.
Adds a gravitational force to the body and allows configuring its properties.
Applies a gravitational force to the body by adding it to the list of forces acting on the body.
Configures the force simulation to use the naive broad-phase collision detection algorithm.
Applies a circular constraint to the nodes of this Body.
Adds a node collision constraint to the body, configuring it using the provided lambda.
Applies a node contour constraint to the body and configures it using the provided configuration block.
Adds a NodeRepulseInterbodyForce to the list of interbody forces in the simulation.
Adds a repulsive interbody force using a bounding volume hierarchy (BVH) to the simulation.
Adds a rectangular boundary constraint to the body, ensuring that its nodes remain confined within a specified rectangular region during the simulation.
Sets the collision resolution handler to a sweep-and-prune (SAP) based collision constraint.
Processes a collection of points and edges in a bipartite structure using a sweep-line algorithm to detect and handle intersections. The method categorizes objects into active points and edges, iteratively updates the active lists, and invokes the intersection callback when overlaps are detected.
Adds a triangle area constraint to the body, ensuring that the areas of triangles in the body remain consistent with their initial (rest) areas during simulation.