第六章 CAD 二次开发6.1 开发范围为了设计人员在进行内业设计方便,现将国家基本比例尺地图图式( 1:500 1:1000 1:2000)开发,以便于设计人员在进行地形图绘制时直接插入地物符号等。6.1.1 范围GB/T20257 的本部分规定了 1:500、1:1000、1:2000 地形图上表示的各种自然和人工构造物、地貌要素的符号和注记的等级、规格,以及使用这些符号的原则、要求和基本方法。本部分开发适用于 1:500、1:1000、1:2000 地形图的绘制。6.1.2.符号使用的一般规定(1) 依比例尺符号:地物依比例尺缩小后,其长度和宽度能依比例尺表示的地物符号。(2) 不依比例尺符号:地物依比例尺缩小后,其长度和宽度不能依比例尺表示的地物符号。(3) 定位符号的定位点和定位线(4) 符号图形中有一个点的,该点为地物的实地中心位置。(5) 圆形,正方形,长方形等符号,定位点在其几何中心。(6) 宽底符号定位点在其底线中心(7) 几种图形组成的符号(教堂、气象站等)定位点在其下方图形的中心点或交叉点。(8) 线状符号(道路、河流等)定位线在其符号的中轴线;依比例尺表示时,在两侧线的中轴线。6.2 程序设计说明图 6-1 医疗点 程序源码解析: ;;医疗点(defun c:yld() :/定义了一个函数为 yld (command "layer" "m" "医疗点" "c" "48" "" "") :/定义了 yld 的图层及其颜色 (command"osnap" "off") :/关闭对象捕捉 (setq pt (getpoint"\n 指定基点:")) : /指定绘图基点 (while pt (command"pline" (polar (polar pt (/ pi 2) 1.1) pi 0.4) "w" 0 0 (polar (polar pt (/ pi 2) 1.1) 0 0.4) (polar (polar pt (/ pi 2) 0.4) 0 0.4) (polar (polar pt (/ pi 2) 0.4) 0 1.1) (polar (polar pt (/ (* pi 3) 2) 0.4) 0 1.1) (polar (polar pt (/ (* pi 3) 2) 0.4) 0 0.4) (polar (polar pt (/ (* pi 3) 2) 1.1) 0 0.4) (polar (polar pt (/ (* pi 3) 2) 1.1) pi 0.4) (polar (polar pt (/ (* pi 3) 2) 0.4) pi 0.4) (polar (polar pt (/ (* pi 3) 2) 0.4) pi 1.1) (polar (polar pt (/ pi 2) 0.4) pi 1.1) (polar (polar pt (/ pi 2) 0.4) pi 0.4)"c") :/定制多段线绘 制医疗点轮廓图(command"bhatch" "p" "l" "" ) (command"polygon" 4 pt "c" 1.4) (command"bhatch" "p" "411b" 0.05 0 "s" (ssget "C" (polar (polar pt pi 1.5) (/ pi 2) 1.5) (polar (polar pt 0 1.5) (/ (* pi 3) 2) 1.5))"" "") :/填充颜色 (setq pt (getpoint"\n 指定基点:")) :/绘图结束重新指定基点 ) (command"osnap" "on") :/对象捕捉打开 )