软件介绍

uDig是一个开源的桌面GIS软件,可以进行shp与栅格数据地图文件的编辑和查看,对OpenGIS标准,关于互联网GIS、网络地图服务器和网络功能服务器有特别的加强。通常和GeoServer一起使用,uDig配置的地图文件样式sld绝大多数能在geoserver中完全发布使用。

GeoServer对SLD介绍:http://docs.geoserver.org/stable/en/user/styling/index.html。

udig各个版本差异很大。本文使用的版本是uDig1.5。

本文主要讲述uidg三个方面的内容:1、uDig配图(重点);2、GeoServer添加样式文件;3、uDig报错处理。

一:udig配置地图:

1、添加地图文件:打开udig后打开图层File->New->New Layer

 2、选择数据来源:udig支持本地数据、数据库数据和数据服务,例如如果数据已经放在geoserver服务中,就选择WebFeature server.输入其WMS服务地址后选择图即可,本例使用本地shapefile文件,故选择Files点击Next,然后选择选择本地shapefile文件打开即可。注:建议尽量将shapefile文件名改为英文名再进行操作,虽然在uDig中没有影响,但是在制作XML后会出现中文,但是geoserver不支持中文文件名和文件路径。

3、图层预览:加载后的图层显示在这里,在Layers下面鼠标右键需要配置样式的图层,点击Change Style。图中Anxian_L1-L15是我加载的栅格图层,你可以暂时忽略它。

4、样式编辑界面介绍: 在Style Editor中,右边目录树是针对显示操作。Lines、Points、Polygons是根据图层具体属性点线面来进行操作。Simple feature是简单设置,Filter是过滤显示图层的哪些图形。Theme是图层默认主题,可修改设置。Xml是前面进行修改操作其自动生成的。在geoserver中可以复制粘贴制作style。注:但要将编码格式改为GB2312。

强烈建议:可以使用这里Theme主题,但是尽量不要进行修改。可能这里不成熟,在修改过程中容易出现bug。报错大意是解析UTF-8出错,个人认为是由于shapefile采用的是gbk编码方式,到udig里面软件不成熟,所以很容易出错,当然进行其他操作时也会出现此类错误,只不过theme出错概率高。

5、线图层配图实例:本文针对线图层这里做个简单例子,中间显示的按钮依次为添加显示规则组和显示规则,删除显示规则和显示规则组,层次调整,这里可以通过叠加显示规则来达到我们需要的效果;右边是一般设置,边框,显示文字标注,还有过滤显示操作。线的边框即线的颜色。

这里添加两个显示规则。注意每个显示rule都是相对独立的。适当更改每个rule的显示比例尺和其它设置。添加不同规则可以得到我们所需要的绝大部分效果。

5.1、border设置:此处将default rule 的宽度设置为1,颜色设置为黄色。

border选择页面其它参数介绍:

grephics:可以添加其他图形,使图片按线路径进行渲染,即每隔图片长度出现一个图片。注意:使用外部图片路径很可能使软件报错,为uDig软件bug。

dash:断点距离例如:5。

dash offset为断点偏移量(备注如果第一次设置没有效果。需要导入一个具有断点效果SLD文件即可或者在右边XML粘贴断点效果的  XML。最后附有铁路断点效果)。

这些参数大家自己修改后点击应用就能明白是什么意思,此处不做过多阐述,而且这些参数不需要做过多修改,保持默认值就好。

5.2、标注设置:显示文字是中文时一定要将font中set font字体选择为中文字体,如宋体,华文新魏等,并将“脚本(R)”修改为中文GB2312。

label选择页其它参数介绍:

max displacement pixels:指文字间距离越近而忽略显示部分文字信息.值越大忽略显示效果越低。例如20

perpengicular offset:指文字显示中心线距离线文字的像素距离,0表示标注在线上。前提是 follow line为false,即文字是否跟随线走向。

follow line为false:即文字是否跟随线走向。

auto wrap pixels:即当文字长度超过该像素后就换行,但是换行对中文无效。而且显示的行数最大为2。

这些参数大家自己修改后点击应用就能明白是什么意思,此处不做过多阐述。其它参数不需要做过多修改,保持默认值就好。

6、确定与应用:点击Apply应用即可。该图层最终显示效果如下。

此为配置线图层基本方法,可以具体根据自己需要进行修改和丰富样式,这里不多做介绍;配置点状和面状图层会多一个fill填充属性,设置也基本类似。此处附上我用uDig配置的安县地图全图及局部图,给大家一个直观效果感受。

二、GeoServer添加style:我们在发布geoserver服务时只需要其XML即可,将xml文件复制到style文件中。注意:在把XML文件复制到geoserver中时要将编码方式修改“GB2312”。

