@@ -854,6 +854,8 @@ namespace mmscenegraph {
854854 struct ShimSceneGraph ;
855855 struct ShimFlatScene ;
856856 struct ShimEvaluationObjects ;
857+ enum class ControlPointDistribution : ::std::uint8_t ;
858+ enum class Interpolation : ::std::uint8_t ;
857859}
858860
859861namespace mmscenegraph {
@@ -1213,6 +1215,26 @@ struct ShimEvaluationObjects final : public ::rust::Opaque {
12131215};
12141216#endif // CXXBRIDGE1_STRUCT_mmscenegraph$ShimEvaluationObjects
12151217
1218+ #ifndef CXXBRIDGE1_ENUM_mmscenegraph$ControlPointDistribution
1219+ #define CXXBRIDGE1_ENUM_mmscenegraph $ControlPointDistribution
1220+ enum class ControlPointDistribution : ::std::uint8_t {
1221+ kUniform = 1 ,
1222+ kAutoKeypoints = 2 ,
1223+ kUnknown = 255 ,
1224+ };
1225+ #endif // CXXBRIDGE1_ENUM_mmscenegraph$ControlPointDistribution
1226+
1227+ #ifndef CXXBRIDGE1_ENUM_mmscenegraph$Interpolation
1228+ #define CXXBRIDGE1_ENUM_mmscenegraph $Interpolation
1229+ enum class Interpolation : ::std::uint8_t {
1230+ kLinear = 1 ,
1231+ kQuadraticNUBS = 2 ,
1232+ kCubicNUBS = 3 ,
1233+ kCubicSpline = 4 ,
1234+ kUnknown = 255 ,
1235+ };
1236+ #endif // CXXBRIDGE1_ENUM_mmscenegraph$Interpolation
1237+
12161238extern " C" {
12171239bool mmscenegraph$cxxbridge1$Point3$operator $eq(const Point3 &, const Point3 &) noexcept ;
12181240bool mmscenegraph$cxxbridge1$Point3$operator $ne(const Point3 &, const Point3 &) noexcept ;
@@ -1344,6 +1366,8 @@ bool mmscenegraph$cxxbridge1$shim_fit_plane_to_points(::rust::Slice<const double
13441366bool mmscenegraph$cxxbridge1$shim_detect_curve_pops(::rust::Slice<const double > x_values, ::rust::Slice<const double > y_values, double threshold, ::rust::Vec<double > &out_x_values, ::rust::Vec<double > &out_y_values) noexcept ;
13451367
13461368bool mmscenegraph$cxxbridge1$shim_filter_curve_pops(::rust::Slice<const double > x_values, ::rust::Slice<const double > y_values, double threshold, ::rust::Vec<double > &out_x_values, ::rust::Vec<double > &out_y_values) noexcept ;
1369+
1370+ bool mmscenegraph$cxxbridge1$shim_curve_simplify(::rust::Slice<const double > x_values, ::rust::Slice<const double > y_values, ::std::size_t control_point_count, ::mmscenegraph::ControlPointDistribution distribution, ::mmscenegraph::Interpolation interpolation_method, ::rust::Vec<double > &out_x_values, ::rust::Vec<double > &out_y_values) noexcept ;
13471371} // extern "C"
13481372} // namespace mmscenegraph
13491373
@@ -1786,6 +1810,10 @@ MMSCENEGRAPH_API_EXPORT bool shim_detect_curve_pops(::rust::Slice<const double>
17861810MMSCENEGRAPH_API_EXPORT bool shim_filter_curve_pops (::rust::Slice<const double > x_values, ::rust::Slice<const double > y_values, double threshold, ::rust::Vec<double > &out_x_values, ::rust::Vec<double > &out_y_values) noexcept {
17871811 return mmscenegraph$cxxbridge1$shim_filter_curve_pops (x_values, y_values, threshold, out_x_values, out_y_values);
17881812}
1813+
1814+ MMSCENEGRAPH_API_EXPORT bool shim_curve_simplify (::rust::Slice<const double > x_values, ::rust::Slice<const double > y_values, ::std::size_t control_point_count, ::mmscenegraph::ControlPointDistribution distribution, ::mmscenegraph::Interpolation interpolation_method, ::rust::Vec<double > &out_x_values, ::rust::Vec<double > &out_y_values) noexcept {
1815+ return mmscenegraph$cxxbridge1$shim_curve_simplify (x_values, y_values, control_point_count, distribution, interpolation_method, out_x_values, out_y_values);
1816+ }
17891817} // namespace mmscenegraph
17901818
17911819extern " C" {
0 commit comments