8 Eigen::Matrix2d rotation;
9 rotation << std::cos(angle), -std::sin(angle),
10 std::sin(angle), std::cos(angle);
14 if (dimensions == 3) {
15 Eigen::Matrix3d rotation = Eigen::Matrix3d::Identity();
20 0, std::cos(angle), -std::sin(angle),
21 0, std::sin(angle), std::cos(angle);
24 rotation << std::cos(angle), 0, std::sin(angle),
26 -std::sin(angle), 0, std::cos(angle);
30 rotation << std::cos(angle), -std::sin(angle), 0,
31 std::sin(angle), std::cos(angle), 0,
38 return Eigen::MatrixXd::Identity(dimensions, dimensions);
43 if (scale_factors.empty()) {
44 return Eigen::MatrixXd::Identity(1, 1);
47 Eigen::MatrixXd scaling = Eigen::MatrixXd::Zero(
48 scale_factors.size(), scale_factors.size());
50 for (
size_t i = 0; i < scale_factors.size(); ++i) {
51 scaling(i, i) = scale_factors[i];
Tendency< D, float > scale(const Tendency< D, float > &t, float factor)
Uniform scaling of a scalar-output tendency.