Constraint System Constructors

Main.DeformationPaths.ConstraintSystemType

Class for Constructing a general constraint system.

Attributes

  • vertices::Vector{Int}: Vertices describing the geometric constraint system. They are given as a list of integers.
  • variables::Vector{Variable}: Coordinate variables representing the positions of the vertices.
  • equations::Vector{Expression}: Equations corresponding to the constraint system.
  • realization::Matrix{<:Real}: Realization of the geometric constraint system satisfying the equations.
  • jacobian::Matrix{Expression}: Jacobian matrix for the equations and variables.
  • dimension::Int: Dimension in which the geometric constraint system lives.
  • xs::Union{Matrix{Variable}, Matrix{Expression}}: Matrix representing the possible realizations of a geometric constraint system.
  • system::System: Polynomial system consisting of the equations and variables in the form of HomotopyContinuation.
  • pinned_vertices::Vector{Int}: Pinned vertices of the system. These vertices remain unchanged and are added as constraints. Pinning can, for instance, be used to factor out rigid motions.
source
Main.DeformationPaths.ConstraintSystemMethod
ConstraintSystem(vertices::Vector{Int}, variables::Vector{Variable}, equations::Vector{Expression}, realization::Matrix{<:Real}, xs)

Constructor of a ConstraintSystem object.

source

Types of Geometric Constraint Systems

Main.DeformationPaths.PolytopeType
Polytope([vertices,] facets, realization[; pinned_vertices])

Class for 3-dimensional polytopes with edge-length and facet planarity constraints.

For the computation of the normals, we assume that the origin lies in the barycenter. Otherwise, we translate the polytope accordingly.

source
Main.DeformationPaths.FacetPolytopeType
FacetPolytope([vertices,] facets, realization[; pinned_vertices])

Class for 3-dimensional polytopes with facet planarity constraints.

For the computation of the normals, we assume that the origin lies in the barycenter. Otherwise, we translate the polytope accordingly.

source
Main.DeformationPaths.BodyHingeType
BodyHinge([vertices,] facets, realization[; pinned_vertices])

Class for body-hinge frameworks, which are essentially polytopes with rigid facets.

source
Main.DeformationPaths.BodyBarType
BodyBar([vertices,] facets, realization[; pinned_vertices])

Class for body-bar frameworks, which are essentially polytopes with rigid facets and connecting .

source

Transformations