新普金娱乐网址


“章法”——资深财经人的地理自媒体之路(下篇)

当985的本科生和平凡本科生成为同班后……数学

(十五)WebGIS中活动功效的统筹和落实

  • 一月 13, 2019
  • 地理
  • 没有评论

小说版权由作者李晓晖和和讯共有,若转载请于显然处标明出处:http://www.cnblogs.com/naaoveGIS/

这些年,大家学过的编程语言——Python篇

1.前言

这一章大家将详细讲解WebGIS工具栏中另一个基础工具——平移工具(Pan)。在介绍命令格局时,我们早已精晓了此工具为Tool型的。

这些工具关键有如下多少个功能:

A.当切换来此工具上时,按下鼠标不放,移动鼠标时方可拖动地图。

B.当切换到此工具上时,点击鼠标(鼠标不做运动),可以使地图平移,以点击处为主干。

Hello World!不少人都与那句话邂逅在我们中期学习编程的时候。

2.设计

2014年112月的编程语言排名榜中,Python位列在不少言语中的第8位,从来保持在前列。初学者看着简单清晰的言语极其容易上手。尽管不是当真钻探Python的人,首次读程序也有涉猎一篇盖尔语文摘的感觉到。所以今日小编,推荐给大家Python类其余书,从初级开首,总有适合您的那一本。

2.1 原理

我们已经清楚,WebGIS中图层的原形是Canvas。平移效果的贯彻,其实质就是改变各Canvas的左上角坐标。

此间自己给出示意图:

            图片 1           

1、《Python大旨编程》(第二版)

2.2提一个题材

当我把栅格图层所对应的canvas也移步后(事实上,所有的栅格canvas都是一个母容器(mapCanvas)中的child,平移是从来操作mapCanvas),此时大家再将屏幕地理范围内的瓦片请求回来时,贴到已经平移后的canvas上,会不会油但是生瓦片呈现错乱呢?

答案是:不会的。下边,我大体讲一下原因。

在大家做运动时,我们不是概括的只对canvas的原点做了运动,大家同时还会更具平移大小换算出真正的地理平移,然后对实际的屏幕地理范围举办相应的变更。这样便会招致一个这么的结果:插手栅格图层的canvas原点是A,平移后变为了A1,而移动后再次请求的瓦片,其每个瓦片的原点所对应的便是A1,而不再是A。这样,我们便解决了移动栅格图层后,重新请求瓦片而造成的瓦片错乱问题。

合计销量四万册;第三版已进入排版状态

2.3 平移公式

mapCanvas.y=mapCanvas.y+moveY;

mapCanvas.x=mapCanvas.x+moveX;

screenGeoBounds.bottom=screenGeoBounds.bottom+(sliceLevelLength/tileSize)*(moveY);

screenGeoBounds.top=screenGeoBounds.top+(sliceLevelLength/tileSize)*(moveY);

screenGeoBounds.left=screenGeoBounds.left-(sliceLevelLength/tileSize)*(moveX);

screenGeoBounds.right=screenGeoBounds.right-(sliceLevelLength/tileSize)*(moveX);

内部,mapCanvas表示(栅格或矢量)图层,screenGeoBounds表示屏幕地理范围,slieceLevelLength代表地图当前级别中一个瓦片所表示的骨子里地理长度,tileSize表示的是一张瓦片的屏幕像素。

Python领域经典、权威的付出指南,不可错过的编程实践宝典!

3.实现

初学Python这是一本有关Python开发的显要指南
涵盖最近公布的Pyttlon版本的中央成效特色,而不仅仅是语理学习更多的高阶内容,如正则表明式、网络、多线程、图形用户界面、Web/CGl和Python扩张等
包括多少个全新的章节,关于数据库、网络客户端、Java/Jytt30n和Microsoft
Office等
展示数以百计的代码片段、交互实例和大量增长您的Python技能的实用训练。

3.1 拖拽平移的落实

A.当鼠标触发mouseDown事件时,给全局变量flag赋值true,表示鼠标已经点下,记录下startPoint。

B.当鼠标触发mouseMove事件时,判断flag是否为true,尽管是,调用平移公式,使图层出现活动,算出屏幕像素的移位mouseX和mouseY。

此间还足以持续增添,假诺有任何图层或者功用需要监听到地图平移时间,可以抛出一个地形图平移事件,抛出的参数可以设置为这儿鼠标所在的地理坐标(通过鼠标的屏幕坐标转换而得),以及鼠标平移的地理长度(通过mouseX和mouseY转换而得)。屏幕坐标与地理坐标的变换可以参考这一个体系的第十章。

C.当鼠标触发mouseUp事件时,判断屏幕地理范围加上移动的地理长度后,是否在全路瓦片请求的容差范围内,即便在的话不用触发瓦片请求;如若不在的话,则需触发瓦片请求。请求参数即为最近的屏幕地理范围加上容差范围。

2、《面向ArcGIS的Python脚本编程》

3.2 点击平移的兑现

A.当鼠标触发mouseDown事件时,给全局变量isClick赋值true,其他操作同上。

B.当鼠标触发mouseMove事件时,则将此isClick参数赋值false。

C.当鼠标触发mouseClick事件时,判断isClick是否为true,如尽管true,则将地图平移到以startPoint为主干的地点。

一本辅导ArcGIS for Desktop专业用户举行Python开发的指南

4. 提三个问题

