MeshKit
1.0
|
00001 // -*- C++ -*- 00002 00003 //#include "AdjModel.h" 00004 #include "std.h" 00005 #include "Mat4.h" 00006 #include "meshkit/QslimOptions.hpp" 00007 #include "moab/EntityHandle.hpp" 00008 #include "moab/Interface.hpp" 00009 extern moab::Interface * mb; 00010 extern QslimOptions opts; 00011 00012 extern Mat4 quadrix_vertex_constraint(const Vec3&); 00013 extern Mat4 quadrix_vertex_constraint(moab::EntityHandle vert); 00014 extern Mat4 quadrix_plane_constraint(double a, double b, double c, double d); 00015 extern Mat4 quadrix_plane_constraint(moab::EntityHandle triangle);// (Face& T); 00016 extern Mat4 quadrix_plane_constraint(const Vec3& n, double); 00017 extern Mat4 quadrix_plane_constraint(const Vec3&, const Vec3&, const Vec3&); 00018 extern double quadrix_evaluate_vertex(const Vec3& v, const Mat4& K); 00019 00020 00021 extern bool is_border(moab::EntityHandle mbedge);//(Edge *); 00022 extern bool check_for_discontinuity(moab::EntityHandle mbedge);//(Edge *); 00023 extern Mat4 quadrix_discontinuity_constraint(moab::EntityHandle mbedge, const Vec3&);//(Edge *, const Vec3&); 00024 extern Mat4 quadrix_discontinuity_constraint(moab::EntityHandle mbedge);//(Edge *); 00025 00026 00027 extern bool quadrix_find_local_fit(const Mat4& K, 00028 const Vec3& v1, const Vec3& v2, 00029 Vec3& candidate); 00030 extern bool quadrix_find_line_fit(const Mat4& Q, 00031 const Vec3& v1, const Vec3& v2, 00032 Vec3& candidate); 00033 extern bool quadrix_find_best_fit(const Mat4& Q, Vec3& candidate); 00034 extern double quadrix_pair_target(const Mat4& Q, 00035 moab::EntityHandle v1, //Vertex *v1, 00036 moab::EntityHandle v2, //Vertex *v2, 00037 Vec3& candidate);