ViewDesignEngine  3.1.0
高性能 CAD 计算几何引擎
tessellation.h
浏览该文件的文档.
1 #pragma once
2 #include "vde/core/point.h"
3 #include <vector>
4 #include <array>
5 #include <functional>
6 
7 namespace vde::curves {
8 using core::Point3D;
9 using core::Vector3D;
10 
31 std::pair<std::vector<Point3D>, std::vector<std::array<int, 3>>>
32 tessellate(const std::function<Point3D(double,double)>& eval,
33  int res_u, int res_v);
34 
63 std::pair<std::vector<Point3D>, std::vector<std::array<int, 3>>>
65  const std::function<Point3D(double,double)>& eval,
66  const std::function<Vector3D(double,double)>& normal_fn,
67  int min_res = 2, int max_depth = 6,
68  double angle_threshold_deg = 5.0);
69 
70 } // namespace vde::curves
std::pair< std::vector< Point3D >, std::vector< std::array< int, 3 > > > tessellate(const std::function< Point3D(double, double)> &eval, int res_u, int res_v)
均匀参数化曲面三角化
std::pair< std::vector< Point3D >, std::vector< std::array< int, 3 > > > adaptive_tessellate(const std::function< Point3D(double, double)> &eval, const std::function< Vector3D(double, double)> &normal_fn, int min_res=2, int max_depth=6, double angle_threshold_deg=5.0)
自适应曲面三角化
foundation::Vector3D Vector3D
双精度三维向量(重新导出)
Definition: point.h:49
foundation::Point3D Point3D
双精度三维点(重新导出)
Definition: point.h:31