constraints.types.distance.DistanceConstraint
constraints.types.distance.DistanceConstraint(
param1,
param2,
distance,
*,
weight=1.0,
)Constraint that fixes the distance between two points/vectors.
This constraint enforces: ||p1 - p2|| = distance
Reduces DOF by 1 (one scalar equation).
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| param1 | Vector | First point/vector (Vector parameter) | required |
| param2 | Vector | Second point/vector (Vector parameter) | required |
| distance | Scalar | float | Target distance (Scalar parameter or float) | required |
Example
p1 = Vector([0, 0, 0], free=True, name='p1')
p2 = Vector([1, 0, 0], free=True, name='p2')
constraint = DistanceConstraint(p1, p2, 0.2)Methods
| Name | Description |
|---|---|
| compute_residual | Compute distance constraint residual: ||p1 - p2|| - d. |
| dof_reduction | Distance constraint adds 1 scalar equation, reducing DOF by 1. |
| get_parameters | Return both parameters involved in the distance constraint. |
compute_residual
constraints.types.distance.DistanceConstraint.compute_residual(param_values)Compute distance constraint residual: ||p1 - p2|| - d.
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| param_values | dict[str, Array] | Dict with keys matching parameter names | required |
Returns
| Name | Type | Description |
|---|---|---|
| Array | Scalar residual (0 when constraint is satisfied) |
dof_reduction
constraints.types.distance.DistanceConstraint.dof_reduction()Distance constraint adds 1 scalar equation, reducing DOF by 1.
get_parameters
constraints.types.distance.DistanceConstraint.get_parameters()Return both parameters involved in the distance constraint.