// 动态标注 private void btn_DynamicMarker_Click(object sender, EventArgs e) { GSOGeoDynamicMarker marker = new GSOGeoDynamicMarker(); //设置标注位置 marker.Position = new GSOPoint3d(120.4178, 31.328, 0); //标注模式:依附模型表面 marker.AltitudeMode = EnumAltitudeMode.ClampToModel; marker.TimerInterval = 50000; marker.PlaySpeed = 10; //运动速度 marker.Play(); //播放 //marker.Stop();//停止动画 GSOMarkerStyle3D markerStyle = new GSOMarkerStyle3D(); //设置显示图片位置(.gif动态图) markerStyle.IconPath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "image/flag1.gif"); markerStyle.IconScale = 4; //图片显示缩放倍数 marker.Style = markerStyle; //将Style赋给marker AddNewGeoToLayer(marker, "动态标注"); }
private void MenuItemAddDynamicMarker_Click(object sender, EventArgs e) { GSOFeature newFeature = new GSOFeature(); GSOGeoDynamicMarker geoDynamicMarker = new GSOGeoDynamicMarker(); GSOCameraState cameraState = globeControl1.Globe.CameraState; geoDynamicMarker.SetPosition(cameraState.Longitude, cameraState.Latitude, 0); geoDynamicMarker.TimerInterval = 20; geoDynamicMarker.Play(); GSOMarkerStyle3D style3d = new GSOMarkerStyle3D(); style3d.IconPath = Path.GetDirectoryName(Application.ExecutablePath) + "/Resource/gif/flag1.gif"; style3d.IconScale = 2; geoDynamicMarker.Style = style3d; newFeature.Geometry = geoDynamicMarker; newFeature.Name = "动态地标"; ShowAddFeatureDlg(newFeature); }