2013-02-08 65 views

回答

1

以下是我終於實現了它。

var measure = event.measure; 
var areaSquareMiles = measure * 0.386102; 
var radius = 0.565352 * Math.sqrt(areaSquareMiles); 
0

不知道我明白你的問題,但如果你有直徑應該不會太難: radius=diameter/2 如果你只有圓的點,想找出半徑,你可以通過計算估計直徑點之間的最大距離。根據所需的精度(插值)有不同的解決方案。希望這可以幫助。

1

就可以解決這個問題,下面的代碼:

//vectorLayer.features[0] --> Your circle feature 
var central = vectorLayer.features[0].geometry.getCentroid(); 
var point1 = new OpenLayers.Geometry.Point(central.x, central.y); 

var circlePoint = vectorLayer.features[0].geometry.components[0].components[1]; 
var point2 = new OpenLayers.Geometry.Point(circlePoint.x, circlePoint.y); 

var length = point1.distanceTo(point2); 

console.log(length * 0.0006213712) 

我希望它可以幫助你......