extra_includes: - rpy/geometryToString.h - wpystruct.h functions: to_json: ignore: true from_json: ignore: true classes: frc::Rotation3d: methods: Rotation3d: overloads: '': const Quaternion&: keepalive: [] units::radian_t, units::radian_t, units::radian_t: const Eigen::Vector3d&, units::radian_t: keepalive: [] const Eigen::Vector3d&: keepalive: [] const Eigen::Matrix3d&: keepalive: [] const Eigen::Vector3d&, const Eigen::Vector3d&: keepalive: [] const Rotation2d&: keepalive: [] operator+: operator-: overloads: const Rotation3d& [const]: '[const]': operator*: operator/: operator==: RotateBy: GetQuaternion: X: Y: Z: Axis: Angle: ToMatrix: ToRotation2d: ToVector: inline_code: | cls_Rotation3d .def_static("fromDegrees", [](units::degree_t roll, units::degree_t pitch, units::degree_t yaw) { return std::make_unique(roll, pitch, yaw); }, py::arg("roll"), py::arg("pitch"), py::arg("yaw")) .def_property_readonly("x", &Rotation3d::X) .def_property_readonly("y", &Rotation3d::Y) .def_property_readonly("z", &Rotation3d::Z) .def_property_readonly("angle", &Rotation3d::Angle) .def_property_readonly("x_degrees", [](const Rotation3d * self) -> units::degree_t { return self->X(); }) .def_property_readonly("y_degrees", [](const Rotation3d * self) -> units::degree_t { return self->Y(); }) .def_property_readonly("z_degrees", [](const Rotation3d * self) -> units::degree_t { return self->Z(); }) .def_property_readonly("angle_degrees", [](const Rotation3d * self) -> units::degree_t { return self->Angle(); }) .def("__repr__", py::overload_cast(&rpy::toString)); SetupWPyStruct(cls_Rotation3d);