-
mapnik地图符号化
2020-05-20 08:54:24为giser提供地图符号化的样例,可自家开发定制。压缩包中包含mapnik符号化说明文档、符号化xml示例文件 -
ArcGIS Engine地图符号化.zip
2019-07-25 17:25:03主要包括ArcGIS Engine的地图符号化实例代码和测试数据 -
论文研究-基于ArcGISEngine地图符号化模块的设计与实现.pdf
2019-07-22 19:42:07首先分析了已有的关于地图符号库研究的不足之处,在此基础上,基于ArcGIS Engine,采用程序设计和参数设计相结合的方式,对地图符号化模块进行设计,并实现了相关功能:既可对地图中的矢量目标数据(点、线、面、... -
AE学习笔记之地图符号化
2016-09-18 19:18:52地图符号化就是对ArcGIS 中加载的地图图层进行渲染,地图图层可以分为点、线、面、三种形式。根据每个图层的图层类型可以分别对点、线、面要素,即MarkerSymbol、LineSymbol、和FillSymbol 进行渲染。 1、点对象 ...地图符号化就是对ArcGIS Engine中加载的地图图层进行渲染,地图图层可以分为点、线、面、三种形式。根据每个图层的图层类型可以分别对点、线、面要素,即MarkerSymbol、LineSymbol、和FillSymbol 进行渲染。
1、点对象
MarkerSymbol对于修饰点对象符号拥有五个子类:SimpleMarkerSymbol、ArrowMarkerSymbol、CharacterMarkerSymbol、PictureMarkerSymbol 和 MultilayerMarkerSymbol。一下以SimpleMarkerSymbol为例实现点对象的修饰:
try { //获得点图层 IFeatureLayer layer; layer = axMapControl1.get_Layer(0) as IFeatureLayer; for (int i = 0; i < axMapControl1.Map.LayerCount; ++i) //寻找点图层 { layer = axMapControl1.get_Layer(i) as IFeatureLayer; if (layer.FeatureClass.ShapeType == esriGeometryType.esriGeometryPoint) break; } if (layer.FeatureClass.ShapeType != esriGeometryType.esriGeometryPoint) return; //QI到IGeoFeatureLayer接口 IGeoFeatureLayer geoFeatureLayer = layer as IGeoFeatureLayer; //新建SimpleRendererClass对象 SimpleRenderer simpleRender = new SimpleRendererClass(); ISimpleMarkerSymbol pMarkerSymbol; //创建颜色 IColor color; color = new RgbColorClass(); color.RGB = 225; //创建SimpleMarkerSymbolClass pMarkerSymbol = new SimpleMarkerSymbolClass(); pMarkerSymbol.Style = esriSimpleMarkerStyle.esriSMSCircle; pMarkerSymbol.Color = color; pMarkerSymbol.Angle = 60; pMarkerSymbol.Size = 6; //将MarkerSymbol 赋予simpleRender的Symbol simpleRender.Symbol = pMarkerSymbol as ISymbol; geoFeatureLayer.Renderer = simpleRender as IFeatureRenderer; axMapControl1.Refresh(); } catch (Exception ex) { MessageBox.Show(ex.Message); }
具体流程为:首先,新建一个要素图层的接口,并将mapControl中的第一个图层赋予该图层。
然后,将要素图层转化为地理要素图层。
接着,新建一个SimpleRendererClass对象,和ISimpleMarkerSymbol接口。设置SimpleMarkerSymbol 的颜色、类型、尺寸等信息。
//将MarkerSymbol 赋予simpleRender的Symbol
simpleRender.Symbol = pMarkerSymbol as ISymbol;
geoFeatureLayer.Renderer = simpleRender as IFeatureRenderer;最后,设置地理要素的Render。
2、线要素
线要素与点要素相似,不过线要素的子类有8个,分别是:CartographicLineSymbol、HashLineSymbol、MarkLineSymbol、MultiLayerLineSymbol、SimpleLineSymbol、PictureLineSymbol、SimpleLine3DSymbol和TextureLineSymbol。以SimleLineSymbol为例:
private void simpleLineSymbolToolStripMenuItem_Click(object sender, EventArgs e) { IGeoFeatureLayer geoFeatureLayer; geoFeatureLayer = axMapControl1.get_Layer(0) as IGeoFeatureLayer; ISimpleRenderer simpleRender; simpleRender = new SimpleRendererClass(); IRgbColor HC = new RgbColor(); HC.Red = 225; HC.Green = 0; HC.Blue = 0; ISimpleLineSymbol simpleLineSymbol = new SimpleLineSymbolClass(); simpleLineSymbol.Color = HC; simpleLineSymbol.Width = 5; simpleLineSymbol.Style = esriSimpleLineStyle.esriSLSDashDot; simpleRender.Symbol = simpleLineSymbol as ISymbol; geoFeatureLayer.Renderer = simpleRender as IFeatureRenderer; axMapControl1.Refresh(); axTOCControl1.Update(); }
结果如下图:3、FillSymbol与以上两个类似,有七种填充方式。-----------------------------------------------------------------------------------------end------------------------------------------------------------------- -
arcgis地图符号化(一)
2018-09-11 20:49:27首先看一下某个字段中含有多少个符号,在属性表中选择...然后选择左侧树需要的图层,如下图右侧所示选择需要符号化的字段。 进入到如下的界面。左侧有Preview预览窗口,100%表示预览的比例,还可以选择其他的预览...首先看一下某个字段中含有多少个符号,在属性表中选择【Select By Attributes】,比如我们看一下字段【Type】有哪些唯一值,如下图所示。我们选择【Get Unique Value】,然后会出现该字段中所有的唯一值。
然后选择左侧树需要的图层,如下图右侧所示选择需要符号化的字段。
进入到如下的界面。左侧有Preview预览窗口,100%表示预览的比例,还可以选择其他的预览比例。
下面的layers表示图层,下面有不同按钮,分别是【添加】、【删除】、【上移】、【下移】。Type提供了多种符号化类型,如3D Simple Line Symbol、3D Texture Line Symbol、Cartographic Line Symbol、Hash Line Symbol、Marker Line Symbol、Picture Line Symbol、Simple Line Symbol。下面对线颜色进行配色。选择右边Layers下面某个符号,根据下表所示的CMYK的颜色值进行设置。
编辑完后选择保存。下面是关键的一点,选择保存到创建的style文件。选择【Style References】,如下图所示,选择【Create New Style】创建一个新的Style文件。
如下图所示创建新的style文件。用于保存创建好的字段符号化符号。下图中的Name必须与字段中的字段值相互匹配。
更多内容,微信扫二维码关注公众号
-
地图符号化-柱状图
2012-06-24 15:01:21如果没有这四句,就看不到地图 pFillSymbol = new SimpleFillSymbolClass(); pFillSymbol.Color = GetRGBColor(239, 228, 190); pChartRenderer.BaseSymbol = (ISymbol)pFillSymbol; pChartRenderer....class BarRender { public BarRender(AxMapControl pMapcontrol, IFeatureLayer pFtLayer, String pFieldName1, string pFieldName2) { IGeoFeatureLayer pGeoFeatureLayer = pFtLayer as IGeoFeatureLayer; pGeoFeatureLayer.ScaleSymbols = true; IFeatureClass pFeatureClass = pFtLayer.FeatureClass; //定义柱状图渲染组建对象 IChartRenderer pChartRenderer = new ChartRendererClass(); //定义渲染字段对象并给字段对象实例化为pChartRenderer IRendererFields pRendererFields; pRendererFields = (IRendererFields)pChartRenderer; //向渲染字段对象中添加字段--- 待补充自定义添加 pRendererFields.AddField(pFieldName1, pFieldName1); pRendererFields.AddField(pFieldName2, pFieldName2); ITable pTable= pGeoFeatureLayer as ITable; int[] pFieldIndecies = new int[2]; pFieldIndecies[0] = pTable.FindField(pFieldName1); pFieldIndecies[1] = pTable.FindField(pFieldName2); IDataStatistics pDataStat = new DataStatisticsClass(); IFeatureCursor pFtCursor = pFtLayer.FeatureClass.Search(null, false); pDataStat.Cursor = pFtCursor as ICursor; pDataStat.Field = pFieldName2; double pMax = pDataStat.Statistics.Maximum; // 定义并设置渲染时用的chart marker symbol IBarChartSymbol pBarChartSymbol = new BarChartSymbolClass(); pBarChartSymbol.Width = 6; IChartSymbol pChartSymbol; pChartSymbol = pBarChartSymbol as IChartSymbol; IMarkerSymbol pMarkerSymbol; pMarkerSymbol = (IMarkerSymbol)pBarChartSymbol; IFillSymbol pFillSymbol; //设置pChartSymbol的最大值 pChartSymbol.MaxValue = pMax; // 设置bars的最大高度 pMarkerSymbol.Size = 80; //下面给每一个bar设置符号 //定义符号数组 ISymbolArray pSymbolArray = (ISymbolArray)pBarChartSymbol; //添加第一个符号 pFillSymbol = new SimpleFillSymbolClass(); pFillSymbol.Color = GetRGBColor(193, 252, 179) as IColor; pSymbolArray.AddSymbol(pFillSymbol as ISymbol); //添加第二个符号 pFillSymbol = new SimpleFillSymbolClass(); pFillSymbol.Color = GetRGBColor(145, 55, 251) as IColor; pSymbolArray.AddSymbol(pFillSymbol as ISymbol); pChartRenderer.ChartSymbol = pChartSymbol as IChartSymbol; //pChartRenderer.Label = "AREA"; 如果没有这四句,就看不到地图 pFillSymbol = new SimpleFillSymbolClass(); pFillSymbol.Color = GetRGBColor(239, 228, 190); pChartRenderer.BaseSymbol = (ISymbol)pFillSymbol; pChartRenderer.CreateLegend(); pChartRenderer.UseOverposter = false; //将柱状图渲染对象与渲染图层挂钩 pGeoFeatureLayer.Renderer = (IFeatureRenderer)pChartRenderer; //刷新地图和TOOCotrol IActiveView pActiveView = pMapcontrol.ActiveView as IActiveView; pActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, null, null); } public IRgbColor GetRGBColor(int r, int g, int b) { IRgbColor pRGB; pRGB = new RgbColorClass(); pRGB.Red = r; pRGB.Green = g; pRGB.Blue = b; return pRGB; } }
点要素柱状图产生方式去掉basesymbol就可以了
-
ArcGIS配图/地图符号化的一些技巧与相关资料
2018-02-23 21:23:42不知道高德、百度、谷歌、腾讯的地图是怎么配图的。 毕竟这种大型的电子地图,应该不是常规的GIS产品吧。 arcgis中的arcmap应该是很常用的地图呈现软件。很多GIS服务地图应该都是用arcmap配的mxd文件吧。 esri...不知道高德、百度、谷歌、腾讯的地图是怎么配图的。
毕竟这种大型的电子地图,应该不是常规的GIS产品吧。arcgis中的arcmap应该是很常用的地图呈现软件。很多GIS服务地图应该都是用arcmap配的mxd文件吧。
esri公司发布过《ArcGIS地图配图策略》,一个五十几页的文档,专门讲用arcgis配图的。
百度文库就有资源可以下载:https://wenku.baidu.com/view/63dd06f1b0717fd5360cdc76.html
要更符合规范的地图配图,例如标注河流、道路等,要启用Maplex标注。启用Maplex标注的方式是:打开arcmap,自定义—扩展模块—,勾选Maplex。
视图—数据框属性—常规—标注引擎,把ESRI标准标注引擎改为RSRI Maplex标注引擎。如果要发布网络地图的话,还要根据比例尺大小,对显示内容进行一个分级。举例来说,就是比例尺在10000以内,显示所有内容,在10000到50000之间,显示次干以上的路网和注记,在1000000以上的话,只显示高速公路及注记。
这种情况,一般在mxd文件里,处理图层组,在arcmap内容列表中,选中图层,右键——组,把选中的图层放到一个组里,对组进行操作,选中组,右键——属性——图层组属性——常规——比例范围——缩放超过下列限制时不显示图层。如图。地图符号可以自己绘制,符号选择器——编辑符号——符号属性编辑器。
也可以导入现成的符号库,符号选择器——样式引用——将样式添加至列表。
当然自己做的符号,也可以保存成style文件的符号库,菜单栏——自定义——样式管理器——样式——创建新样式。
现成的符号库,http://malagis.com/category/arcgis-symbol/。
说实话,arcgis配图挺繁琐的,因为图层数量摆在那里,符号完事,还有注记呢。每一个图层怎么也得点击七八下,要是再带上渲染和权重的话,怎么也得点击十来下吧。还容易点错,点漏,要是符号还得自己设计的话,那更费时间了。
所以要是有一个现成可用、重复利用的配图模板的话,加工数据库使其与配图模板匹配的话,似乎更方便快捷一些。
首先看图层属性,常规,图层名称、源、标注的字段是哪个,然后把要标注的数据相关属性改成跟原数据一样。重新加载一下数据。这样就不用查看放置属性、标注样式、比例范围、标注表达式等等内容了。
这是一个比较取巧的方法,当然不适合原创了。
常规的电子地图似乎没有特别好看的,大同小异。
不过一些定制的热力图、3D图,看上去挺美的。
好看不好看的标准因人而异,我觉得中国夜景卫星图挺好看的,有一种慎得慌的美感。
谷歌地球的星空图也挺好看的,每次从火星视角拽到地球上的时候,总能被吓一跳。
单纯的arcGIS配图不是很难的事情,但要是配出花样来的话,也没那么容易。
chinamap也不好看,不过挺有用的。
http://worldmap.harvard.edu/chinamap/
可以做研究用。 -
ArcEngine 地图符号化,唯一值单字段,多字段渲染
2015-05-08 10:50:15前几天在网上找到的代码,自己添加一些,支持单字段,两个字段,三个字段的渲染 //下面给出唯一值渲染的核心代码: private void UniqueValueRenderer(IFeatureLayer pFeatLyr, string[] sFieldName) ... -
Arcgis3_地图符号制作与地图数据符号化
2020-11-15 16:38:463 混列线符号3 面符号(填充符号)3.1 简单填充符号3.2 标记填充符号3.3 其他各种填充3.4 线填充符号4 色带4.1 随机色带4.2 多部分色带(组合形式)4.3 预置色带4.4 算法色带5 文本符号 基站,光纤 自定义符号 例如... -
符号化地图图层
2021-02-20 14:26:36符号化地图图层 ArcGIS Pro 2.7|其他版本 符号系统使用符号表示地图图层的要素和属性。例如,在城市图层中,黑色圆圈可对城市进行符号化。用于符号化每个城市的人口的圆圈大小可能会有所不同。根据可见属性(例如... -
ArcGIS Pro地图制图之符号化和地图标注
2018-04-23 15:25:00但没成想现在ArcGIS Pro符号化和样式有了很大的改进,符号更加的贴近现实生活了,比如现在有了公交车、咖啡厅等符号样式,这些符号对于制作一个精美的专题图还是很不错的,所以今天就先谈谈符号化、地图注记等操作。... -
arcgis林业地图符号制作
2019-01-27 09:54:58arcgis林业地图符号制作与地图装饰美化课件,1符号的图形特征;2符号的编辑与管理;3符号制作实例;4数据符号化方式…… -
Tableau可视化学习::符号地图、填充地图、多维地图、混合地图(五)
2020-11-27 11:50:10目录符号地图填充地图多维地图混合地图 符号地图 填充地图 多维地图 混合地图 -
ArcGIS空间数据符号化制图与专题图制作和地图打印
2020-09-20 17:46:11ArcGIS空间数据符号化 -
0306-二维地图开发-地图可视化:简单符号渲染
2018-02-11 14:57:55地图可视化是地图作为信息呈现媒介的一个重要功能。通过可视化,我们可以洞察出地图上呈现的数据特征和它们之间的空间关系。目前做空间可视化这块的越来越精细,有些甚至上升到的艺术的层面。对于地图开发者来说,... -
基于C#的AE二次开发-地图渲染之分级设色符号化
2019-12-24 12:12:13基于C#的AE二次开发-地图渲染之分级设色渲染符号化 我的开发环境为ArcGIS Engine 10.2与Visual studio2010。主地图名称为axMapControl1,Toc目录名为axTOCControl1,创建一个菜单或按钮,创建一个点击事件,粘贴... -
基于C#的AE二次开发-地图渲染之唯一值符号化
2019-12-23 15:50:39基于C#的AE二次开发-地图渲染之唯一值符号化 我的开发环境为ArcGIS Engine 10.2与Visual studio2010。主地图名称为axMapControl1,Toc目录名为axTOCControl1,创建一个菜单或按钮,创建一个点击事件,粘贴代码修改... -
专题地图符号设计与构图
2019-03-20 23:37:45专题地图符号设计是地图编制与可视化的重点内容之一。 一、符号设计应遵循的原则 符号设计应遵循多种原则,包括图案化、精确性、逻辑性、系统性、对比性和协调性、色彩的象征性、视力与制印条件、印刷与经济效果和... -
电子地图配图和符号化的一些参数和方法
2019-11-07 10:19:00一、地图元素的地图级别与比例尺的缩放范围 20 564 84619 1128 846 169318 2257 1693 338617 4514 3386 677116 9028 6771 1354215 18056 13542 2708414 36112 27084 5416813 72224 54168 10833612 144448 108336 ... -
osmdroid基础符号化.zip
2020-07-16 14:52:43开源地图osmdroid的基础符号化,包括文字、点线的符号化的基础示例。可以设置点的显示图片,线条的可以符号化为虚线、实现等。 -
MAPublisher9.5快速开始指南 第5章 符号化和地图专题
2014-09-24 10:15:065 符号化和地图专题 继续制作地图,打开Vancouver Downtown 5.ai。 5.1 组织图层 1. 重新安排图层的属性如下。 5.2 自动应用图形样式到面 1. 在AdobeIllustrator主菜单,选择Window>Graphic Styles来打开... -
MapObejcts组件应用设计(地图数据符号化)
2006-09-26 09:19:002.3.1 Symbol对象Symbol对象是图层中的图元的显示符号,,在跟踪层中,每个几何对象用一个Symbol对象描述,在Map1.Layers的图层中,每个图层一个Symbol属性,全图层的图元共用一个Symbol对象。1 Symbol.SymbolType... -
ArcGIS软件地图符号的精准设计与实践
2020-05-13 12:54:23由于ArcGIS软件自带的符号库若不能满足地图输出的要求,就需要符号库的专门制作,文中按照矢量化、精准化的设计要求,主要介绍了点状、线状、面状符号的制作方法与技巧,详细说明了各类符号均基于点符号首先在Font ... -
ArcGIS实验教程——实验二十二:空间数据符号化
2020-06-17 17:13:47地图符号由形状不同、大小不一、色彩有别的图形和文字组成,是地图语言的图解部分。 符号化是以图形方式对地图中的地理要素、标注和注记进行描述、分类和排列,以找出并显示定性和定量关系的过程。 地图符号有点状... -
基于数据库的地形图符号化
2010-03-19 21:34:30地图符号是地图表达空间信息的语言单位,地形图数据的符号化直接关系到地形图的可视化表达和使用,本文提出基于ArcGIS的1:1万地图符号制作方案以及数据库的地形图符号化 -
Map2Shp符号化工具——ARCGIS平台智能标注与批量符号化工具_map2shp_新浪博客
2019-04-02 16:24:31Map2Shp智能标注与符号化工具是一款基于ArcGIS平台的批量化标注 与符号化扩展工具。将数据图层全部加载至ArcMap后,仅需配置相关参数后,就能一键完成所有图层的标注与符号化,省时省力, 规范统一,且不易出错。 ... -
Arcgis Engine符号化相关
2014-08-21 11:10:00之前对于系统的符号化功能运行流程一直没梳理清楚,现在梳理总结其主要过程如下,细节不加阐述: 符号化功能主要应用的接口有两个:简单符号化ISimpleRenderer、唯一值符号化IUniqueValueRenderer 关于默认符号...
-
MySQL 高可用工具 DRBD 实战部署详解
-
项目管理工具与方法
-
vue3从0到1-超详细
-
Unity 热更新技术-ILRuntime
-
电报:有关电报使用情况的有趣统计信息!-源码
-
MySQL 多实例安装 及配置主从复制实验环境
-
ReactNative从入门到原理
-
实体属性知识获取中的新词检测研究
-
【TARS】通过helloworld的客户端来学习
-
朱老师c++课程第3部分-3.5STL的其他容器讲解
-
MMM 集群部署实现 MySQL 高可用和读写分离
-
leetcode 1672. Richest Customer Wealth(python)
-
基于AMFM混合半色调的打印防复制技术
-
JSLint:JavaScript代码质量工具-源码
-
安卓api开发培训!来看看移动端小程序技术的前世今生!吊打面试官系列!
-
cnp_calculator-源码
-
【硬核】一线Python程序员实战经验分享(1)
-
Git提示Another git process seems to be running in this repository, e.g. an editor opened by ....错误
-
PPTP_NNN 服务生产环境实战教程
-
MySQL你该了解的那些事【服务端篇】