CASS软件作图技巧.docx
《CASS软件作图技巧.docx》由会员分享,可在线阅读,更多相关《CASS软件作图技巧.docx(12页珍藏版)》请在冰豆网上搜索。
![CASS软件作图技巧.docx](https://file1.bdocx.com/fileroot1/2023-2/7/c59d6192-8ee6-46e0-bfd7-f01679cd1ed3/c59d6192-8ee6-46e0-bfd7-f01679cd1ed31.gif)
CASS软件作图技巧
1.在CASS中怎么添加地物符号进去?
1、在BLOCKS文件夹中做一个插入点坐标为0,0的图形,保存;
2、在CASS系统配置文件中添加刚才保存的文件,设定其图层、性质,保存;
3、重启程序,OK!
2.CASS7.0下安装煤矿符号
山西煤矿企业众多,也是测绘仪器、软件的重要用户。
煤矿用户在购买我们的CASS软件时,要求软件要有他们常用的煤矿符号。
为此,南方数码软件开发部按照煤矿测量规范专门做了CASS6.0下的煤矿符号补丁,是一个安装文件。
运行它,安装到CASS6.0的安装目录下即可。
屏幕菜单立即多出一个煤矿符号项,里面有许多煤矿用到的符号和线型。
很多煤矿单位都安装有这套符号。
前段时间,山西用户的CASS都升级到了7.0,如何把煤矿符号加载到他们的7.0中呢?
这个问题解决如下:
思路:
1、煤矿版就是比标准版多了一些符号、线型,把需要的符号和线型加到7.0下即可。
2、修改acad.mnu文件,使屏幕菜单里显示我们需要的符号。
实战:
1、运行煤矿符号补丁,把它安装到任意一空目录下。
假如安装到c:
\mkcass\,安装后,有两个文件夹,一个是blocks,里面是煤矿上要用到的块;一个是system,里面有七个文件,分别是:
acad.lin:
线型文件
acad.mnu:
菜单样板文件
acadiso.dwt:
cad模板文件
gcm.slb:
幻灯片库文件
index.ini:
图元索引文件
mk.shx:
煤矿用到的形文件
work.def:
cass用的符号定义文件
这几个文件都比标准版的文件里多了煤矿上用的一些东西。
2、把c:
\mkcass\blocks\下的所有文件复制到CASS7.0安装目录下的blocks下。
把c:
\mkcass\system下的acad.lin、acadiso.dwt、gcm.slb、index.ini、mk.shx、work.def复制到CASS7.0安装目录下的system下,提示覆盖时覆盖即可。
3、打开c:
\mkcass\system下的acad.mnu文件,找到煤矿符号项,把它下面的文字复制到CASS7.0的acad.mnu下。
CASS7.0的屏幕菜单和CASS6.0不同,我们只需把文字复制到CASS7.0的某一分级菜单下即可。
这里我把他们复制到“独立地物”下的“工矿设施”下了。
4、启动CASS7.0,在命令行里输入“menu”命令,加载acad.mnu。
到此屏幕菜单里即可显示出我们需要的煤矿符号。
最后,把修改好的文件保存下来,用到时直接复制到对应的目录下即可。
3、南方CASS符号制作程序完成
用了二天时间,已完成了南方CASS符号制作的程序,可以把绘好的CAD样式制作成CASS的符号.在本机上测试通过。
本程序测试平台:
xpsp2系统,CAD2004,南方CASS7.0.在XP及2003系统上均可运行,不能在98、2000系统中运行,Visit没做测试.CAD版本2004-2006均可运行.其他版本没做测试.适用于CASS6.0和CASS7.0.其他版本的CASS没做测试
1.请先用CAD绘好你的符号样式,其中插入点的坐标为0,0.并把这个符号文件存为DWG文件和本程序放在一起.
2.定义符号所在层,指的是生成的这个符号放在个层.比如你想放在JMD,就输入JMD
3.输入绘好的符号文件,指的就是第1条里的DWG文件.如果你是存为100.DWG,那么在这里就输入100,不要带后缀.
4.定义符号的代码,这里指的是你给这个符号定什么代码.请在这里输入6位的数字,并在半角的状态下输入.
5.符号是否旋转,只能选择1或2.如你的符号是路灯,这种符号是不旋转的,就在这里输入1,如你的符号是门墩,这种符号是可旋转的,在这里就输入2
6.新弹出的窗口中,要再一次输入你的符号文件名,同样不带后缀.这里要输入二次.同时会启动CAD进行幻灯片制作程序
7.如果你的电脑配置好,请用记事打开SLD.BAT,把-N30替换成-N10.数字值越小,运行越快.配置不好的电脑请按默认运行.
8.在弹出"符号制作完成"时,请关掉CAD,并重新打开CAD.然后打开"请读我.TXT"里面记录有你这次的符号代码.在南方CASS中输入DD,再输入你定义的代码.就能绘出你的符号.注意的是,在CASS的屏幕菜单中不能找到这个符号的.只能输入DD.后再输入对应代码才能绘出你的符号.要在屏幕菜单中显示这个符号,暂时还没办法解决这个问题。
有空再修改.
9.因为现在的运行速度还不是很快.如果你确定CASS安装在哪个盘.可用记事本打开程序,把“cdefg”替换为CASS的安装盘。
注意的是,如果CASS和CAD的安装目录不在同一个盘,请不要修改.若有时间,一定会写一个批处理的线形文件制作程序.
10.题外话
因本人的能力有限.不会其他编程语言.只能用批处理来制作CASS的符号.有时间会对这个批处理代码进行精简和优化,如果你熟悉批处理也可进行修改,期待你更精简,速度更快的批处理.
若有任何的建议,请在本帖后面留言.
以下是代码注释说明:
CASSPT.BAT
@echooff&title南方CASS符号制作程序测试中...
color0a
echo___________________________________________________________
echo.
echo使用本程序前请先认真阅读详细的使用说明,或看一遍演示动画
echo.
echo如果使用后觉得本程序不够好.可还原程序对CASS配置文件的修改
echo.
echo若还原请在下面的选择中输入hy,要制作CASS符号请直接回车执行
echo.
echo详细代码注释请到我的XX空间
echo.
echo by千浪
echo___________________________________________________________
echo.
set/pback=还原请输入hy,制作新符号请直接回车:
if'%back%'==''goto00
if%back%==hygotohy
:
00
rem定义用户输入图层名、符号的代码等。
并输出CAD的脚本文件CASS.SCR.在后面用CAD制作幻灯片时调用这个SCR脚本.
cls
set/play=请定义这个符号的所在层(如:
DLDW):
if'%lay%'==''gotoerror1
set/pDWG1=请输入绘好符号的CAD文件(如图块名为100.DWG请输入100):
ifnotexist"%cd%\%dwg1%.dwg"gotoerror4
echo%dwg1%>dwg.txt
echoopen>cass.scr
echo^"%cd%\%dwg1%.dwg^">>cass.scr
echozoom>>cass.scr
echoe>>cass.scr
echomslide>>cass.scr
echo%dwg1%^.sld>>cass.scr
echoqsave>>cass.scr
:
pnumber1
set/pPNUMBER=请定义这个符号的代码(如:
112233,六位数字):
if'%PNUMBER%'==''gotoerror1
echowork.def|findstr/i/c:
"%PNUMBER%"1>nul2>nul&&gotoerror5
echo%PNUMBER%|findstr"^[0-9]*$">nul&&gotonext||(
echo%PNUMBER%|findstr"^[a-zA-Z]*$">nul&&gotoerror2||gotoerror2
)
:
next
set/ptype1=符号是否旋转(如路灯不可旋转,依比例门墩可旋转)不旋转输入1旋转输入2:
if'%type1%'==''gotoerror1
if%type1%GEQ3gotoerror1
if'%type1%'==''gotoerror1
echo%type1%|findstr"^[0-9]*$">nul&&gotostart||(
echo%type1%|findstr"^[a-zA-Z]*$">nul&&gotoerror2||gotoerror2
)
:
start
echo你的新符号代码是:
%PNUMBER%,>请读我.log
echo在程序运行完成后,打开CAD,输入DD,再输入%PNUMBER%>>请读我.log
echo即可以在CASS中绘出对应的符号>>请读我.log
echoon
rem检测CAD和CASS的安装目录,并把CAD安装目录下的slidelib.exe复制到SYSTEM32目录下,复制CASS的配置文件到程序的当前目录下。
并备份CASS的配置文件.
echo检测CAD的安装目录,请稍候
ping-n3127.1>nul
ifexist%windir%\system32\slidelib.exegotostart2
for%%sin(cdefg)do(for/f"delims="%%bin('dir/a/b/s"%%s:
\slidelib.exe"')do(copy"%%b"%windir%\system32\slidelib.exe/y))
for%%ain(cdefg)do(for/f"delims="%%bin('dir/a/b/s"%%a:
\slidelib.exe"')do(ifnotexist"%%b"gotoerror9))
:
start3
for/f"delims=?
"%%hin('typecass1.txt')do(ifexist"%%a\%DWG1%.dwg"gotoerror3)
for/f"delims=?
"%%hin('typecass1.txt')do(copy"%CD%\%DWG1%.dwg""%%h\")
for/f"delims=?
"%%hin('typecass.txt')do(copy"%%h"\acad.mns"%CD%"\acad.mns)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%%h\WORK.DEF"%CD%\work.def)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%%h\INDEX.INI"%CD%\INDEX.INI)
gotostart4
:
start2
echo检测南方CASS的安装目录,请稍候
ping-n3127.1>nul
for%%iin(cDefg)do(for/f"tokens=*"%%ain('dir/AD/s/b%%i:
^|findstr/I"CASS70\SYSTEM"')do(ifnotexist"%%a\WORK.DEF"gotoerror6))
for%%ein(cDefg)do(for/f"tokens=*"%%cin('dir/AD/s/b%%e:
^|findstr/I"CASS70\SYSTEM"')do(echo%%c>CASS.TXT))
for%%ein(cDefg)do(for/f"tokens=*"%%cin('dir/AD/s/b%%e:
^|findstr/I"CASS70\BLOCKS"')do(echo%%c>CASS1.TXT))
for%%iin(cDefg)do(for/f"tokens=*"%%ain('dir/AD/s/b%%i:
^|findstr/I"CASS70\SYSTEM"')do(ifexist"%%a\WORKbak.DEF"gotostart3))
for/f"delims=?
"%%hin('typecass1.txt')do(ifexist"%%a\%DWG1%.dwg"gotoerror3)
for/f"delims=?
"%%hin('typecass1.txt')do(copy"%CD%\%DWG1%.dwg""%%h\")
for/f"delims=?
"%%hin('typecass.txt')do(copy"%%h"\acad.mns"%CD%"\acad.mns)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%%h"\acad.mns"%%h"\acadbak.mns)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%%h\WORK.DEF"%CD%\work.def)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%%h\WORK.DEF""%%h"\WORKbak.DEF)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%%h\INDEX.INI"%CD%\INDEX.INI)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%%h\INDEX.INI""%h%"\INDEXbak.INI)
rem对CASS的配置文件进行编辑修改,增加新的符号代码,编辑完成后调用另一个批处理程序SLD.BAT,启动CAD的幻灯片制作程序
:
start4
copywork.defwork2.def
findstr/b/v/c:
"END"work2.def>work.def
echo%PNUMBER%^,^%lay%^,^%type1%^,^%DWG1%^,^0^,>temp.txt
typetemp.txt>>work.def
echoEND>>work.def
copyacad.mnsacad2.mns
findstr/b/v/c:
"//"acad2.mns>acad3.mns
echo^[cass%dwg1%^(%dwg1%^,%pname%^)^]^^C^^C^^Pdd^;^^P>>temp2.txt
echo^/^/>acad.mns
typeacad3.mns>>acad.mns
typetemp2.txt>>acad.mns
echo^/^/>>acad.mns
copyINDEX.INIINDEX2.INI
findstr/b/v/c:
"END"INDEX2.INI>INDEX.INI
echo%PNUMBER%^,^%dwg1%^,^0^.^000^,>temp3.txt
typetemp3.txt>>INDEX.INI
echoEND>>INDEX.INI
startsld.bat
exit
rem各类出错的信息说明
:
error1
cls
echo输入错误,没输入代码或其他类型错误
pause&goto00
:
error2
cls
echo输入错误,你输入的符号代码不是纯数字,请输入数字
pause&goto00
:
error3
cls
echoCASS的安装目录下已有相同的图块名,请重命名
pause&goto00
:
error4
echo没有找到这个图块文件
pause&goto00
:
error5
cls
echo南方CASS中已有这个代码存在,请再次输入
pause
gotopnumber1
pause
:
error6
echo本程序没有检测到南方CASS7.0的安装目录,请检查是否有安装
exit
:
error9
msg%username%/v/w/time:
99999"检测到本机CAD的安装目录中没有slidelib.exe这个程序,请到我的XX空间下载或到别的电脑CAD安装目录中复制一个到C盘SYSTEM32目录下">nul
exit
:
error10
msg%username%/v/w/time:
99999"你之前并没有运行这个程序,不用还原">nul
exit
:
cass60
cls
msg%username%/v/w/time:
99999"检测到你安装的是南方CASS6.0,请用记事本编辑程序,把所有CASS70替换成CASS60并另存为BAT文件运行即可">nul
exit
:
hy
rem还原CASS配置文件
for%%iin(cDefg)do(for/f"tokens=*"%%ain('dir/AD/s/b%%i:
^|findstr/I"CASS70\SYSTEM"')do(ifnotexist"%%a\WORK.DEF"gotoerror6))
for%%ein(cDefg)do(for/f"tokens=*"%%cin('dir/AD/s/b%%e:
^|findstr/I"CASS70\SYSTEM"')do(echo%%c>CASS.TXT))
for/f"delims=?
"%%hin('typecass.txt')do(ifnotexist"%%h"\WORKbak.DEFgotoerror10)
for%%iin(cDefg)do(for/f"tokens=*"%%ain('dir/AD/s/b%%i:
^|findstr/I"CASS70\SYSTEM"')do(copy"%%a"\WORKbak.DEF"%%a"\WORK.DEF))
for%%iin(cDefg)do(for/f"tokens=*"%%ain('dir/AD/s/b%%i:
^|findstr/I"CASS70\SYSTEM"')do(copy"%%a"\INDEXbak.INI"%%a"\INDEX.INI))
for%%iin(cDefg)do(for/f"tokens=*"%%ain('dir/AD/s/b%%i:
^|findstr/I"CASS70\SYSTEM"')do(copy"%%a"\acadbak.mns"%%a"\acad.mns))
msg%username%/v/w/time:
99999"还原完成">nul
exit
SLD.BAT代码注释
@echooff
color0a
rem检测CAD的安装目录,并在命令行下启动CAD,启动CAD后运行CASS.SCR脚本的命令制作幻灯片
for%%iin(cdefg)do(
for/f"delims="%%jin('dir/a-d/b/s"%%i:
\programfiles"^|findstr/i/c:
"acad.exe"')doecho%%j>cad.txt
)
:
111
cls
set/pDWG2=请再次输入绘好符号的CAD文件名(如图块名为100.DWG请输入100):
ifnotexist%dwg2%.dwggotoerror8
ifnot"%~1"=="h"(
start"""%~0"h
for/f"delims=?
"%%gin('typecad.txt')do("%%g"/b"%cd%\cass"&exit)
)
echo正在制作,约30秒.请稍候...
ping-n30127.1>nul
dir*.sld>mmm/b
ifnotexistmmmgotomsg20
for/f"delims=?
"%%hin('typecass.txt')do(slidelib.exe%cd%\cass%dwg2%for/f"delims=?
"%%hin('typecass.txt')do(copy%cd%\cass%dwg2%.slb"%%h"\)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%cd%"\INDEX.INI"%%h"\INDEX.INI)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%cd%"\work.def"%%h"\work.def)
for/f"delims=?
"%%hin('typecass.txt')do(copy"%cd%"\acad.mns"%%h"\acad.mns)
msg%username%/v/w/time:
99999"符号制作完成,请关掉CAD后,重新打开CAD">nul
rem制作完成后删除各类临时文件
del/f*.mns
del/f*.txt
del/fcass.scr
del/f*.bak
del/f*.slb
del/f*.sld
del/f*.ini
del/fmmm
del/f*.def
exit
rem各类出错的信息说明
:
error8
cls
echo与前面输入的图块名不对应,请再输入一次
pause&goto111
:
msg20
msg%username%/v/w/time:
99999"你的机子运行比较慢,请用记事本打开本程序把-n30改为-n60或更大数字">nul
4、cass2008的部分图示符号,根据新的国标地形图图示做了更改,请问如何把cass2008的图示符号,更新到cass6.1?
谢谢
你可以查看CASS安装目录下的cass70.chm文件,里面的参考手册第5章CASS的用户化里面有详细的例子,