Angularjs 谷歌地球区域不工作
以下代码位于角度指令中:Angularjs 谷歌地球区域不工作,angularjs,directive,google-earth-plugin,Angularjs,Directive,Google Earth Plugin,以下代码位于角度指令中: // -- Regions stuff var regions = {}; regions.us = {}; var lod = ge.createLod(''); var ne = {n:37.3214096102,s:26.9898707181,e:-90.4503326416,w:-107.730612278}; lod.set(128, -1, 0, 0); //107.730
// -- Regions stuff
var regions = {};
regions.us = {};
var lod = ge.createLod('');
var ne = {n:37.3214096102,s:26.9898707181,e:-90.4503326416,w:-107.730612278};
lod.set(128, -1, 0, 0);
//107.730612278,26.9898707181 -90.4503326416,26.9898707181 -90.4503326416,37.3214096102 -107.730612278,37.3214096102
var usNe = ge.createLatLonAltBox('');
usNe.setAltBox(
ne.n, // north
ne.s, // south
ne.e, // east
ne.w, // west
0, // rotation
0, // min altitude
0, // max altitude
ge.ALTITUDE_RELATIVE_TO_GROUND // mode
);
regions.us.ne = ge.createRegion('');
regions.us.ne.set(usNe, lod); // lat lon alt box, level of detail
// --
var icon = ge.createIcon('');
var offIcon = ge.createIcon('');
var style = ge.createStyle('');
var offStyle = ge.createStyle('');
icon.setHref(window.location.href + '/assets/images/lightbulb.png');
offIcon.setHref(window.location.href + '/assets/images/lightbulb_off.png');
style.getIconStyle().setIcon(icon);
offStyle.getIconStyle().setIcon(offIcon);
style.getIconStyle().setScale(1);
offStyle.getIconStyle().setScale(1);
icon.setViewRefreshMode(ge.VIEW_REFRESH_ON_REGION);
offIcon.setViewRefreshMode(ge.VIEW_REFRESH_ON_REGION);
icon.setW(16);
icon.setH(16);
offIcon.setW(16);
offIcon.setH(16);
scope.control.createPlacemark = function (lat, lng, sale, to) {
to = to || 0;
var placemark = ge.createPlacemark('');
var point = ge.createPoint('');
point.setLatitude(+lat);
point.setLongitude(+lng);
placemark.setGeometry(point);
placemark.setStyleSelector(style);
ge.getFeatures().appendChild(placemark);
if (+lng <= ne.e && +lng >= ne.w && +lat >= ne.s && +lat <= ne.n) {
placemark.setRegion(regions.us.ne);
console.log('done!');
}
$timeout(function () {
placemark.setStyleSelector(offStyle);
}, to);
return placemark;
};
/--Regions-stuff
var区域={};
regions.us={};
var lod=ge.createLod(“”);
var ne={n:37.3214096102,s:26.9898707181,e:-90.4503326416,w:-107.730612278};
lod.set(128,-1,0,0);
//107.730612278,26.9898707181 -90.4503326416,26.9898707181 -90.4503326416,37.3214096102 -107.730612278,37.3214096102
变量usNe=ge.createLatLonAltBox(“”);
usNe.setAltBox(
东北///北
东北,南,//南
东北///东
西北,西
0,//旋转
0,//最低高度
0,//最大高度
ge.高度相对于地面//模式
);
regions.us.ne=ge.createRegion(“”);
regions.us.ne.set(usNe,lod);//横向高度框,详细程度
// --
var icon=ge.createIcon(“”);
var offIcon=ge.createIcon(“”);
var style=ge.createStyle(“”);
var offStyle=ge.createStyle(“”);
icon.setHref(window.location.href+'/assets/images/lightbulb.png');
officecon.setHref(window.location.href+'/assets/images/lightbulb_off.png');
style.getIconStyle().setIcon(图标);
offStyle.getIconStyle().setIcon(offIcon);
style.getIconStyle().setScale(1);
offStyle.getIconStyle().setScale(1);
icon.setViewRefreshMode(ge.VIEW\u REFRESH\u位于\u区域);
offIcon.setViewRefreshMode(ge.VIEW\u REFRESH\u ON\u REGION);
图标。setW(16);
塞思(16岁);
环境运输及工务局局长(16);
赛斯警官(16);
scope.control.createPlacemark=功能(lat、lng、销售、收件人){
to=to | | 0;
var placemark=ge.createPlacemark(“”);
var point=ge.createPoint(“”);
设置纬度(+lat);
点经度(+lng);
placemark.setGeometry(点);
placemark.setStyleSelector(样式);
ge.getFeatures().appendChild(placemark);
如果(+lng=ne.w&&+lat>=ne.s&&+lat,那么创建与我的区域关联的文件夹就解决了我的问题。我有太多的位置标记,以至于很难分辨哪个位置标记与该区域关联,而上面的代码只关联了一个位置标记(不确定这是否是预期行为)
生成的代码看起来像
var folder = ge.createFolder('');
folder.setRegion(region);
ge.getFeatures().appendChild(folder);
// Then later in the placemark creation method
folder.getFeatures().appendChild(placemark);