国产麻豆一级在线观看_国产午夜亚洲精品国产成人小说_国产午夜成人福利在线观看蜜芽_国产天堂亚洲国产碰碰_国产麻豆剧看黄在线观看_国产噜噜在线视频观看_国产精品亚洲二区在线播放

首頁 新聞中心 技術博客

C#語言對AutoCAD二次開發

發布時間:2021-11-05 23:09:00   瀏覽量:2192   作者:GIS前沿

下面來開始講解一下CAD文檔和存儲圖形的一些原理,最后如何用代碼繪制一條線段。

在啟動AutoCAD應用程序進行畫圖時,CAD軟件會新建一個“Drawing1.dwg”文件;在這個dwg文件中可以繪制線段、多段線、圓、圓弧、樣條曲線等增加實體(Entity)圖形,也可以修改圖形位置,打斷、鏡像、復制、刪除等對實體圖形進行編輯。在學習AutoCAD軟件使用時,都是從最基本的創建圖形開始進行學習;同樣,在學習 .Net二次開發時,從創建基本的圖形對象開始學習仍然是最有效的選擇,使用程序繪制一些圖形,當程序運行后,圖形窗口出現寫出的圖形,這樣在學習的過程中就會產生濃厚的興趣。

CAD進行處理圖形的過程中,實際上就是操作打開的當前文檔(Document),也是數據庫(Database)顯示給用戶看的視圖。dwg圖形其實也是一個輕量級的數據庫文件。一個Document與一個Database一一對應。按照應用程序(Application)的規定把Database中的對象顯示給用戶,同時用戶對Document的操作也會通過Application回寫到數據庫,在這個過程中也會對文檔進行鎖定和解鎖,以防止后臺修改數據庫時前臺文檔也在同時修改。

Application、Document和Database之間的關系如下圖所示:

在這里插入圖片描述

Application、Document和Database關系圖

Database屬于ApplicationServices命名空間,在寫程序之前先導入ApplicationServices命名空間。
在這里插入圖片描述

獲取當前打開的活動文檔方法在這里插入圖片描述

獲取數據庫的兩種方法
直接通過HostApplicationServices的WorkingDatabase屬性進行獲取;
在這里插入圖片描述

先獲取當前文檔,然后在通過當前文檔獲取對應的數據庫。

在這里插入圖片描述

關于AutoCAD數據庫的基本知識
表:數據庫的組成單位。在CAD圖形中包含9個符號表。
記錄:是表的組成單位,一個表中可能包含多條記錄,也可能不包含任何記錄。
在這里插入圖片描述

CAD圖形的組成

向CAD添加圖元的基本步驟如圖:
在這里插入圖片描述

添加實體流程圖

下面我們向CAD中添加一個實體、以一條線段為例。首先在Visual Studio2013中新建一個名稱為AddLine解決方案。完整代碼如下:
在這里插入圖片描述

添加線段代碼

【調試】——【啟動調試】或者按“F5”(有關調試配置可以參考第一篇文章:C#程序對AutoCAD二次開發(一)),啟動AutoCAD應用程序,在命令行輸入Netload,加載“AddLine.dll”文件。

在這里插入圖片描述

加載應用程序

輸入ADDLINE命令,程序在模型空間就繪制出一條起點(100, 100, 0),終點(600, 600, 0)的直線。如下圖:
在這里插入圖片描述

程序繪制的線段

總結:這篇文章主要講了CAD文檔(Document)的組部分、Document與圖形數據庫(Database)之間的關系,以及向CAD文檔中添加圖形過程中要經過的幾個步驟;并且用代碼向模型空間中添加了一個線段(實體[Entity])、添加圖形到數據中必須根據需要以“讀”或者“寫”的方式進行“打開”塊表(BlockTable)和塊表記錄(BlockTableRecord),不然程序就會產生致命錯誤等情況。在以后的學習中我們也會詳細講解添加其他類型的實體到文檔中,比如多段線,圓、圓弧等,以及事務處理和ObjectId的使用等課程的學習。


來源:https://blog.csdn.net/qq_43173805/article/details/112304927
主站蜘蛛池模板: 新乡县| 静宁县| 阜城县| 北票市| 陵水| 资中县| 柏乡县| 丹寨县| 沂源县| 锦州市| 天峨县| 烟台市| 鄂尔多斯市| 湖北省| 盖州市| 麦盖提县| 博爱县| 仙居县| 喀什市| 青海省| 三亚市| 龙陵县| 连云港市| 罗江县| 潜山县| 唐海县| 郯城县| 资阳市| 海淀区| 冀州市| 富顺县| 榕江县| 民权县| 金沙县| 四川省| 会昌县| 景谷| 醴陵市| 无为县| 台中县| 肥东县|