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
18namespace codac2
19{
29 class Parallelepiped : public Zonotope
30 {
31 public:
32
39 Parallelepiped(const Vector& z, const Matrix& A);
40
48 Zonotope proj(const std::vector<Index>& indices) const;
49
55 std::vector<Vector> vertices() const;
56
63
64 };
65}
Parallelepiped(const Vector &z, const Matrix &A)
Constructs a n-parallelepiped object with a given center and shape matrix.
IntervalVector box() const
Computes the axis-aligned bounding box of the parallelepiped.
std::vector< Vector > vertices() const
Computes the vertices of the parallelepiped.
Zonotope proj(const std::vector< Index > &indices) const
Projects the parallelepiped onto the subspace defined by the given indices.
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:43
Matrix A
Shape matrix of the zonotope.
Definition codac2_Zonotope.h:48
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
Eigen::Matrix< double,-1,-1 > Matrix
Alias for a dynamic-size matrix of doubles.
Definition codac2_Matrix.h:26