我有以下代码;
vtkSmartPointer<vtkPoints> points = doc->m_.points;
for(int i =0; i<points->GetNumberOfPoints();i++){
double point[3];
points->GetPoint(i,point);
}
我随后将这些点值写入文件。当我正常运行程序(在调试配置中)并检查文件时,在i = 921到i = 950之间,所有节点值如下所示;
921 -0.86404 -1.56526e+020 1.45676
922 -3.22686e-024 1.65049 -1.84038e+018
923 -0.688541 -1.17037e+031 1.45647
924 3.87651e-010 1.6554 1.05914e-009
925 0.813721 8.37409e-010 1.45736
926 8.80064e+037 1.6603 9.43973e-033
但是当我调试这段代码时(在调试配置中)我可以看到GetPoint()返回以下正确写入文件的值;
921 -0.00132704 -0.00132704 -0.00132704
922 -0.00132704 -0.00132704 -0.00132704
923 -0.00132704 -0.00132704 -0.00132704
924 -0.00132704 -0.00132704 -0.00132704
925 -0.00132704 -0.00132704 -0.00132704
926 -0.00132704 -0.00132704 -0.00132704
这怎么可能? getPoint()是一个内部vtk函数。
如果对此问题有任何见解,我将不胜感激。 感谢。