內容簡介
隨著BIM技術應用的逐步普及,AutoCAD Civil 3D軟件應用於越來越多的行業,諸如交通運輸、土地開發、水利項目、市政工程、公路工程、測繪、地質等,正是因為該軟件麵嚮的行業眾多,用戶遍布全球各個國傢和地區,所以軟件本身不可能完全滿足每個行業的需求,也不可能符閤每個國傢及地區的標準要求,若要利用其完成本行業的應用,順利實現模型到施工圖的轉化並滿足國傢、行業或企業標準,對該軟件進行二次開發是必不可少的。
王磊編著的《AutoCAD Civil3D.NET二次開發》從一個程序設計愛好者的角度齣發,針對如何學習AutoCAD Civil 3D.NET二次開發,通過一係列的實例,嚮讀者展示瞭需要學習的基本知識點,為工程設計人員、程序設計人員學習AutoCAD及Civil 3D二次開發指明道路。《AutoCAD Civil 3D.NET二次開發》由淺入深,嚮讀者逐步展示瞭AutoCAD及Civil 3D.NET二次開發所需的基本計算機語言知識與各項基本操作、進階應用與相關知識。《AutoCAD Civil 3D.NET二次開發》麵嚮的讀者對象為熟練掌握Civil3D軟件應用並希望學習二次開發的工程設計人員、專職軟件設計人員以及從事BIM應用研究的在職碩士研究生。
內頁插圖
目錄
前言
第1部分 基礎知識
第1章 Civil 3D二次開發簡介
1.1 瞭解AutoCAD Civ訂3D及其APIs
1.2 Civil 3D二次開發的意義
1.3 Civil 3D二次開發所需的條件
1.4 從哪兒開始
第2章 開發環境的配置
2.1 編譯環境
2.2 NET項目設置
2.2.1 手動創建解決方案及項目
2.2.2 利用嚮導創建解決方案和項目
2.3 混閤項目設置
2.4 定義命令
2.5 編譯
2.6 加載及運行
2.6.1 手動加載程序及運行命令
2.6.2 通過工具空間加載並運行
2.6.3 通過注冊錶按需加載
2.7 幫助文檔
2.7.1 幫助文檔
2.7.2 如何查看幫助文檔
第3章 程序設計基礎
3.1 數據類型和操作符
3.1.1 常量與變量
3.1.2 簡單數據類型
3.1.3 算數運算符
3.1.4 關係與邏輯運算符
3.1.5 值類型與引用類型
3.2 方法
3.2.1 方法簽名
3.2.2 方法訪問
3.2.3 方法參數
3.2.4 返迴值
3.2.5 通過引用傳遞參數
3.2.6 方法的遞歸調用
3.3 選擇語句
3.3.1 if語句
3.3.2 switch語句
3.4 循環語句
3.4.1 for循環
3.4.2 foreach循環
3.4.3 while和do while循環
3.5 字符串的操作
3.5.1 字符串的比較
3.5.2 字符串的拆分
3.5.3 獲取指定字符串的位置
3.5.4 字符串的提取
3.5.5 字符替換
3.5.6 大小寫轉換
3.5.7 判斷是否存在指定字符
3.5.8 插入
3.5.9 刪除
3.5.10 清空空格及指定字符
3.6 集閤
3.6.1 集閤中元素數量
3.6.2 遍曆集閤
3.7 類型轉換
3.7.1 隱式轉換
3.7.2 顯式轉換
3.7.3 字符串與數字
3.8 命名空間
3.8.1 命名空間的用途
3.8.2 導入命名空間
3.8.3 AutoCAD及Civil 3D命名空間簡介
第2部分 基本操作
第4章 訪問數據庫中的對象
4.1 瞭解AutoCAD對象層次結構
4.1.1 應用程序
4.1.2 文檔
4.1.3 數據庫
4.1.4 符號錶
4.1.5 塊錶
4.1.6 塊錶記錄
4.1.7 字典
4.2 瞭解Civil 3D對象層次結構
4.2.1 應用程序
4.2.2 文檔
4.2.3 集閤
4.3 由ObjectId獲取object
4.4 事務(Transaction)
4.5 捕捉異常
4.6 人機交互
4.6.1 命令行輸齣
4.6.2 輸入整數
4.6.3 輸入實數及關鍵字
4.6.4 拾取點
4.6.5 拾取角度
4.6.6 拾取單個實體
4.6.7 拾取選擇集
第5章 創建對象
5.1 創建AutoCAD對象
5.1.1 創建直綫
5.1.2 創建圖層
5.1.3 創建布局及視口
5.2 創建Civil 3D對象
5.2.1 創建幾何空間點
5.2.2 創建麯麵
5.2.3 創建采樣綫
5.2.4 小結
5.3 創建Civil 3D樣式
5.3.1 創建點樣式
5.3.2 創建麯麵樣式
5.3.3 創建標簽樣式
5.3.4 小結
第6章 編輯對象
6.1 編輯AutoCAD對象
6.1.1 修改對象的屬性
6.1.2 復製、刪除、分解對象
6.1.3 平移、鏇轉、縮放對象
6.1.4 多段綫修改
6.2 編輯Civil 3D對象
6.2.1 修改麯麵頂點
6.2.2 修改縱斷麵
6.2.3 拆分道路區域
6.3 編輯Civil 3D設定
6.3.1 訪問各種設定
6.3.2 編輯要素設定
6.3.3 編輯命令設定
6.3.4 使用屬性字段
第3部分 進階應用
第7章 對象信息的提取
7.1 創建標簽
7.2 數據插入錶格
7.2.1 獲取錶格樣式
7.2.2 創建錶頭
7.2.3 填充數據
7.2.4 插入錶格
7.2.5 獲取樁號文本
7.3 輸齣數據到外部文件
第8章 用戶界麵的應用
8.1 自定義對話框
8.1.1 界麵設計
8.1.2 代碼實現
8.1.3 調用對話框
8.2 功能區I
8.2.1 瞭解功能區-
8.2.2 將功能區麵闆添加至已有選項卡
8.2.3 將功能區麵闆添加至上下文選項卡
8.3 麵闆
8.3.1 瞭解Palette
8.3.2 創建簡單的WPF用戶控件
8.3.3 創建麵闆
8.4 上下文菜單
第9章 程序部署
9.1 自動加載簡介
9.2 BUNDLE軟件包
9.2.1 文件夾結構
9.2.2 XML文件基礎知識
9.3 MSI安裝程序
9.3.1 組織安裝程序
9.3.2 指定應用程序數據
9.3.3 配置目標係統
9.3.4 定製安裝程序界麵
9.3.5 定義安裝需求及行為
9.3.6 準備發布
第4部分 相關主題.
第10章 COM互操作的應用
10.1 瞭解COM API
10.2 實現.NET與COM互操作
10.2.1 根對象及COM中的基本概念
10.2.2 訪問Civil 3D對象
10.3 COM對象與.NET對象的轉換
10.3.1 .NET對象轉換為COM對象
10.3.2 COM對象轉換為.NET對象
第11章 C++API的應用
11.1 瞭解ClJstomDraw
11.2 自定義縱斷麵竪軸
11.3 繪製擋牆分隔縫
第12章 LINQ的應用
12.1 瞭解LINQ
12.1.1 匿名類型
12.1.2 擴展方法
12.1.3 Lambda錶達式
12.2 LINQ功能初體驗
12.2.1 排序
12.2.2 篩選
12.2.3 數據投影
12.2.4 分組
12.3 針對對象查詢
第13章 創建部件
13.1 部件程序的基本結構
13.1.1 模闆類SATemplate
13.1.2 CorridorState對象
13.1.3 支持文件
13.2 創建自定義部件
13.3 創建.atc文件
13.4 通過.pkt文件加載部件
附錄A 視頻部分說明及下載地址
索引
參考文獻
前言/序言
本書從AutoCAD Civil 3D.NET二次開發基礎知識入手,詳細介紹瞭AutoCADCivil 3D及AutoCAD二次開發所需瞭解、掌握的理論知識。以.NET為主,通過詳細的代碼,嚮讀者展示瞭AutoCAD Civil 3D的基本技術與操作過程;同時也簡單介紹瞭COMAPI及Obj ectARX技術在AutoCAD Civil 3D二次開發中的應用。
本書麵嚮的讀者是熟練掌握AutoCAD Civil 3D軟件應用並開始接觸AutoCAD Civil3D.NET二次開發的初學者,特彆是沒有計算機語言基礎從零開始學習Civil 3D二次開發的初學者,也可以作為AutoCAD二次開發初學者的學習用書。
作為一名AutoCAD愛好者,在大學的最後一個學期,大部分時間是在計算機房度過的——學習AutoCAD的使用,當時的版本是DOS係統下的AutoCAD R12英文版。因工作性質的關係,工作後,使用AutoCAD的機會並不多,但偶然的機會,接觸到一些Lisp語言的知識,從此知道瞭AutoCAD二次開發的概念,隨後的兩年內我編寫瞭一些並不完善的小程序,主要用於提高工作效率。因為對二次開發的認識不夠準確,當時放棄瞭三次開發的學習,直到開始使用AutoCAD Civil 3D後,發現二次開發是充分發揮軟件功能必不可少的手段,我又重新開始學習AutoCAD及Civil 3D的二次開發知識。
在通讀本書之前,讀者有必要對本書的定位有一個準確的認識:要知道這是一本關於什麼的書,要知道這不是一本什麼書。
首先迴答第一個問題:
這是一本AutoCAD愛好者、AutoCAD Civil 3D用戶所編寫的書,我沒有深厚的計算機知識背景,也不是計算機軟件相關的從業人員,僅僅是一名從事瞭15年房建工程施工的工程師而已。
這是一本由二次開發自學者所寫的書,書中的內容僅是我自學過程中所學到的各種知識的匯總,並沒有把所有AutoCAD及Civil 3D二次開發知識全部羅列齣來。
這是一本我根據自己自學的心路曆程總結所寫齣的書,我想把自己在自學過程中遇到的問題及如何解決這些問題的經驗與有著同樣自學需求的朋友分享。
接下來迴答第二個問題:
這不是一本介紹計算機語言的書,二次開發離不開計算機語言,如果讀者要學習相關語言,您不得不參考其他書籍。
這不是一本介紹軟件應用的書,二次開發的一個基本條件是要求熟練掌握軟件的應用,即使熟練掌握瞭多種計算機語言,如果不熟悉軟件的應用,要寫齣高效率的代碼也並不是一件易事。
這不是一本能解決所有AutoCAD與Civil 3D二次開發相關問題的書,更確切地講,書中不少內容隻是提齣問題,並給齣瞭解決相關問題的思路,但並未給齣具體的解決方法,目的是讓讀者掌握解決問題的方法,而不是學會解決某一個具體問題。
我寫這本書的目的是想讓讀者在讀完這本書之後,能夠掌握AutoCAD及Civil 3D二次開發的學習方法,知道要學什麼,知道要查找什麼,知道如何去查找。
書中的一些示例並不完善,尤其是“類的繼承”的示例,我隻是想嚮讀者介紹“類的繼承”的概念,至於示例是否閤適、是否完善,需要打一個很大的問號。
在閱讀本書過程中,建議讀者邊閱讀邊鍵入代碼進行測試,不要隻讀不做,看與練是完全不同的,彆人輕鬆完成的事情,到自己手上可能就難以實現,所以一定要親自動手練習。在鍵入代碼的過程中,還可以發現更多問題並解決問題。
在學習的初期,不要帶著很強的目的性去學習,此時瞭解的知識、方法有限,容易誤入歧途,甚至是死鬍同。隨著掌握的知識的增多,視野會越來越寬,也就能找到更多解決問題的方法,對自己手中的工具有瞭全麵瞭解後,再用它來完成相應的工作會變得較為輕鬆。
書中第4章之後的示例代碼,讀者可發送郵件索取。
鑒於水平有限,書中難免有錯誤之處,歡迎讀者予以指正。
AutoCAD Civil 3D.NET二次開發 epub pdf mobi txt 電子書 下載 2024
AutoCAD Civil 3D.NET二次開發 下載 epub mobi pdf txt 電子書