Class Constraint

Inheritance Relationships

Derived Types

Class Documentation

class Constraint

Base class for all pose optimization constraints.

Subclassed by ouster::sdk::mapping::AbsolutePointConstraint, ouster::sdk::mapping::AbsolutePoseConstraint, ouster::sdk::mapping::PointToPointConstraint, ouster::sdk::mapping::PoseToPoseConstraint

Public Functions

Constraint() = default

Default Constructor.

virtual ~Constraint() = default

Destructor.

inline Constraint(const Eigen::Array3d &translation_weights)

Construct a Constraint with custom translation weights.

Parameters:

translation_weights[in] – Weights to apply to x,y,z translation.

inline Constraint(const Constraint &other)

Copy constructor.

Parameters:

other[in] – The constraint to copy from.

inline uint32_t get_constraint_id() const

Get the unique constraint ID.

Returns 0 for non-user (internal) constraints. IDs > 0 are assigned to user-added constraints and are immutable once set internally.

Returns:

uint32_t The constraint identifier.

virtual ConstraintType get_type() const = 0

Get the type of this constraint.

Returns:

ConstraintType The constraint category enum.

virtual std::unique_ptr<Constraint> clone() const = 0

Clone this constraint (deep copy).

Implementations must preserve constraint metadata such as the constraint id when cloning.

Returns:

std::unique_ptr<Constraint> A deep-copied instance.

Public Members

Eigen::Array3d translation_weights = Eigen::Array3d::Ones()

Translation weights for constraint optimization.