Many of our public APIs have some optional arguments with default values, but this can be inconsistent between our C++ and python APIs.
For example, the Plane class has only one optional argument in c++: _tolerance
|
public: std::optional<Vector3<T>> Intersection( |
|
const Vector3<T> &_point, |
|
const Vector3<T> &_gradient, |
|
const double &_tolerance = 1e-6) const |
whereas all of its arguments are optional in python:
|
.def("intersection", |
|
&Class::Intersection, |
|
py::arg("_point") = gz::math::Vector3<T>::Zero, |
|
py::arg("_gradient") = gz::math::Vector3<T>::Zero, |
|
py::arg("_tolerance") = 1e-6, |
|
"Get the intersection of an infinite line with the plane, " |
|
"given the line's gradient and a point in parametrized space.") |
Many of our public APIs have some optional arguments with default values, but this can be inconsistent between our C++ and python APIs.
For example, the
Planeclass has only one optional argument in c++:_tolerancegz-math/include/gz/math/Plane.hh
Lines 122 to 125 in 8292148
whereas all of its arguments are optional in python:
gz-math/src/python_pybind11/src/Plane.hh
Lines 79 to 85 in 8292148