翻新时间:2023-07-01
CAD技术在水利水电工程中的应用
CAD技术在水利水电工程中的应用 CAD技术在水利水电工程中的应用 CAD技术在水利水电工程中的应用
摘要:AutoCAD是广大工程设计人员普遍使用的通用绘图软件,结合专业特点,通过对AutoCAD系统的二次开发可以开发出满足各种用途的专业软件,即使对于普通设计人员也可以通过AutoCAD内嵌的VisualLisp语言方便地增加CAD命令,扩充完善适合本专业的新功能,从而极大地提高工作效率,本文通过几个应用实例对AutoCAD在水工设计上的应用进行了探讨。
关键词:CAD技术 应用 水利水电工程 AutoCAD VisualLisp语言
1 概述 水利水电工程领域利用AutoCAD平台进行二次开发也取得了一系列成果,如90年代以来陆续开发的水电站地面厂房CAD系统、重力坝CAD系统、隧洞CAD系统、水机油汽水CAD系统、地质柱状图CAD等均取得了较好的应用效果。但水电工程设计的复杂性决定了任何现成的CAD软件都有其局限性,设计过程中许多问题还只能用原始的方法解决。本文通过几个实例对AutoCAD二次开发常用的Lisp语言在水电工程设计中的应用进行了初步探讨,希望能够起到抛砖引玉的作用。
VisualLisp语言是AutoCADR14版本以后提供的全新的开发环境,是嵌于AutoCAD内部,将Lisp语言与AutoCAD相结合的产物,是一种智能型语言。利用AutoLisp可以灵活方便地增加AutoCAD新命令,几乎无限地扩展AutoCAD新功能,
2 应用实例
2 .1 坐标画线
利用已知坐标点画线是设计工作中经常遇到的问题,如河道、堤防等实测断面、水位流量关系曲线、堰面曲线等数据的处理,均可归结为坐标画线问题。对于堰面曲线等有函数方程的曲线可以利用EXCEL按照期望的步长自动生成一系列坐标点。对于测量常用的起点距-高程形式的数据,也可以利用EXCEL转化成坐标点形式。
(1)利用脚本文件(.SCR)
利用任何文本编辑器如Note、Uedit、Word、Excel等建立纯文本文件EX1.SCR,注意文本文件后缀必须为.SCR,坐标之间用半角逗号分开,文件中不允许出现空格,文件最后一行必须为空回车。文件建立时,可以直接把 EXCEL或其他文件中的坐标表利用拷贝、粘贴功能加入脚本文件中。
Pline
345.66,238.65 128.44,235.66
文件保存后,执行AutoCAD中“工具”下的“运行脚本”,在显示的窗口中查找并选中EX1.SCR,屏幕上会立即显示所绘线条。
(2)利用LSP程序
建立坐标表文件EX2.DAT,后缀任意,可以依次输入多段曲线,中间用曲线名称分开,程序自动绘制多条曲线并可标注坐标表。
“曲线1” 128.44,235.66
345.66,231.78
“曲线2”
433.34,567.23
434.12,464.12
利用AutoCAD中“工具”菜单下的“VisulLisp编辑器”建立DRLINE.LSP文件如下
(defun C:drline()
(if fn
(setq fn (getfiled "坐标点文件名" fn ""
2))
(setq fn (getfiled "坐标点文件名" "" ""
2))
)
(setq f (open fn "r"))
(setq p0 (getpoint "n画线起点:"))
(setq bz 0 mm
1)
(command "pline")
(while (/= bz
1)
(setq md (read-line f))
(if (/= md nil)
(setq zbb (read md))
(setq bz
1)
)
(setq dx (car zbb) dy (cadr zbb))
(setq p1 (list (+ dx (car p0))
(+ dy (cadr p0)))
)
(command p
1)
(setq mm (1+ mm))
)
(command "")
(close f)
)
文件存盘后,加载运行,相当于新增加了坐标画线命令DRLINE,按提示选中存放坐标表的文件即可实现自动绘制曲线。
2 .2 地形切剖面
水电工程设计中经常遇到在地形图上切剖面的问题,借助Visual Lisp可以实现快速切剖面。
(1) 初始地形图处理
把带z坐标的地形平面图进行变换,变换后z坐标值成为层名,为加快切剖面运行速度,把“LWPOLYLINE”和”SPLINE”均转化为”LINE“线,程序如下
(defun c:pltol()
;LWPOLYLINE转化为LINE
(setq n 0)
(setq e (ssget"X" (list (cons 0 "LWPOLYLINE"))))
(setq sh (sslength e))
(if e
(while (< n sh)
(setq e1 (ssname e n))
(command "pedit" e1 "d" "")
(setq x (entget e
1))
(setq ngc (atof (setq la (fld 8 x))))
(command "explode" e
1)
(setq n (+ n
1))
) ) )
(defun fld (num lst)
(cdr (assoc num lst))
)
(defun c:spltol ()
;SPLINE转化为LINE
(setq n 0)
(setq e (ssget "X" (list (cons 0 "SPLINE"))))
(setq sh (sslength e))
(if e
(while (< n sh)
(setq x (entget (setq e1 (ssname e n))))
(setq nla (itoa (fix (caddr (fld 10 x)))))
(if (= (fld 0 x) "SPLINE")
(progn
(command "layer" "n" nla "c"
"6" nla "s" nla "")
(command"line")
(setq nm (length x)
dzs (fld 73 x) dzs1 (fld 74 x))
(while (> nm
5)
(if (= (car (nth nm x))
10)
(progn
(setq b1 (nth nm x))
(setq x1 (cadr b
1))
(setq y1 (caddr b
1))
下载文档
网友最新关注
- 知错就改
- 拍手歌
- 父爱无边
- 我们的校园
- 谁和谁好
- 难忘的运动会
- 流浪猫
- 贺年片
- 门长
- 第一次一个人睡觉
- 一双高跟鞋
- 芦花鸡
- 来福
- 有趣的实验—纸杯烧水
- 我为您骄傲,我为您自豪
- *局工会委员会换届选举方案
- 街道创建文明生态村实施方案
- 第三阶段工作实施方案
- 林业局2005年度干部教育培训实施方案
- XXX局优质规范服务工作方案
- **移动公司亲友包营销方案
- 司法局开展法律援助列公益活动实施方案
- 教师暑期集训方案
- XX镇创建文明生态镇活动实施方案
- XX市文化局创建文明城市文明景区工作实施方案
- 2005×公司细节年策划草案
- 法院做好人民调解工作实施方案
- 春节期间文体娱乐活动方案
- 关于开展学习型家庭创建活动的实施方案
- “三城共建”宣传方案
- 如何完善会计委派制(1)
- 完善新准则信息披露的“八项注意”(1)
- 关于加强会计信息披露制度的若干思考(1)
- 套期保值会计与税务处理的差异(1)
- 新旧会计准则主要变化对比分析(1)
- 论会计职业道德规范(1)
- 利培酮治疗精神分裂症临床疗效观察(1)
- 利益相关者微观会计政策选择行为分析(1)
- 固定资产减值准备计提应用难点分析及对策(1)
- 实地盘存制下存货发出计价方法的运用(1)
- 高校实施国库集中支付制问题及对策(1)
- 试论审计委员会制度与会计信息质量(1)
- 加强基层审计机关干部队伍建设的建议(1)
- 加强会计监督所带来的影响(1)
- 会计信息失真背后的各方博弈(1)
- 《坐井观天》综合资料
- 《我是什么》教学设计之一
- 《难忘的一天》教学设计之一
- 《难忘的一天》教学设计之二
- 《打电话》教学建议
- 《坐井观天》教学实录与评析片
- 《我是什么》综合资料
- 《坐井观天》教学设计之二
- 《坐井观天》说课设计
- 《兰兰过桥》教学设计之一
- 《兰兰过桥》教学设计之二
- 《坐井观天》教学设计之三
- 《我是什么》教学设计之二
- 《兰兰过桥》教学设计之三
- 《坐井观天》教学设计之一