当前位置: 首页 > news >正文

上海网站建设推荐案例甘肃网络公司网站建设

上海网站建设推荐案例,甘肃网络公司网站建设,在线网站备份,专门做毕设的网站注#xff1a;当前使用的是 ol 9.2.4 版本#xff0c;天地图使用的key请到天地图官网申请#xff0c;并替换为自己的key 在WebGIS系统开发中#xff0c;坐标系统是重中之重#xff0c;对于创建的地图#xff0c;加载的图层#xff0c;首先要确定的就是坐标系。在OpenLay… 注当前使用的是 ol 9.2.4 版本天地图使用的key请到天地图官网申请并替换为自己的key 在WebGIS系统开发中坐标系统是重中之重对于创建的地图加载的图层首先要确定的就是坐标系。在OpenLayers或者其他地图开发库中一般默认支持EPSG:4326地理坐标系和EPSG:3857投影坐标系而在生产实践中要求使用EPSG:4490CGCS2000也就是2000国家大地坐标系所以我们需要借助投影库自定义2000坐标系。 1. Proj4投影库介绍 下载地址[http://proj4js.org/](http://proj4js.org/)在系统中调用**proj4.defs**方法定义坐标信息proj4具有两种定义方式可以传入一个简单对象也可以传入一个数组对象对于坐标信息需要传入两个参数sysName表示坐标系名称如EPSG:4490sysDef表示定义坐标信息。 // 方式1 proj4.defs(sysName, sysDef)// 方式2 proj4.defs([[sysName, sysDef],[sysName, sysDef] ])2. 定义坐标系统 在定义坐标系统之前需要知道坐标信息从[https://epsg.io/](https://epsg.io/)可以查看对应坐标系统定义信息。下面以定义4490坐标系为例。在OpenLayers中使用proj4定义坐标系后需要调用register方法注册坐标系然后使用投影类Projection声明坐标系。 const def projlonglat ellpsGRS80 no_defs proj4.defs(EPSG:4490, def) register(proj4) return new Projection({code: EPSG:4490,units: degrees })**register**说明大意就是要使proj4中定义的投影使用proj4.def()在OpenLayers中可用。需要proj4的版本大于等于2.8.0。并且每当对proj4注册表进行更改时如在调用proj4.def()之后都应该调用register函数。此函数不会修改现有变换。具体信息见官网[https://openlayers.org/en/v9.2.4/apidoc/module-ol_proj_proj4.html](https://openlayers.org/en/v9.2.4/apidoc/module-ol_proj_proj4.html) 3. EPSG代码 在坐标系统中每一个坐标系都有一个编号就和名字用来标识人一样在坐标系统中用EPSG代码来表示坐标系。例如地理坐标系WGS84的EPGG代码为43262000国家大地坐标系的EPGG代码为4490。而在ArcGIS API for JS中用wkid(well-known ID)表示如wkid:4326。 4. 使用坐标系 在OpenLayers中使用View类定义整个视图的坐标系对于默认坐标系只需要使用EPSG:EPSG_CODE即可对于自定义坐标系设置Projection对象。 // 默认坐标系3857 view: new ol.View({center: [116.403414, 39.904091],zoom: 5,worldsWrap: false,minZoom: 1,maxZoom: 20,projection: EPSG:3857, }),// 自定义坐标系4490 const EPSG4490 new Projection({code: EPSG:4490,units: degrees }) view: new ol.View({center: [116.403414, 39.904091],zoom: 5,worldsWrap: false,minZoom: 1,maxZoom: 20,projection: EPSG4490, }),5. 完整代码 /*** description:坐标应用系统* author: noone* time: **/import { register } from ol/proj/proj4; import proj4 from proj4; import Projection from ol/proj/Projection;const EPSG4326 new Projection({code: EPSG:4326,units: degrees })const getEPSG4490 () {const def projlonglat ellpsGRS80 no_defsproj4.defs(EPSG:4490, def)register(proj4)return new Projection({code: EPSG:4490,units: degrees}) }const getEPSG3857 () {const def projmerc a6378137 b6378137 lat_ts0.0 lon_00.0 x_00.0 y_00 k1.0 unitsm nadgridsnull wktext no_defsproj4.defs(EPSG:3857, def)register(proj4)return new Projection({code: EPSG:3857,units: m}) } const getEPSG4522 () {const def projtmerc lat_00 lon_0102 k1 x_034500000 y_00 ellpsGRS80 unitsm no_defs typecrsproj4.defs(EPSG:4522, def)register(proj4)return new Projection({code: EPSG:4522,units: m}) } const EPSG3857 getEPSG3857() const EPSG4490 getEPSG4490() const EPSG4522 getEPSG4522() export default {EPSG4326,EPSG4490,EPSG3857,EPSG4522 }6. 参考资料 投影库http://proj4js.org/坐标信息参考 名称地址EPSGhttps://epsg.io/#google_vignetteSpatial Reference Listhttps://spatialreference.org/ref/ **WKID参考** 坐标系地址Geographic coordinate systemshttps://developers.arcgis.com/rest/services-reference/enterprise/35635b7d4d5d1d067e9c5a81171e9d04/gcs_PDF_11.3.pdfProjected coordinate systemshttps://developers.arcgis.com/rest/services-reference/enterprise/bb671c02b392638ef66fab209ee9c711/pcs_PDF_11.3.pdf import { register } from ol/proj/proj4; import proj4 from proj4; import Projection from ol/proj/Projection; /*** description:坐标应用系统* author: zyc* time: 2022-09-01**/const EPSG4326 new Projection({code: EPSG:4326,units: degrees,extent: [], // 投影坐标范围worldExtent: [] // 世界经纬度范围 })const getEPSG4490 () {const def projlonglat ellpsGRS80 no_defsproj4.defs(EPSG:4490, def)register(proj4)return new Projection({code: EPSG:4490,units: degrees,extent: [73.62,16.7,134.77,53.56], // 投影坐标范围worldExtent: [-180,-90,180,90] // 世界经纬度范围}) }const getEPSG3857 () {const def projmerc a6378137 b6378137 lat_ts0.0 lon_00.0 x_00.0 y_00 k1.0 unitsm nadgridsnull wktext no_defsproj4.defs(EPSG:3857, def)register(proj4)return new Projection({code: EPSG:3857,units: m,extent: [], // 投影坐标范围worldExtent: [] // 世界经纬度范围}) } const getEPSG4522 () {const def projtmerc lat_00 lon_0102 k1 x_034500000 y_00 ellpsGRS80 unitsm no_defs typecrsproj4.defs(EPSG:4522, def)register(proj4)return new Projection({code: EPSG:4522,units: m,extent: [34344166.57,2337470.19,34655833.43,4729373.22], // 投影坐标范围worldExtent: [100.5,21.13,103.5,42.69] // 世界经纬度范围}) } const EPSG3857 getEPSG3857() const EPSG4490 getEPSG4490() const EPSG4522 getEPSG4522() export default {4326: EPSG4326,4490: EPSG4490,3857: EPSG3857,4522: EPSG4522 }OpenLayers示例数据下载请回复关键字ol数据 全国信息化工程师GIS 应用水平考试资料请回复关键字GIS考试 【GIS之路】 已经接入了智能助手欢迎关注欢迎提问。 欢迎访问我的博客网站-长谈GIShttp://shanhaitalk.com 都看到这了不要忘记点赞、收藏 关注 哦 本号不定时更新有关 GIS开发 相关内容欢迎关注 !
http://www.laogonggong.com/news/114211.html

