惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
The Last Watchdog
The Last Watchdog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
T
Troy Hunt's Blog
L
LINUX DO - 最新话题
C
Check Point Blog
T
Threat Research - Cisco Blogs
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
罗磊的独立博客
V
Vulnerabilities – Threatpost
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
J
Java Code Geeks
Apple Machine Learning Research
Apple Machine Learning Research
大猫的无限游戏
大猫的无限游戏
S
Security @ Cisco Blogs
IT之家
IT之家
T
The Exploit Database - CXSecurity.com
The GitHub Blog
The GitHub Blog
D
Docker
Engineering at Meta
Engineering at Meta
AWS News Blog
AWS News Blog
S
Security Affairs
U
Unit 42
P
Palo Alto Networks Blog
V
Visual Studio Blog
Y
Y Combinator Blog
D
DataBreaches.Net
Forbes - Security
Forbes - Security
阮一峰的网络日志
阮一峰的网络日志
美团技术团队
Security Latest
Security Latest
aimingoo的专栏
aimingoo的专栏
Simon Willison's Weblog
Simon Willison's Weblog
A
Arctic Wolf
博客园_首页
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
H
Hacker News: Front Page
博客园 - 司徒正美
博客园 - Franky
宝玉的分享
宝玉的分享
TaoSecurity Blog
TaoSecurity Blog
Latest news
Latest news
Scott Helme
Scott Helme
MongoDB | Blog
MongoDB | Blog
量子位
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
C
Cisco Blogs
P
Privacy International News Feed
Application and Cybersecurity Blog
Application and Cybersecurity Blog

博客园 - GIS小能

利用Simplify进行ArcGIS Server多面合并查询 关于Flex Ant的相关注意事项 ArcGIS KeyGen注册机,五步操作实现ArcGIS9.X与ArcGIS10全模块无时限破解(转载:我是一只牛) Flex开发必知(1) ArcGIS Server 10 问题汇总 ArcGIS Server 10 许可文件 Ecp 将应用程序从Flex 3迁移至Flex 4(转载) ArcGIS 10 破解安装(desktop及ArcGIS Server 10) 基于Geoserver配置多图层地图以及利用uDig来进行样式配置 基于ArcGIS Server 10 在flex瓦片客户端叠加瓦片服务 胡说八道--mate flex 优化原则 flex与flash交互详解 flex调用WMS远程图片所产生安全错误 loder导致的安全沙箱的2122错误 flex一周精选(20100308) 解析MapBar兴趣点加载原理 Flex一周精选(20100301) 浅谈Image和Bitmap
基于flex及SVG技术打造交互式地图(数据篇)
GIS小能 · 2010-11-02 · via 博客园 - GIS小能

本文部分取自网络,其他文字版权归小能所有,转载麻烦标明出处,谢谢! 写作过程中也参阅了大量其他网络文档,如果您觉得侵犯版权,请和我联系:chinazhousheng#gmail.com

前记:从某种意义上来说,这篇文章并不属于GIS专业方面的文章,但贴出来,仅作抛砖引玉作用,以期对GIS从业者对地图的应用有所启发。

通常在日常众多需要应用地图的过程中,很大程度并不需要使用到实际的地理坐标,而仅仅是作为一个普通显示方案来进行,因此,此时,通常来说会采用flash来进行实现,但flash也有天生的短板,也就是与后台数据交互会比较差点,前一阵子基于SVG以及Flex技术做了一个简单的销售地图,偶尔也在网上看到有人求助这方面,因此本着共享的精神,先回出来分享一下。

先上图再说。

clip_image002

基本功能及原理:销售地图可以与分别与饼图以及柱状图进行交互显示,以体现不同的业务功能,地图可根据不同的指标显示由浅至深的不同颜色。其整体基于flex技术来实现,其核心在于地图的显示,而地图的显示则是采用开源控件Degrafa来实现,而在degrafa中,各个面的形状则是借助于SVG技术来实现。

Degrafa是一套很强大的图形算法类库,并且开源,对各种曲线、面以及其他形状绘制提供了很好的支持。

SVG是基于可扩展标记语言(XML),用于描述二维矢量图形的一种图形格式。

从上面的描述可以看出,整体功能基本上依赖于SVG的数据,因此,首先讲的是如何来根据一幅普通图片来获取SVG数据。

地图数据制作的最终目的是将采集的数据应用至销售地图上,下面以中国地图的制作为例,详细的说明制作过程。

相关软件:svgDeveloper 1.0(仅试用期一个月)

Photoshop

具体步骤

寻取合适的地图图片,可以网络上寻找相关的地图数据,而我们的中国地图如下所示:

1、为了符合一致大小,请将图片的大小在photoshop或者其他图像处理软件中进行处理,将其大小修改成740宽、480宽。(注:单位都为像素)

clip_image004

2、打开svgDeveloper,新建一个Svg文件

clip_image006

3、在以下代码中,修改宽度和长度为740、480

<svg width="640" height="480" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">

4、下面准备将图片插入至svgDeveloper中,点击工具栏中的Image按钮

clip_image008

鼠标呈十字状,在操作界面上进行拉框,一般拉满整个屏幕,结束后,会提示选择图片,此时,选择处理后的图片,点确定即可

clip_image010

5、下面进行数据采集,适当放大图片后,点击钢笔工具

clip_image012

此时鼠标呈钢笔形状,此时依次在地图上沿着边界线进行点选择,注意的是,最好选择好合适的填充颜色 ,尤其注意透明度的选择,这样可以在选面时,避免纯色而无法看清边界线。

clip_image014

依次在地图上进行点选择,并最终形成一个闭合的圈,此时,可以在代码区域找到以下代码:

<path d="M355 304L355.25 303.75L362 310L364 310L371 304L374 296L376 290C376 290 376 288 378 288C379 288 383 288 383 288L388 290L390 292C390 292 394 293 394 294C396 294 399 298 399 298L401 301L399 304L394 307L391 308L384 309L384 313L384 316L386 320L388 323L391 328L392 335L392 339L389 338L384 331L383 327L378 326L375 328L371 333L367 335L362 334L358 333L359 328L354 322L354 315L355 310Z" fill="#000000" fill-opacity="0.2" stroke="none" stroke-opacity="0" />

而相应的path 中的d信息即为我们所用,须注意的是,有时候可能线圈并没有闭合,此时,最后结束的字符可能没有Z,此时,可以人工给添加上“Z”

数据篇暂告一段,如果大家还是有兴趣,我将在后面贴上代码及开发过程。