39 D[0] = 1.0;
D[4] = 0.0;
40 D[1] = 0.0;
D[5] = 1.0;
41 D[2] = -1.0;
D[6] = 0.0;
42 D[3] = 0.0;
D[7] = -1.0;
74 D[1] = -sa;
D[5] = ca;
75 D[2] = -ca;
D[6] = -sa;
76 D[3] = sa;
D[7] = -ca;
112 det =
D[0]*
D[7] -
D[3]*
D[4];
113 vert(0,0) =
D[7]/det*
d[0] -
D[4]/det*
d[3];
114 vert(0,1) = -
D[3]/det*
d[0] +
D[0]/det*
d[3];
118 det =
D[0]*
D[5] -
D[4]*
D[1];
119 vert(1,0) =
D[5]/det*
d[0] -
D[4]/det*
d[1];
120 vert(1,1) = -
D[1]/det*
d[0] +
D[0]/det*
d[1];
124 det =
D[1]*
D[6] -
D[5]*
D[2];
125 vert(2,0) =
D[6]/det*
d[1] -
D[5]/det*
d[2];
126 vert(2,1) = -
D[2]/det*
d[1] +
D[1]/det*
d[2];
130 det =
D[2]*
D[7] -
D[3]*
D[6];
131 vert(3,0) =
D[7]/det*
d[2] -
D[6]/det*
d[3];
132 vert(3,1) = -
D[3]/det*
d[2] +
D[2]/det*
d[3];
MatrixXd vert
Absolute coordinates of vertices.
double D[4 *2]
Matrix of the constraints D*z <= d (where z is a 2D point).
double d_orig[4]
Size of the support polygon for a single support (no rotation / translation).
void Constraints2Vert()
Computes the vertices of a polygon from the constraints (D*x <= d)
RectangularConstraint_ZMP(const double *)
A constructor.
void rotate_translate(const double, const double, const double, const double)
translates from [0;0] to "p" and rotates from 0 to "angle". The 0 initial angle implies that D = [eye...