相关文章:

  • 企业汽车网站建设长沙网站建设哪个好
  • 浪琴手表网站做门户网站的思路
  • 宜昌建设网站梅州建站找哪家
  • 自己做网络棋牌网站流程aso关键词覆盖优化
  • 兼职网站建设 开源北京软件开发培训班
  • 温州市鹿城区建设小学网站php网站开发linux
  • 招聘网站开发需求分析网络营销是什么的基础选择题
  • 本溪 网站建设 做网站cms系统什么意思
  • 建网站要会什么微商城系统哪家强
  • 益阳网站设计公司长沙传统网络营销介绍
  • 钓鱼网站的域名怎么不稳定简单的软件开发工具
  • 成立做网站的公司活动策划ppt
  • 提供网站建设哪家效果好成都公司注册核名官网
  • 长沙建站位找有为太极广大seo排名优化教学
  • seo案例网站建设哪家好虚拟主机网站源码
  • 门户网站如何运营网站备案完电信
  • 北京网站建设公司如何选新闻头条
  • 大连公司网站建设廖雪峰的网站怎么做的
  • 国外效果超炫网站wordpress案例讲解
  • 投诉举报网站 建设方案wordpress彩虹条代码
  • 常熟市住房和城乡建设局网站企业网站优化案例
  • 4mm钢筋网片价格团购网站如何优化
  • 怎么做彩票平台网站吗九江seo公司
  • 红叶网站建设方案怎么创建一个网页
  • 无锡公司网站建设樟树市建设局网站
  • 摩托车网站建设湖北省建设人力资源网站
  • 山西太原建站哪家弿网站域名费用怎么做分录
  • 网站建设用户调查问卷百度指数里的资讯指数是什么
  • 医院网站建设山东网站短信验证码怎么做
  • 网站备案多少岁如何制作一个软件app