32 const MatrixXd& inequality_constraint_matrix =
34 const MatrixXd& inequality_constraint_boundary =
36 const MatrixXd& equality_constraint_matrix =
38 const MatrixXd& equality_constraint_boundary =
41 qp_proto->set_param_size(
static_cast<int32_t
>(kernel_matrix.rows()));
44 for (
int i = 0; i < offset.rows(); ++i) {
45 qp_proto->add_bias(offset(i, 0));
49 qp_proto->mutable_inequality_matrix());
51 for (
int i = 0; i < inequality_constraint_boundary.rows(); ++i) {
52 qp_proto->add_inequality_value(inequality_constraint_boundary(i, 0));
56 qp_proto->mutable_equality_matrix());
58 for (
int i = 0; i < equality_constraint_boundary.rows(); ++i) {
59 qp_proto->add_equality_value(equality_constraint_boundary(i, 0));
64 for (
const auto& spline_seg : splines) {
65 const auto& param_seg = spline_seg.spline_func().params();
66 for (
const auto value : param_seg) {
67 qp_proto->add_optimal_param(value);