剩下的工作就是应用style,发布服务了,此处不再多做阐述。

三、错误处理:

当在配图过程中报UTF-8出错或不能打开Change Style等其它问题的时候,一般情况下的结局方案是:新建一个Project,在新的Project中进行操作,或者直接删除Project所在的文件夹重启重做即可,Project默认文件夹为:C:\Users\Administrator\udig。

------欢迎转载,但保留版权,请于明显处标明出处:http://www.cnblogs.com/tysutopia/p/4431668.html

uDig配图与GeoServer添加Style的更多相关文章

  1. 原生js动态添加style,添加样式

    原生js动态添加style,添加样式 第一种 var style="[assign-url='"+str+"']{display:initial}"; var ...

  2. Visual Studio Code 配置 EasyLESS,如果想用less,但又不想在组件中直接添加 style 时可以参考

    在用 vue 画页面时,如果想用less,但又不想在组件中直接添加 style ,可以使用 vs code 的插件:EasyLess EasyLess 安装好后必须在 setting.json 中对它 ...

  3. vue 动态添加 <style> 样式 vue动态添加 绑定自定义字体样式

    created(){ //动态添加自定义字体样式 let style = document.createElement('style'); style.type = "text/css&qu ...

  4. geoserver 添加图层数据

    1.添加shapefile文件 首先到http://www2.census.gov/geo/tiger/TIGER2011/CONCITY/上下载名称为tl_2011_47_concity的shape ...

  5. ckeditor源码编辑模式,添加style、javascript内容丢失的解决

    我使用ckeditor 我在编辑的使用源码编辑,保存内容包含javascript.style标签的时候,数据库中有javascript.style标签 , 输入到页面也可以执行,但是我再次编辑的时候就 ...

  6. Geoserver设置style

    1 背景 我们在ArcMap中可以直接通过symbol功能对图层进行定制化配图.但是,如果我们将配好图的shp图层在GeoServer中发布时,会发现图层样式完全丢失了.其实原因很简单,用ArcMap ...

  7. wpf ListBox 双击事件时在子项添加Style 确保选中

    <ListBox ItemTemplate="{StaticResource CardPictureTemplate}" VirtualizingPanel.CacheLen ...

  8. PE添加Style

       1. <style id="NumberStyle"> <setting> <param name="option"> ...

  9. 为控件动态添加Style

    此文可解决:  重写控件时,给控件加入子控件或父控件的样式切换问题. 很灵活的可以根据不同内容显示不同样式 子控件作用在: <DataTemplate x:Key="ColmunHea ...

随机推荐

  1. hdu 3183 A Magic Lamp rmq或者暴力

    A Magic Lamp Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Pro ...

  2. 如何上传本地文件到github又如何删除自己的github仓库

    首先自己在https://github.com/网站要注册一个账户 自己上传工程到jithub,没有付费的用户只能选用public,意味着你的项目在全网是可以被看到和下载的: 所以涉及私密信息的,需要 ...

  3. 《剑指offer》第九题(用两个栈实现队列)

    // 面试题:用两个栈实现队列 // 题目:用两个栈实现一个队列.队列的声明如下,请实现它的两个函数appendTail // 和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的 ...

  4. 怎么运行cocos2dx 3.x simulator?

    1.simulator的好处是: 快速切换分辨率:F5快速重新启动项目: 这对于脚本语言来说都是很方便快捷的. 2.涉及到显示参数的文件有两个: ①lang,这个是菜单的语言文件,如果没有这个文件的话 ...

  5. 算法笔记--2-sat

    强连通分量的应用,详见<挑战程序设计>P324 例题1:HDU Peaceful Commission 思路:强连通分量分解,看有没有两个同一个国家的代表在一个强连通分量里,如果有,就是N ...

  6. Unity 4.x 资源打包

    using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; pu ...

  7. LeetCode--118--杨辉三件I

    问题描述: 给定一个非负整数 numRows,生成杨辉三角的前 numRows 行. 在杨辉三角中,每个数是它左上方和右上方的数的和. 示例: 输入: 5 输出: [ [1], [1,1], [1,2 ...

  8. json 的样式与应用 - C#/.NET

    本文采用问答的方式来写 问题一:什么是 json ? json是一种轻量级的数据交换格式,非常适合服务器与JavaScript交互.(它和XML一样,都是用来处理交互数据的) 问题二:json 长什么 ...

  9. python运维之使用python进行批量管理主机

    1. python运维之paramiko 2. FABRIC 一个与多台服务器远程交互的PYTHON库和工具 3. SSH连接与自动化部署工具paramiko与Fabric 4. Python批量管理 ...

  10. OAF 中下载使用XML Publisher下载PDF附件

    OAF doesn't readily expose the Controller Servlet's HttpRequest and HttpResponse objects so you need ...