codac 2.0.0
Loading...
Searching...
No Matches
codac2_Parallelepiped.h
Go to the documentation of this file.
1
9
10#pragma once
11
12#include <vector>
13#include "codac2_Vector.h"
14#include "codac2_Matrix.h"
16#include "codac2_Zonotope.h"
17#include "codac2_BoolInterval.h"
18
19namespace codac2
20{
30 class Parallelepiped : public Zonotope
31 {
32 public:
33
40 Parallelepiped(const Vector& z, const Matrix& A);
41
47 std::vector<Vector> vertices() const;
48
55
63 BoolInterval contains(const Vector& v) const;
64
73
74 };
75}
Parallelepiped(const Vector &z, const Matrix &A)
Constructs a n-parallelepiped object with a given center and shape matrix.
BoolInterval is_superset(const IntervalVector &x) const
Checks if a given box is contained within the parallelepiped. The matrix A has to be square and inver...
BoolInterval contains(const Vector &v) const
Checks if a given point is contained within the parallelepiped. The matrix A has to be square and inv...
IntervalVector box() const
Computes the axis-aligned bounding box of the parallelepiped.
std::vector< Vector > vertices() const
Computes the vertices of the parallelepiped.
Zonotope(const Vector &z, const Matrix &A)
Constructs a n-zonotope object with a given center and shape matrix.
Vector z
Center of the zonotope.
Definition codac2_Zonotope.h:50
Matrix A
Shape matrix of the zonotope.
Definition codac2_Zonotope.h:55
Definition codac2_OctaSym.h:21
Eigen::Matrix< double,-1, 1 > Vector
Alias for a dynamically-sized column vector of doubles.
Definition codac2_Vector.h:24
Eigen::Matrix< Interval,-1, 1 > IntervalVector
Alias for a dynamic-size column vector of intervals.
Definition codac2_IntervalVector.h:25
BoolInterval
Enumeration representing a boolean interval.
Definition codac2_BoolInterval.h:26
Eigen::Matrix< double,-1,-1 > Matrix
Alias for a dynamic-size matrix of doubles.
Definition codac2_Matrix.h:26