我的程序将点云保存到文件中,其中每个点云都是Point3D[,]
来自System.Windows.Media.Media3D
命名空间的 . 这显示了输出文件的一行(葡萄牙语):
-112,644088741971;71,796623005014;NaN (Não é um número)
虽然我希望它是(为了之后正确解析):
-112,644088741971;71,796623005014;NaN
生成文件的代码块在这里:
var lines = new List<string>();
for (int rows = 0; rows < malha.GetLength(0); rows++) {
for (int cols = 0; cols < malha.GetLength(1); cols++) {
double x = coordenadas_x[cols];
double y = coordenadas_y[rows];
double z;
if ( SomeTest() ) {
z = alglib.rbfcalc2(model, x, y);
} else {
z = double.NaN;
}
var p = new Point3D(x, y, z);
lines.Add(p.ToString());
malha[rows, cols] = p;
}
}
File.WriteAllLines("../../../../dummydata/malha.txt", lines);
似乎double.NaN.ToString()
从 inside 调用的方法Point3D.ToString()
包括我根本不想要的带括号的“附加解释”。
有没有办法改变/覆盖这个方法,使它只输出NaN
,没有括号部分?