做一个获取地图上点要素的功能,并以该点为圆心在地图上画一个圆,同时还需要对这个点进行坐标转换,但是效果死活出不来:
var centerPoint=feature.geometry.transform(map.getProjectionObject(),proj);
var area=new OpenLayers.Geometry.Polygon.createRegularPolygon(feature.geometry,1000*bufferv,40,0);
后来发现,原来第一行执行过后,圆心feature.geometry的坐标已经变了,那个转换的方法是直接改变点本身的坐标的!!!
改成下面的就ok了:
var centerPoint=feature.geometry.clone().transform(map.getProjectionObject(),proj);
var area=new OpenLayers.Geometry.Polygon.createRegularPolygon(feature.geometry,1000*bufferv,40,0);