亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Lisp的自動(dòng)圖框繪制和輸出管理技術(shù)研究

        2019-02-27 08:07:10唐爭(zhēng)氣庾榮樹(shù)
        城市勘測(cè) 2019年1期
        關(guān)鍵詞:圖紙程序分析

        唐爭(zhēng)氣,庾榮樹(shù)

        (1.湖南城市學(xué)院市政與測(cè)繪工程學(xué)院,湖南 益陽(yáng) 413000; 2.上海遠(yuǎn)通路橋工程有限公司,上海 200000)

        1 引 言

        CAD圖形是工程勘察設(shè)計(jì)中最常用的圖形,為提高工作效率和加強(qiáng)輸出文件的管理,其自動(dòng)分析圖幅與圖框繪制和打印輸出管理十分重要。Lisp是ListProcessor(表處理程序)的縮寫,主要用于人工智能(AI)領(lǐng)域。AutoLISP是人工智能語(yǔ)言CommonLISP的簡(jiǎn)化版本,AutoLISP嚴(yán)格遵循其語(yǔ)法和慣例,但又添加了許多針對(duì)AutoCAD的功能。借助AutoLISP,用戶可以用適合編寫圖形應(yīng)用程序的高級(jí)語(yǔ)言來(lái)編寫宏程序和函數(shù),并開(kāi)發(fā)各種軟件包。AutoLISP易于使用,并且非常靈活,多年來(lái)一直是自定義AutoCAD的標(biāo)準(zhǔn),作為開(kāi)發(fā)工具。另外,VisualLISP提供了用AutoLISP編寫的獨(dú)立應(yīng)用程序的工具。對(duì)一般的AutoCAD用戶來(lái)說(shuō),Lisp/Vlisp是進(jìn)行AutoCAD二次開(kāi)發(fā)的首選語(yǔ)言。但Lisp/Vlisp使用的對(duì)話框編程語(yǔ)言DCL和PDB沒(méi)有一個(gè)可視化的編程環(huán)境,主要依靠開(kāi)發(fā)者手工寫入代碼,且與Lisp/Vlisp的數(shù)據(jù)交換和相互控制實(shí)現(xiàn)起來(lái)比較麻煩,難于掌握。而OpenDCL是一款可視化的對(duì)話框制作工具,并且是一款完全免費(fèi)的開(kāi)源軟件,起源于3rdDay軟件公司著名的商業(yè)軟件ObjectDCL,兩者都是同一個(gè)作者開(kāi)發(fā)出來(lái)的,功能基本一樣,他們的目標(biāo)正是要取代原有的DCL語(yǔ)言。

        本文以勘察設(shè)計(jì)圖的比例尺進(jìn)行自動(dòng)分析標(biāo)準(zhǔn)圖紙大小或自定義大小、圖框整飾為目標(biāo),設(shè)計(jì)了分幅圖框繪制和打印輸出管理技術(shù)流程,并使用LISP語(yǔ)言編程實(shí)現(xiàn)。通過(guò)實(shí)際工程檢驗(yàn),結(jié)果表明該技術(shù)大大提高了圖框繪制和出圖的效率。

        2 自動(dòng)圖框繪制和輸出管理技術(shù)流程

        自動(dòng)圖框繪制和輸出管理技術(shù)流程如圖1所示:首先用OpenDCL進(jìn)行界面設(shè)計(jì),包括常用的參數(shù)信息設(shè)置;自動(dòng)提取圖幅信息,根據(jù)需要出圖比例,自動(dòng)分析推算出標(biāo)準(zhǔn)圖紙大小或自定義大小以及縱橫向布局的圖框角點(diǎn)坐標(biāo)的算法,從而確定分幅圖框以及角圖章繪制和打印預(yù)覽和輸出。使用LISP語(yǔ)言編程實(shí)現(xiàn)自動(dòng)繪制出合適圖框和自動(dòng)填寫工程名稱、圖名和人員等圖幅屬性信息、計(jì)算出相應(yīng)的數(shù)據(jù)輸出??筛鶕?jù)預(yù)覽圖框生成,看是否生成,達(dá)到要求后,可添加出圖說(shuō)明,并打印生成pdf圖紙并分類管理。

        圖1 主要技術(shù)流程

        3 關(guān)鍵技術(shù)與解決方法

        3.1 參數(shù)信息設(shè)置

        圖框自動(dòng)繪制需要填寫工程名稱、坐標(biāo)系、圖名和人員等圖幅屬性信息以及單位名稱、資質(zhì)、等級(jí)等數(shù)據(jù)信息??紤]到程序的通用性,程序記錄這些信息作為配置文件加以保存,在程序退出后自動(dòng)保存到配置文件中。

        3.2 分析圖框包含內(nèi)容的圖形界限

        分析圖形界限是程序設(shè)計(jì)的第一步,分析出準(zhǔn)確的信息后才能順利地完成接下來(lái)的步驟。分析圖框包含內(nèi)容的圖形界限可能是整個(gè)圖形界限或者需要套圖框的部分圖形元素的范圍。通過(guò)前面兩種情況構(gòu)造選擇集,通過(guò)遍歷所有圖形對(duì)象的最小包圍矩形,并獲得選擇集中所有對(duì)象的最小包圍矩形,從而獲取圖框內(nèi)的西南角和東北角坐標(biāo),即圖框的圖形界限。Lisp提供了CAD圖形元素的最小包圍矩形的函數(shù)vla-getboundingbox,部分代碼如下:

        (defun getboundboxXY(obj/x y)

        (vla-getboundingbox obj 'x 'y)

        (mapcar 'vlax-safearray->list(list x y))

        )

        3.3 根據(jù)比例尺自動(dòng)選取圖幅大小

        選取比例尺從而確定圖幅是至關(guān)重要的,本文的比例尺是要實(shí)現(xiàn)根據(jù)合適的比例尺所選圖框自動(dòng)分析。除了一般的比例尺,此設(shè)計(jì)加入了自定義比例尺,增加了很大的調(diào)節(jié)性。一個(gè)合適的圖紙大小與方向?qū)τ趫D幅繪制圖框的美觀性具有很高的要求。除了圖紙一般為A1,A2,A3,A4等以外,也考慮了測(cè)繪用的50cm*50cm或50cm*40cm矩形圖框,同時(shí)也加入了自定義圖紙大小,根據(jù)圖幅的要求,選出最適合的圖紙所需大小。在這里需考慮角圖章和圖外框的圖紙寬度,由圖框包含內(nèi)容的圖形界限的縱向和橫向長(zhǎng)度和比例尺,從而確定圖幅大小。本程序?qū)崿F(xiàn)了強(qiáng)制圖框選擇和自動(dòng)分析圖框。實(shí)現(xiàn)的主要算法如下:

        (cond

        ((or

        (>maxdisxy(/a0x(/1000.0 blc)))

        (>mindisxy(/a0y(/1000.0 blc)))

        )

        (progn

        (dcl-Control-SetText tukuanhz/Form1/ComboBox1"自定義")

        (setq tuhao_inx 5)

        (setq curtuhao "自定義")

        (dcl_Control_SetEnabled tukuanhz/Form1/TextBox5 T)

        (dcl_Control_SetEnabled tukuanhz/Form1/TextBox6 T)

        (dcl-Control-SetText

        tukuanhz/Form1/TextBox5

        (rtos(+(/maxdisxy(/blc 1000.0)) 20.0) 2 0)

        )

        ;圖紙毫米

        (setq hxiangz(+(/mindisxy(/blc 1000.0)) 20.0))

        (if(>hxiangz 120.0)

        hxiangz

        (+hxiangz 120.0)

        )

        (dcl-Control-SetText

        tukuanhz/Form1/TextBox6

        (rtos hxiangz 2 0)

        )

        )

        )

        )

        3.4 圖紙方向的選擇和定位

        本文所設(shè)計(jì)的程序把圖幅自動(dòng)放置于圖框正中間,根據(jù)上下左右方向的長(zhǎng)度自動(dòng)選出圖框是橫向還是縱向,也可以選擇把所繪制圖紙放置于哪個(gè)位置。實(shí)現(xiàn)的主要算法算法如下:

        (if(=curPaper_value "縱向")

        (setq x0

        (list

        (-

        (/(+xx1 xx2)2.00)

        (*(/(atof(dcl_Control_GetText tukuanhz/Form1/TextBox6)) 2)

        blkkuan

        )

        )

        (-

        (/(+yy1 yy2) 2.00)

        (*(/(atof(dcl_Control_GetText tukuanhz/Form1/TextBox5)) 2)

        blkkuan

        )

        (*25.0 blkkuan)

        )

        )

        )

        (setq x0

        (list

        (-

        (/(+xx1 xx2) 2.00)

        (*(/(atof(dcl_Control_GetText tukuanhz/Form1/TextBox5)) 2)

        blkkuan

        )

        )

        (-

        (/(+yy1 yy2) 2.00)

        (*(/(atof(dcl_Control_GetText tukuanhz/Form1/TextBox6)) 2)

        blkkuan

        )

        (*25.0 blkkuan)

        )

        )

        )

        )

        3.5 添加出圖說(shuō)明與打印輸出管理

        出圖說(shuō)明是出圖必不可少的,本文所說(shuō)的出圖說(shuō)明,會(huì)自動(dòng)放置于合適的位置,與圖幅大小的選擇完美搭配。打印輸出的格式是pdf文件,同時(shí)自動(dòng)生成到指定文件夾。pdf文件是很穩(wěn)定的一個(gè)格式文件,不能隨意改動(dòng)且不會(huì)導(dǎo)致原來(lái)正確的數(shù)據(jù)、圖框發(fā)生損失或改變。這對(duì)于成果出圖的管理很有幫助。

        (if(member "pdfFactory Pro" (fsxm-printers))

        (setq print-name "pdfFactory Pro")

        (dcl-MessageBox "請(qǐng)安裝pdfFactory Pro打印機(jī)" "提示")

        )

        (command "plot" "y";詳細(xì)配置

        "";默認(rèn)模型空間

        print-name;打印機(jī)名稱

        paper-z;紙張大小類型

        "m";毫米單位

        pp-ll;打印方向p豎向l橫向

        "";上下顛倒打印

        "w";窗口模式

        paper-min ;打印范圍角點(diǎn)

        paper-max ;打印范圍角點(diǎn)

        "f" ;打印比例布滿

        "c" ;打印偏移 居中

        "";默認(rèn)是否按樣式 打印

        "." ;默認(rèn)打印樣式表.表示無(wú)

        "";默認(rèn)是否打印線寬

        "";默認(rèn)著色打印設(shè)置

        "y";默認(rèn)是否打印到文件

        "y";默認(rèn)是否保存對(duì)頁(yè)面設(shè)置的修改

        "y";是否繼續(xù)打印

        ""

        )

        4 程序?qū)崿F(xiàn)與實(shí)例分析

        程序編寫完成后,用VLISP進(jìn)行編譯后生成vlx文件。在打開(kāi)的一個(gè)利用南方CASS的土方網(wǎng)格計(jì)算圖的CAD中的命令行輸入“appload”加載程序:“tukuanhz.vlx”,輸入tukuanhz命令,界面如圖2所示。

        圖2 程序界面

        填寫相應(yīng)信息后,點(diǎn)擊圖框繪制。成果如圖3所示。

        圖3 根據(jù)圖幅自動(dòng)繪制圖框

        5 結(jié) 語(yǔ)

        本文提出的自動(dòng)分析圖幅與圖框的自動(dòng)生成與打印輸出管理技術(shù),用Lisp語(yǔ)言編寫實(shí)現(xiàn)了這些功能的算法。簡(jiǎn)單有效地提高了圖幅圖框生成的效率性和美觀性,并實(shí)現(xiàn)打印生成pdf文件。通過(guò)實(shí)現(xiàn)檢驗(yàn),此程序大大地提高了工作效率、圖框繪制的效率性和科學(xué)性。

        猜你喜歡
        圖紙程序分析
        隱蔽失效適航要求符合性驗(yàn)證分析
        淺談汽車線束產(chǎn)品圖紙管理
        看圖紙
        試論我國(guó)未決羈押程序的立法完善
        電力系統(tǒng)不平衡分析
        電子制作(2018年18期)2018-11-14 01:48:24
        “程序猿”的生活什么樣
        英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
        電力系統(tǒng)及其自動(dòng)化發(fā)展趨勢(shì)分析
        創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
        酒店室內(nèi)裝修圖紙深化設(shè)計(jì)淺析
        河南科技(2014年12期)2014-02-27 14:10:44
        国产精品人妻一区夜夜爱| 99人中文字幕亚洲区三| 亚洲熟妇av一区| 四川丰满少妇被弄到高潮| 亚洲AV无码一区二区三区性色学| 在线精品亚洲一区二区三区| 亚洲女优中文字幕在线观看| 小蜜被两老头吸奶头在线观看| 色婷婷七月| 国产黄色污一区二区三区| 国产成人精品日本亚洲i8| av无码av天天av天天爽| 国内大量揄拍人妻在线视频| 国产桃色精品网站| 亚洲国产精品500在线观看| 蜜桃av噜噜一区二区三区免费| 国产一区二区三区在线观看完整版| 亚洲综合色区另类av| 国产日韩欧美网站| 亚洲一区二区在线视频,| 丰满女人猛烈进入视频免费网站 | 丰满人妻被公侵犯的视频 | 日韩成人无码| 久久国产亚洲AV无码麻豆| 国产精品日本中文在线| 激情视频在线观看好大| 国产成人精品亚洲日本在线观看| 999久久久免费精品国产| 亚洲免费毛片网| 人妻少妇艳情视频中文字幕| 国产日产精品一区二区三区四区的特点| 国产精品jizz观看| 日韩精品夜色二区91久久久 | 国产精品乱码在线观看| 亚洲av激情久久精品人| 日韩一区av二区三区| 日韩一卡2卡3卡4卡新区亚洲| 中文字幕不卡高清免费| 日本黄网色三级三级三级| 亚洲欧美牲交| 四虎影视国产在线观看精品|