`

AutoCAD环境下实现地质图形自动屏幕数字化功能

阅读更多
<meta content="MSHTML 6.00.2900.3199" name="GENERATOR"> <style></style>2007年10月12日 02:13:00

常规条件下,通过数字化桌配合数字化软件,实现地质平面图或剖面图的坐标点数据采集,由于这种手工数字化方式费时费力, 数据差错率高,效率低,推广使用受到限制,一种可以替代数字化桌的地质图形屏幕数字化技术,以其快捷、高效和自动化的特点,显示出较强的实用性。

我们知道,在AutoCAD环境下,不管是通过数字化仪对地质图形数字化生成的矢量图形,还是直接绘制的地质图形,都不能自动输出等值线、断层的采集点(节点)标准坐标数据文本文件,而地质专业人员往往需要获取这些数据及其标准文本文件,以实现与工作站的油藏数模等地质绘图系统完全数据文件格式交换。

为满足这一需要,笔者采用AutoLisp语言编程技术,设计了AutoCAD矢量图形等值线或断层的采集点(节点)标准坐标数据文本文件生成程序,配合AutoCAD已具有的通过数字化桌数字化生成矢量图形的功能,不仅可以在AutoCAD环境下的输出具有实际坐标概念的地质矢量图形文件,又可生成其采集点(节点)标准坐标数据文本文件,并可根据AutoCAD已有功能对不同比例的地质矢量图形达到求解圈闭实际含油面积、油()井间距的功能。

该程序getlwpn.lsp 要求用户选定对象,然后自动过滤识别选区内的多义线,将获取的每条多义线的每个节点坐标由对象坐标系统(OCS)转换为世界坐标系统(WCS),实现节点坐标数据屏幕打印和以文本文件格式的自动保存。

程序运行方法:启动AutoCAD,选择菜单“Tools Load application…” ,加载getlwpn.lsp程序,在命令行键入“getlwpoly”,提示用户选择对象,然后出现保存文件对话框,并提示用户确定用于保存节点标准坐标数据的*.txt文本文件。选取范围确定后,命令窗口中每行将以“Li X Y Z”格式显示选定的每条多义线的每个节点坐标数据,其中Lii=0,1……n-1,n为选定多义线数目)为多义线名,X Y Z分别代表该多义线某个节点X Y Z坐标数据;同时,节点标准坐标数据保存在用户指定的*.txt文本文件中。

<shapetype id="_x0000_t202" path="m,l,21600r21600,l21600,xe" o:spt="202" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><path o:connecttype="rect" gradientshapeok="t"></path></shapetype><shape id="_x0000_s1028" style="MARGIN-TOP: 132.6pt; Z-INDEX: 3; LEFT: 0px; MARGIN-LEFT: 3in; WIDTH: 198pt; POSITION: absolute; HEIGHT: 23.4pt; TEXT-ALIGN: left" type="#_x0000_t202" stroked="f" o:allowincell="f"></shape><shape id="_x0000_s1031" style="MARGIN-TOP: 132.6pt; Z-INDEX: 6; LEFT: 0px; MARGIN-LEFT: 36pt; WIDTH: 162pt; POSITION: absolute; HEIGHT: 31.2pt; TEXT-ALIGN: left" type="#_x0000_t202" stroked="f" o:allowincell="f"></shape>

1 文本文件保存窗口

2 getlwpn.lsp程序运行窗口

<wrapblock><shapetype id="_x0000_t75" path="m@4@5l@4@11@9@11@9@5xe" o:spt="75" coordsize="21600,21600" stroked="f" filled="f" o:preferrelative="t"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="_x0000_s1026" style="MARGIN-TOP: 23.4pt; Z-INDEX: 1; LEFT: 0px; MARGIN-LEFT: 252pt; WIDTH: 126pt; POSITION: absolute; HEIGHT: 94.5pt; TEXT-ALIGN: left" type="#_x0000_t75" o:allowincell="f"><imagedata o:title="" src="file:///F:%5CDOCUME~1%5CADMINI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image001.png"></imagedata><wrap type="topAndBottom"></wrap></shape><shape id="_x0000_s1029" style="MARGIN-TOP: 23.4pt; Z-INDEX: 4; LEFT: 0px; MARGIN-LEFT: 36pt; WIDTH: 126pt; POSITION: absolute; HEIGHT: 94.5pt; TEXT-ALIGN: left" type="#_x0000_t75" o:allowincell="f"><imagedata o:title="" src="file:///F:%5CDOCUME~1%5CADMINI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image002.png"></imagedata><wrap type="topAndBottom"></wrap></shape></wrapblock>


<shape id="_x0000_s1030" style="MARGIN-TOP: 20.9pt; Z-INDEX: -2; LEFT: 0px; MARGIN-LEFT: 153pt; WIDTH: 117pt; POSITION: absolute; HEIGHT: 87.75pt; TEXT-ALIGN: left" type="#_x0000_t75" wrapcoords="-129 0 -129 21429 21600 21429 21600 0 -129 0"><imagedata o:title="" src="file:///F:%5CDOCUME~1%5CADMINI~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image005.png"></imagedata><wrap type="tight"></wrap></shape>

<shape id="_x0000_s1027" style="MARGIN-TOP: 6.7pt; Z-INDEX: 2; LEFT: 0px; MARGIN-LEFT: 135pt; WIDTH: 180pt; POSITION: absolute; HEIGHT: 23.4pt; TEXT-ALIGN: left" type="#_x0000_t202" stroked="f"></shape>

3 形成的节点坐标文本文件文件窗口


以下为getlwpn.lsp程序清单:

; getlwpn.lsp

(defun c:getlwpoly ( / ss lwpolycounter counter ename ent

listlength elementcounter

kind OCSpoint WCSpoint string f q)

; 要求用户选定多义线

(princ "\nSelect LWPolylines: ")

(setq ss (ssget '((0 . "LWPOLYLINE"))))

(if (equal ss NIL)

(exit) ; 没有选择对象或已取消

)

(setq lwpolycounter (sslength ss) ; 多义线数

counter 0)

(setq q " ")

(if (and jdzb (findfile jdzb))

(setq jdzb (getfiled "保存为..." jdzb "txt" 1))

(setq jdzb (getfiled "保存为..." "" "txt" 1))

)

(while (/= counter lwpolycounter)

(setq f (open jdzb "w"))

; 获得单个多义线

(setq ename (ssname ss counter)

ent (entget ename)

listlength (length ent)

elementcounter 0)

; 从多义线清单中获得每个元素

(while (> elementcounter listlength)

; 从清单中获得一个元素

(setq element (nth elementcounter ent)

kind (car element))

(if (equal kind 10)

; 该元素所含的坐标

(progn

; 获取坐标 (OCS系统)

(setq OCSpoint (list (nth 1 element) ; x坐标

(nth 2 element) ; y坐标

0)) ; z坐标

; 将它们转为 WCS系统

(setq WCSpoint (trans OCSpoint ename 0))

; 显示坐标

(write-char 10 )

(setq string (itoa counter))

(setq string (strcat "L" string))

(setq string (strcat string " " (rtos (nth 0 WCSpoint))))

(setq string (strcat string " " (rtos (nth 1 WCSpoint))))

(setq string (strcat string " " (rtos (nth 2 WCSpoint))))

(write-line string)

(setq string (strcat q "\n" string))

(setq q string)

)

)

(setq elementcounter (1+ elementcounter))

)

; 转到下一个选定的多义线

(setq counter (1+ counter))

(write-line q f)

(close f)

; 打印空行

(write-char 10)

)

;释放选择设置

(setq ss NIL)

(princ "\nReady.")

(princ)

)



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1821047


分享到:
评论

相关推荐

    AutoCAD与MAPGIS数据转换在地质数字化中的应用

    《AutoCAD与MAPGIS数据转换在地质数字化中的应用》这一主题深入探讨了在地质数字化领域,如何有效地在AutoCAD和MAPGIS两个强大的图形处理与地理信息系统软件之间进行数据转换,以实现信息共享和高效的数据利用。...

    基于Auto CAD的矿山三维实体井巷实现研究.pdf

    ObjectARX是AutoCAD的一个开发工具包,它允许开发者使用C++语言为AutoCAD开发功能强大的应用程序,这些程序可以和AutoCAD无缝集成,共享AutoCAD的命令和图形界面。通过这种技术,可以扩展AutoCAD的功能,使其能够...

    Auto CAD制作勘查线剖面图中的数据共享及图形格式交换.pdf

    AutoCAD是一款广泛应用于建筑设计、土木工程、机械设计、工程制图等领域的计算机辅助设计软件...此外,通过不同格式间的转换,可实现与地质学家使用的其他专业软件的无缝对接,进一步推动了地质勘查工作的数字化进程。

    Auto CAD 2008在矿山工程中的应用.pdf

    VBA是一种编程语言,允许用户创建可以在Windows环境下的应用程序,例如AutoCAD中运行的脚本和宏。 2. 动态矿床地质模型建立:文档描述了利用AutoCAD 2008建立一个可以动态反映矿床地质特征的模型。这样的模型对于...

    Auto CAD煤矿信息管理系统及其应用.pdf

    该系统利用AutoCAD作为图形处理核心,通过VBA(Visual Basic for Applications)进行二次开发,增强了AutoCAD处理数据的能力,使得煤矿企业的生产、安全等信息能够得到更加高效、准确的管理。 系统设计的基本思路是...

    CAD成图在施工地质编录中的应用.pdf

    AutoCAD是一款广泛使用的计算机辅助设计软件,它具有强大的绘图功能和编辑修改能力,特别适合在地质编录中进行图形绘制和信息整合。利用AutoCAD技术,可以将传统的手工素描图转换成数字化的展示图,大大提高了地质...

    行业资料数字化碰桩验算法度模范与AUTO CAD三维画图方法在碰桩验算中的综合应用.doc

    总结来说,文章强调了在桩基工程中,结合 Excel 数字化验算程序与 AutoCAD 三维绘图的集成应用,是提升工作效率、减少错误的重要手段。这种技术的应用有助于推动工程领域的技术创新,为施工安全和效率提供强有力的...

    AutoCAD 和MAPGIS 间的数据转换

    AutoCAD自2000版本起还增加了诸如AutoCAD设计中心(ADC)、多文档设计环境(MDE)等新特性,进一步增强了其功能性和实用性。 另一方面,MAPGIS是一款由武汉中地信息工程有限公司研发的基础地理信息系统(GIS)平台。它...

    浅谈AUTO CAD新技术在矿山测量中的应用.pdf

    本文主要探讨了AutoCAD新技术在矿山测量中的应用,包括矿山测量图纸数字化和测量数据数字化两个方面,以及如何通过矿山测量CAD辅助绘图系统提高测量工作的效率和准确性。 AutoCAD技术自1982年首次发布以来,在短短...

    基于铁路选线CAD系统的图形接口方法与交互技术.pdf

    4. ObjectARX类函数:这是专门用于AutoCAD环境的一套C++类库函数,用以控制AutoCAD的各种高级功能,可以用来实现复杂的数据操作和图形处理。 该铁路选线CAD系统在一些设计单位得到应用,完成了多项线路工程设计,...

    浅谈MapGIS与AutoCAD的数据转换

    MapGIS作为地质勘查信息化的重要工具,以其独特的线条处理、字符表达及强大的图库操作能力,在数据采集、地质图数字化、成矿预测等方面占据优势地位。而AutoCAD,作为工程设计领域的通用辅助设计软件,凭借其丰富的...

    CAD下地质符号库建立方法研究.pdf

    通过AutoCAD的二次开发功能,可以对AutoCAD的内部数据结构进行探讨,使用AutoLISP语言进行改造和开发,建立起符合标准的地质符号库。 最后,对于地质符号库的设计和建立,需要重视地物编码作为基本索引项目的作用。...

    数字测井绘图软件(CLGIS CAD)在地质报告中的应用.pdf

    数字测井绘图软件(CLGIS CAD)的应用研究,主要集中在地质报告编制领域,其核心功能是实现基于原始测井数据的人机交互式自动生成测井曲线图,并提供图形的动态修改功能。本文将深入探讨CLGIS CAD的使用方法,包括...

    AutoCAD在采矿制图中的应用技巧.pdf

    3. **在AutoCAD中绘制**:打开AutoCAD,输入命令line,粘贴坐标数据,确认后即可自动绘制出折线。 通过这种方式,还可以轻松绘制各种曲线或点,并且便于在Excel中保存和修改坐标值。 #### 四、AutoCAD表格制作 在...

    CAD技术在测井解释成果中的应用.pdf

    通过直接对AutoCAD内部和外部数据库的操作实现测井图形数据库管理,并利用AutoCAD的绘图功能实现测井成果平面图的数字化,完成一次性成图输出。这种做法可以有效解决当前测井工作中遇到的文件格式不兼容、无法调用...

    浅谈CAD技术在煤矿地质工作中的应用.pdf

    CAD技术在煤矿地质工作中的应用,极大地推动了煤矿地质工作的数字化和信息化,改变了传统的手工绘制地质图的方式,实现了地质信息的计算机处理和管理。 在煤矿地质工作中,CAD技术的应用主要表现在以下几个方面: ...

    railroad铁路CAD生成

    同时,由于所有设计都在数字化环境中完成,方便进行版本管理和团队协作,减少了纸质图纸的使用,降低了成本,提高了效率。 在铁路CAD生成的过程中,用户需要注意与现实世界的数据相结合,如地形数据、地质报告、...

    MAPGIS和AutoCAD文件格式及相互数据的转换

    ### MAPGIS和AutoCAD文件格式及相互数据的转换 #### 一、MAPGIS与AutoCAD概述 ##### 1.1 MAPGIS文件格式 MAPGIS是中国地质大学(武汉)信息工程学院研发的一款国产地理信息系统(GIS)软件。该软件经历了多个版本...

    AUTO CAD技术在矿山测量中的运用探讨.pdf

    AUTOCAD技术具有强大的绘图与修改功能,用户可以通过命令调用和光标定位操作点、线、面等要素来绘制图形。此外,该技术还提供了修改功能,允许对图形进行擦除、修改和移动等编辑工作。软件包含实体造型模块,能够...

    地质成图应用

    地质成图技术是现代地质勘查工作中不可或缺的一部分,它借助计算机辅助设计(CAD)等现代化工具,实现地质数据的数字化处理与图形化展示,极大地提高了地质工作的效率和准确性。本文将详细介绍如何通过安装特定的...

Global site tag (gtag.js) - Google Analytics