如何在javascript中比较两个常见的文本点?例如,如果点是a = POINT(78.067606 12.994332) , b=POINT(78.067606 12.994332) ,,那么如果我们比较(a==b),它会给出false,而不是true。为什么?有什么帮助吗?
发布于 2012-11-09 19:24:58
你可以比较点的WKT (这只是两个字符串的比较):
var p1 = new OpenLayers.Geometry.Point(10.123, 10.456);
var p2 = new OpenLayers.Geometry.Point(10.123, 10.456);
var wkt1 = p1.toString();
var wkt2 = p2.toString();
if (wkt1 == wkt2)
alert('Works as expected!');有时,点之间可能非常接近,但它们的坐标可能略有不同。另一种选择是控制几何图形之间的距离:
var p1 = new OpenLayers.Geometry.Point(10.123, 10.456);
var p2 = new OpenLayers.Geometry.Point(10.124, 10.457);
var allowedDist = 0.002;
var dist = p1.distanceTo(p2);
if (dist < allowedDist)
alert('Points are close enough');https://stackoverflow.com/questions/13304706
复制相似问题