《计算机地图制图》实验指导书
《计算机地图制图》实验指导书
1、实验项目一: 栅格图像的地理配准
1)目的
理解栅格地图的坐标配准的原理,掌握栅格地图的坐标配准和分析的方法。
2)内容安排与组织
(1)实验时间及安排
①实验学时数2学时。
②实验地点在机房,每人一机,实验软件AutoCAD,栅格图像。
(2)主要内容
在理解栅格地图的坐标配准的几何原理基础上,利用AutoCAD软件,使用image、move 、rotate、scale、line、units、list等命令,获得配准转换参数,实现栅格地图的坐标配准,后采用误差理论,计算配准精度,并对配准精度进行分析。
(3)基本原理
栅格图像可以通过扫描仪获取,它的误差来源两个方面:
①扫描图件的变形误差
地形图的材质主要是薄膜,但仍有一少部分是纸图,由于制图时间较长,有不少图件不同程度发生变形,这是误差的主要来源。
②扫描仪的误差
在扫描过程中,由于使用CCD扫描仪,会引入误差,主要有扫描仪的分辨率误差、光学误差、机械运动和速度不均所造成的直线、线阵方向与扫描方向不垂直引起的误差等。
所有以上这些误差引起的几何变形,可看成平移、旋转、缩放、放射,以及各种更高变形的综合结果。栅格图像要使用,就必须对误差进行纠正,在实际操作中,很难对所有的误差一一进行变形改正,只能综合考虑它们的影响,综合校正。若栅格图像的变形比较均匀,可以简单的对图像进行平移、旋转、缩放纠正。
(4)CAD中栅格图像地理配准的主要步骤
①使用Image命令将要地理配准的影像插入到CAD中;
图1 插入栅格图像
②运行units命令,设置角度和长度精度,小数点后4位;
图2 图形单位设置
③在图像已知坐标两点画line线;
④用list命令查看绘制line线的角度和长度,根据已知坐标两点的真实坐标计算角度和长度,求出旋转角度和放缩比例;
图3 获取实体信息
⑤对图像用move命令选定某已知点作为基点,移动图像到真实坐标处;
⑥用rotate命令以已知点为基点根据④计算的旋转角度进行旋转;
⑦用scale命令以已知点为基点根据④计算的放缩比例进行缩放。(5)实验报告的要求
①要写明自己实验的过程,以及实验过程中计算的具体数据
②填写误差统计表
图像纠正误差统计表
附:
4)
( 4
1
2 2
∑=
?
+?
=i
i i
y x
m
中
2、实验项目二: 数据文件读写
1)目的
理解AutoLISP语言的语法规则和基本编程方法,掌握利用AutoLISP语言实现对文本文件的读写操作。
2)内容安排与组织
(1)实验时间及安排
①实验学时数2学时。
②实验地点在机房,每人一机,实验软件AutoCAD。
(2)主要内容
在理解AutoLISP语言的语法规则和基本编程方法的基础上,掌握文件打开与关闭函数、文件的读行和写行函数、常用的字符串处理函数、命令函数、常用的表处理函数、常用的实体访问类函数的使用方法,实现数据文件读写程序编写。
(3)读取文本文件展绘碎部点
根据实验提供的展点数据文件,编制读取文本文件展绘碎部点程序。
图1 展点数据文件
图2 展绘碎部点图
(defun C:zhsbd( / )
(setq pf (getfiled "path File" "" "txt" 2))
(if pf
(progn
(setq fp (open pf "r"))
(setq reco (read-line fp))
(while reco
(setq dh (substr reco 1 2))
(setq x (substr reco 6 7))
(setq y (substr reco 14 7))
(setq z (substr reco 22 6))
(setq pt (list (atof x) (atof y) ) )
(command "layer" "m" "yuan" "c" 67 "" "")
(command "circle" pt 0.5)
(command "layer" "m" "dh" "c" 90 "" "")
(command "text" "r" (polar pt pi 1) 2 0 dh)
(setq reco (read-line fp))
)
)
)
(princ)
(close fp)
(command "zoom" "e")
)
(4)提取高程点写入文本文件
根据实验提供的高程点数据文件,提取高程点坐标,写入文本文件。
图3 离散高程点图
图4 提取出的离散高程点数据文件(defun C:tqgcd( / )
(setq pf (getfiled "保存数据文件" "" "txt" 4))
(if pf
(progn
(setq fp (open pf "w"))
(setq ss (ssget "X" '((0 . "TEXT")(8 . "p831")) ))
(if ss
(progn
(setq n (sslength ss) i 0)
(while (< i n)
(setq data (entget (ssname ss i)))
(setq data1 (assoc 10 data))
(setq x (rtos (cadr data1) 2 4))
(setq y (rtos (caddr data1) 2 4))
(setq str (cdr (assoc 1 data)) )
(setq i (+ i 1))
(setq str (strcat (itoa i) " " y " " x " " str ) ) (write-line str fp)
) ) )
)
)
(close fp)
(prompt (strcat "\n共提取" (itoa i) "高程点"))
)
3、实验项目三: 符号制作
1)目的
理解CAD软件制作地形图符号的原理,掌握点状、线状和面状符号的制作方法。
2)内容安排与组织
(1)实验时间及安排
①实验学时数4学时。
②实验地点在机房,每人一机,实验软件AutoCAD。
(2)主要内容
在理解CAD软件制作地形图符号的原理的基础上,利用CAD软件,结合点状、线状和面状符号的制作方法,制作相应的地形图符号。
(3)点状符号的制作
利用图块建立下水井、路灯、纪念碑等独立符号。
图1 下水井(定位点:圆心)
图2 路灯(定位点:下方圆形的圆心)
图3 纪念碑(定位点:下方直线的中点)
(4)线状符号的制作
①定制线型法
每个线型文件可定义多个线型,每个线型有一个标题行和一个定义行。
a) 标题行的格式如下:
*ltype-name[,description]
其中,“*”是标记行的标记,它后面紧跟线型名,逗号之后是对这个线型的注释。
b) 定义行的格式如下:
A,dash-1,dash-2,…,dash-n
其中,“A”表示为两端对齐方式,dash-1,dash-2、…为短划线序列的每段长度。当dash-i>0,表示是实线段;dash-i<0,表示是空白线段;当dash-i=0,表示是一个点。
c)小路符号的建立如下:
* XIAOLU————
A, 4, -1
图4 小路符号
图5 点划线符号
*DASHDOT, _____ . _____ . _____
A, 0.5, -0.25,0, -0.25
②复合线型的开发
复合线型定义的具体格式如下:
*线型名[,线型描述]
Alignment,dash-1,dash-2,…[嵌入的文本字符串或形定义],dash-n,…
其中,嵌入文本字符串的定义语法为:
[“string”, style, R=n,A=n, S=n,X=n, Y=n]
嵌入形的定义语法为:
[Shapename, shape_file, R=n, A=n, S=n,X=n, Y=n]
string是双引号中的由一个或多个字符组成的文本字符串,shapename是shape_file文件的形名。Shape_file文件中必须有形,否则AutoCAD不允许用户用此线型。
Style是文本式样的名字,shape_file为AutoCAD的.SHX形文件。如果当前图形中没有style,AutoCAD则不允许使用此线型。如果shape_file文件没有位于库搜索路径中,AutoCAD会提示并要求用户选择另外一个.SHX文件。在shape_file文件中可包含路径。
其余5个字段R=、 A=、S=、X=和Y=为可选择的转换分类。每个转换分类后面的n表示所需数字。
R(Rotate)=n表示文本或形相对于当前线段方向的转角。缺省时为零,表示AutoCAD文本或形的方向与所给线段方向一致。
A(Angle)=n表示文本或形相对于世界坐标系的X轴的绝对的转角。当希望文本或形总是以水平形式出现而与线段的方向无关时,可采用A=0。用户可以指定R和A,但两者不能同时指定值。如果两个都没有指定值,则AutoCAD 采用R=0。R和A以度为单位。如果希望以弧度或梯度作为单位,那么数字后面必须加R和G。
S=n确定文本或形的比例系数。
X=n和Y=n为可选项,它们确定相对于线型分类中的当前点的偏移量。缺省时AutoCAD将文本字符串的左下角点或形的插入点放在此当前点。两个偏移量分别沿着当前线段方向(对于X)和沿着与当前线段方向垂直的方向(对于Y)度量,就像有一个局部坐标系,它的X轴从当前线段的第一个端点指向第二个端点。因此正的X偏移量会使文本或形朝着当前线段的第二个端点的方向移动,正的Y偏移量使文本或形沿着正X方向的90度方向(逆时针)移动。这两个偏移量将使文本或形的定位更精确。
例如:定义栅栏符号
图6 栅栏符号
例1:
定义形文件aaa.shp,编译compile。
*2,3,2
1,01C,0
*3,7,3
3,2,1,10,1,000,0
同时建立文件zhalan1.lin
*zhalan1,--|---@---|---@---|---@---|---@---|---@---|---@------ A,4.5,[2,c:\aaa.SHX,Y=1],4.5,-0.5,[3,c:\aaa.SHX,X=0.5],-0.5
例2:
定义形文件bbb.shp,编译compile.
*2,3,2
1,01C,0
*3,9,3
3,2,2,010,1,10,1,000,0
同时建立文件zhalan2.lin
*zhalan2,--|---@---|---@---|---@---|---@---|---@---|---@------ A,4.5,[2,c:\bbb.SHX,Y=1],4.5,-0.5,[3,c:\bbb.SHX],-0.5
③编程开发法
图7 栅栏符号
(defun C:zl( / p1 p2 p3 p4 s f s0 n i)
(setq p1 (getpoint "\n 请指定点1"))
(setq p2 (getpoint p1 "\n请指定点2"))
(setq s (distance p1 p2) f (angle p1 p2) )
(setq n (+ (fix (/ s 10.0)) 1))
(setq s0 (/ s n))
(setq i 0)
(while (< i n)
(command "circle" p1 0.5)
(command "line" (polar p1 f 0.5) (polar p1 f (- s0 0.5)) "")
(setq p3 (polar p1 f (/ s0 2)) p4 (polar p3 (+ f 1.57) 1) )
(command "line" p3 p4 "")
(setq p1 (polar p1 f s0))
(setq i (1+ i))
)
(command "circle" p1 0.5)
(princ)
)
(5)面状符号库的制作
①图案填充法
一个图案的文件可存放多个图案的定义。每个图案有一个标题行和若干个定义行。
标题行的格式如下:
*pattern-name[,description]
其中,“*”是标题行的标记,它后面紧跟图案名,图案名之后是关于这个图案的注释。
定义行的格式如下:
angle,x-origion,y-origion,delta-x,delta-y[,dash-1,dash-2,…,dash-n] 图案的定义行解释如下:
angle:该组平行线与水平方向的夹角。
x-origin、y-origin:该组平行线中必有一条经过此点。
delta-x:相邻两平行线沿线本身方向的偏移。
delta-y:相邻两平行线的距离。
[,dash-1,dash-2,…,dash-n]:该组平行线的线型。若为实线,无此部分。
a)草地图案定义
图8 草地符号 *H142,Caodi
90,0,0,0.01,0.01,0.0015, -0.0185
90,0.0008,0,0.01,0.01,0.0015, -0.0185 b)特种房屋图案定义
图9 特种房屋符号 *H251, Tezhong Fangwu
45,0,0,0,0.0015
135,0,0,0,0.0015
4、实验项目四: 格网DEM建立
1)目的
理解格网DEM的基本原理,掌握距离反比法插值算法原理,编程实现格网DEM的生成。
2)内容安排与组织
(1)实验时间及安排
①实验学时数4学时。
②实验地点在机房,每人一机,实验软件AutoCAD,离散高程点图。
(2)主要内容
在理解格网DEM的基本原理的基础上,利用距离反比法插值算法,编程实现格网DEM的建立。
(3)格网DEM建立
①根据离散高程点图,采用AutoLISP语言提取高程点信息,利用距离反比插值算法生成格网DEM。
图1 离散高程点图
图2 距离反比法插值算法
五、座谈与反馈
针对学生实验过程中存在的疑问、报告存在的问题以及对今后的课程学习与就业等相关问题,进行座谈。
六、评价方式
1.评价内容:实验成绩主要考核学生的实验软件操作熟练程度、实际操作表现、实验完成情况以及实验报告中对实验结果的分析与总结。
2.成绩构成:实验成绩满分100分,每个实验25分,共计100分。
七、注意事项
1、实验过程中,按要求时间到达指定场地。
2、服从指导教师的调度,班长、学委要辅助教师组织同学,保证实习顺利进行。
3、实验中保持良好的纪律,尊重作报告者的劳动。
4、听报告时要认真做好笔记,为编写实习报告准备资料。
5、实验报告要亲自编写,锻炼提高自己。虽然实验项目相同,但是每个人的语言特点、组织方式是不相同的,严谨互相抄袭,情节严重者本次实验成绩按不合格处理。
6、注意请假制度,没有参加实验的学时超过学校规定的学时,本次实验成
绩按不合格处理。
7、遵守实验的纪律,违反纪律严重者,指导教师有权终止该生的实验,成绩不合格,并要上报院里作行政处理。
撰写人:李兰勇
教研室主任:吉长东
测绘学院教学院长:王崇倡