A.在地图平移后,矢量图层的canvas的XY都暴发了变动,此时按照地理坐标转换为屏幕坐标公式得出的屏幕坐标,在canvas上能将要素正确展现吗?

B.矢量图层canvas的原点坐标XY有亟待还原成开首的(0,0)的时候吧?

《面向ArcGIS的Python脚本编程》是一本指导ArcGIS for
Desktop专业用户举办Python开发的指南。该书将教会您如何通过编制Python代码处理空间数据并在ArcGIS中自动化实现地理处理任务。读者在读书完本书后,可以按照需要创造自定义的地理处理工具。本书共包括14章,在随书的DVD光盘中,还附有相应的演习和数量。您可以在线下载ArcGIS
10.1 for Desktop的试用版,其试用期为180天。

5.总结

对于第四节中的六个问题,我付出的答案分别是:不可以和急需。解答这七个问题,我们无法不将事先交付的地理坐标与屏幕坐标互转换公式和明天大家讲到的移动公式合起来看,才能做很好的回复。这么些情节我们将在下一章专门展开讲解。欢迎我们持续关注。

 

                                                          
—–欢迎转载,但保留版权,请于显著处标明出处:http://www.cnblogs.com/naaoveGIS/

                                                                 
倘使您觉得本文确实协助了你,能够微信扫一扫,举办小额的打赏和鞭策,谢谢
^_^

                                       图片 2

 

everybody,good night.

3、《“笨办法”学Python》

是一本Python入门书籍,适合对电脑了然不多,没有学过编程,但对编程感兴趣的读者学习应用。这本书以习题的方法指点读者一步一步学习编程,从简单的打印一向讲到完整项目标落实,让初我们从基础的编程技术出手,最后体验到软件开发的主导历程。本书结构相当简单,共包括52个习题,其中26个覆盖了输入/输出、变量和函数两个核心,此外26个覆盖了有的相比高级的话题,如条件判断、循环、类和目标、代码测试及项目标贯彻等。每一章的格式基本相同,以代码习题起先,依照说明编写代码,运行并检讨结果,然后再做附加训练。

4、《趣学Python编程》

不用任何统计机基础知识,轻松诙谐地控制Python编程

本书把您带入一个有血有肉的Python编程世界。作者杰森 R.
Briggs将指导你用分外的(往往很有意思的)示例程序带您读书基础知识。每章前边都配有编程磨炼来帮忙磨炼思维并加强领悟。在本书的最终有的,你将编辑五个完整的玩耍:一个经典弹球游戏的复制品,以及一个能在平台上跳跃、有动画及更多效益的《火柴人逃生》游戏。

当您做到那些编程之旅后,你将学到:

● 使用列表、元组和字典等骨干数据结构;

● 用函数和模块来协会以并引用代码;

● 使用循环和规范语句等控制结构;

● 用Python 的海龟模块来画形状和画画;

● 用tkinter 来成立游戏、动画以及其它画面效果。

5、《Python Cookbook》(第3版)中文版

Python
库克(Cook)book(第3版)中文版覆盖了Python应用中的很多广阔问题,并提议了通用的解决方案。书中隐含了大气实用的编程技巧和演示代码,并在Python
3.3环境下开展了测试,可以很方便地采纳到实在项目中去。另外,本书还详细讲解了化解方案是什么行事的,以及为啥可以工作。

Python
库克(Cook)book(第3版)中文版极度适合具有自然编程基础的Python程序员阅读参考。

6、《像电脑科学家一样思考Python》

比方你想深造咋样编程,使用Python语言是一个极佳的启幕。这本实践指南会带你一步一个脚印地读书Python语言,从最基本的编程概念,到函数、递归、数据结构和面向对象设计。

电脑科学家自有一套解决问题的办法,而且这种模式是独特的、通用的和强有力的。本书将引领你去感知这样的主意,按照“像电脑地理学家一样思考”的法门,学习和摆布Python语言。

7、《Python 3程序开发指南》(第二版)

本书首先讲述了整合Python语言的8个重点要素,之后分章节对其进展了详细的阐释,包括数据类型、控制结构与函数、模块、文件处理、调试、进程与线程、网络、数据库、正则表达式、GUI程序设计等各个方面,并介绍了其他部分有关主题。全书内容以实例讲解为主线,每章后边附有操练题,便于读者更好地精通和操纵所描述的内容。

本书适合于作为Python语言教科书选用,对Python程序设计人士也有必然的参考价值。

倘诺您打开这篇作品就不会后悔,小说内享有推介图书任您接纳,小编又起来随机了。

本期是2014年1四月的第四期赠书福利,也是2014年的末尾一期活动。本次小编大手笔,选了Python连串,任您选,Python控们,最终一期参加条件还是。本期赠书活动收尾至1四月31日。元正后寄送奖品。

活动规则

1、将这一个音信分享到朋友圈,然后截图并回升书名给ptpressitbooks微信号即可。

2、抽奖情势:随机抽取

3、开奖时间,11月31日开奖。出席运动的意中人,请登时关注获奖名单,以免错过机会。

4、为了能将红包顺利送达获奖者手中,请获奖者提供科学的全名、电话、地址、邮政编码给微信君,无需获奖者付快递费。

5、收到获奖者音信后,我们会第一时间寄出奖品。

人邮IT书坊

ID:ptpressitbooks

相关文章

No Comments, Be The First!
近期评论
    分类目录
    功能
    网站地图xml地图