- 博客(67)
- 资源 (2)
- 收藏
- 关注
原创 Cesium笔记 canvas定制billboard
Cesium 中label时,想要设置text的背景图片时,label没有backgroundimage属性。如果使用label+billboard 的方式设置,会存在文本长短不一时,图片不能自适应等问题。
2024-09-27 16:48:21
672
1
原创 Cesium笔记 label billboard 调整偏移量
其中 pixelOffset: new Cesium.Cartesian2(0, -20), 用于调整label 以及 billboard 的左右以及上下偏移 x 为左右 y 为上下 正:右 下 负:左 上。如果billboard 遮住了label 使标签不显示 则设置 eyeOffset: new Cesium.Cartesian3(0, 0, -10)
2024-06-03 11:22:43
1344
原创 Cesium笔记 初始化 原生Cesium
The "HelloWorld" component has been registered but not used 问题 例如xxx已经注册,但是为使用这种问题 eslint 问题 解决办法是:package.json 文件eslintConfig 添加。4、将Cesium.js 以及样式文件widgets.css在index.html中引用。CesiumMap.vue文件不支持ts,改用js写,如要用ts请百度。5、新建vue文件,在vue文件中初始化场景。可以从官网下载,也可以使用node下载。
2024-01-09 17:10:55
803
原创 Swiper 图片轮播
效果:两张图并列,并依次轮播,并实现点击某张图片弹出大图参考代码以及效果:其中110实例Swiper演示 - Swiper中文网收录了Swiper的40多个在线示例(swiper demos),Swiper是纯javascript打造的滑动特效插件,面向手机、平板电脑等移动终端,以及PC端网站能实现触屏焦点图、触屏Tab切换、触屏多图切换等常用效果。https://www.swiper.com.cn/demo/index.html代码如下<div class="swiper-co..
2021-10-21 16:51:02
1057
3
原创 Cesium笔记 生成抛物线 流动线
效果图代码思路,根据起点终点坐标以及需要设置的抛物线高度生成抛物线坐标串,然后根据坐标串生成cesium实体线,并修改材质为流动线viewer.entities.removeById('pwxline') viewer.entities.removeById('verticalPwxline') let startPoint = this.clickPoint let endPoint = row.geoPositon.split(',') l.
2021-07-19 10:54:04
6377
10
原创 Cesium笔记 计算两点之间得距离(经纬度)
//计算两点间距离getFlatternDistance(lat1,lng1,lat2,lng2){varEARTH_RADIUS=6378137.0//单位MvarPI=Math.PIfunctiongetRad(d){return(d*PI)/180.0}varf=getRad((lat1+lat2)/2)varg=getRad(...
2021-06-29 10:01:08
633
转载 js 返回圆外接矩形的最大最小经纬度
getCircleBround(lon,lat,raidus){ var PI = 3.14159265; var EARTH_RADIUS = 6378137; var RAD = Math.PI / 180.0; var latitude = lat; var longitude = lon; var degree = (24901*1609)/360.0; var raidusMile = raidus; var dpmLat = 1/degr.
2021-06-01 14:51:45
288
原创 cesium笔记 加载arcgis server服务
viewer.imageryLayers.remove(this.addArcgisLayer);//移除上一次加载的图层 let res = this.$refs.tree.getCheckedNodes(true);//只获取所有子节点 let arr = [] res.forEach((item) => { arr.push(i...
2021-05-13 11:34:54
2202
原创 arcgis api 根据坐标串生成多边形,并添加到地图
let point = [[],[], [], [], [], [],[], [],[], [],[]];//坐标串,实例[[118.00,23.0],[118.01,32.01]] let polyGon = new mapModules.Polygon([point], new mapModules.SpatialReference({wkid:4326}));//arcgis api的数据格式 所以添加的数据[point] let s..
2021-05-11 10:06:26
1020
原创 地图打印 js
//arcgis api 地图打印mapPrint() { this.$message('请绘制多边形'); this.toolBars = new mapModules.Draw(map); this.toolBars.activate(mapModules.Draw.POLYGON); this.toolBars.on("draw-end", (evt) => { let graphic = new mapModules.Graphic(evt..
2021-05-05 11:38:44
377
原创 arcgis for js 求线与线的交点
//求多段线的交点 polyLinesIntersection(polyline, polyline2) { let result = []; for (let j = 0; j < polyline.length - 1; j++) { let tempLine = [polyline[j], polyline[j + 1]]; f.
2021-04-29 11:20:06
864
1
原创 Cesium笔记 加载GeoServer服务,以及跨域问题
一、加载如下的GeoServer发布地图服务加载代码如下,其中url为红线框选部分,layers为发布的图层NAME//加载GeoServer图层,测试数据 ShowTestData() { var layer = new Cesium.WebMapServiceImageryProvider({ url: 'url', layers: 'pipelin...
2020-10-13 11:11:42
4624
1
原创 Cesium笔记 迪克特斯拉 Dijkstra 最短路径算法
在进行三维管线连通性分析时,需要运用到最短路径算法,主要思路为首先初始化图,然后将查询到的管点以及管线分别作为图的顶点数以及边数。export default { PathMatirx: [], // 用于存储最短路径下标的数组,下标为各个顶点,值为下标顶点的前驱顶点 ShortPathTable: [], //用于存储到各点最短路径的权值和 G: {}, clear: function () { this.G = {}; this.P
2020-08-25 10:09:34
806
1
原创 Cesium笔记 笛卡尔坐标与WGS84相互转
/** * 笛卡尔坐标转WGS84 * @param Cartesian3 单个点或点数组 */ Cartesian3ToWGS84: (Cartesian3) => { if (!Cartesian3 || !Cartesian3.x) { throw "Error in parameters"; } let _cartesian3 = new Cesium.Cartesian3(Cart.
2020-08-04 08:59:00
1863
1
原创 Cesium 笔记 js Cesium 返回范围的数据
由于刚接触Cesium,在加载的3DTitles数据中没有属性数据,所有需要读shp中的属性,用来进行接下来的分析功能,但是由于数据量太大,直接读取会造成内存过溢,浏览器崩掉,所以,在学长的帮助下,提议将shp数据发布服务,进行分析时(例如管线的爆管分析),点击某个管线时,获取点击的坐标,然后定义一个Geometry extent范围,查询定义的范围内的数据,来进行各种分析功能。首先根据点击的管线,可以得到屏幕坐标,将屏幕坐标转成84坐标,可以以这个点的坐标为中心定义范围,从而查询数据var ca
2020-07-25 17:41:51
609
1
原创 ArcEnging GridControl双击一条记录,Map中高亮显示该记录要素,并缩放至该要素
private void MisTakeInfor_DoubleClick(object sender, EventArgs e) {//MisTakeInfor为Gridcontrol控件 ILayer pLayer = null; axMapControl1.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection, null, null); ..
2020-07-15 14:54:51
191
原创 Arcenging 实现Toccontrol左键移动图层顺序
1、首先定义全局变量 //调整图层 public ITOCControl mTOCControl; public ILayer pMoveLayer; public int toIndex;2、在窗体load事件中,添加 mTOCControl = axTOCControl2.Object as ITOCControl; 3、定义toc的onmousedown事件,并定义为左键private void axTOCControl2_On
2020-07-14 16:44:00
838
1
转载 AE的空间分析
https://www.cnblogs.com/aegisada/p/3567087.htmlhttps://www.cnblogs.com/alex-bn-lee/archive/2012/06/17/2552557.html(记录下来,以备不时之需,哈哈...)
2020-07-10 15:45:06
330
转载 C# Dev控件 GridControl导出Excel
//导出错误信息 private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { export(MisTakeInfor); } public void export(GridControl gridControl1) { SaveFileDialog s..
2020-07-09 10:31:06
745
原创 vs2019 打包exe
一、首先重新生成一下项目;二、右键解决方案,添加,新建项目,setup project(如果没有setup project这个选项在https://marketplace.visualstudio.com/items?itemName=VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects&ssr=false#overview下载扩展工具)三、选择项目输出四、注意是你项目的主输出(主程序部分)选择质检小程序
2020-06-19 15:12:22
4654
原创 Cesium笔记 初始化场景
开始步入cesium的学习,可能比较低级,但慢慢的会越来越好的。 var viewer,scene,ellipsoid; Cesium.Ion.defaultAccessToken = '密钥'; viewer = new Cesium.Viewer('cesiumContainer', { animation: false, //是否显示动画控件 shouldAnimate: true
2020-05-26 10:37:25
1097
1
原创 获取父窗口的iframe并改变其地址
window.parent.document.getElementById("myiframe").src='ToGisDetail.action?GId=" + GId' ;js在父页面获取iframe子页面元素代码如下:window.frames["iframe_ID"].document.getElementById("元素id");...
2019-06-17 11:18:50
1231
原创 js 动态生成div并添加点击事件
/* 动态生成div */ function creatDiv(){ $.ajax({ type: "POST", url: "GetGis.action", success: function(msg){ var obj = eval("(" + msg + ")"); for(var i=0;i<obj.length;i++){ ...
2019-05-20 11:02:55
17717
原创 C语言,利用栈存储把一个十进制转化成二进制
#include"stdio.h"#include"stdlib.h"#include"malloc.h"#define MaxSize 50typedef int ElemType;typedef struct{ ElemType data[MaxSize]; int top;} Stack;void InitStack(Stack *S) { S->top=-...
2019-03-19 11:11:15
2737
Cesium加载Geoserver跨域问题
2020-10-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人