cgal上

时间:2015-11-26 12:31:25

标签: cgal

我正在从xyz文件中检索坐标x,y,z以计算delaunay。这些值具有双精度。

如果我打印或保存点的值,则x和y不再具有双精度,但z确实如此。我调试了该程序,如果我将监视表达式添加为*(double*)<address of the x>,我会得到原始的double值。

我已尝试将point().x()投射到*(double*),但当然x()会返回double,而不是double*。不知何故,检索时精度会丢失。

有任何线索吗?

我正在使用

typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Projection_traits_xy_3<K>  Gt;

typedef CGAL::Triangulation_vertex_base_2<Gt> Vb;
typedef CGAL::Delaunay_mesh_face_base_2<Gt> Fb;
typedef CGAL::Triangulation_data_structure_2<Vb, Fb> Tds;
typedef CGAL::Constrained_Delaunay_triangulation_2<Gt, Tds> CDT;

谢谢!

1 个答案:

答案 0 :(得分:0)

没关系,我只需要改变流的精度。

outstream << std::fixed << setprecision(4) ;