Dynamo
Primer for v2.0
繁體中文
繁體中文
  • 關於
  • 簡介
    • 什麼是 Dynamo?它如何運作?
    • 手冊使用者指南、Dynamo 社群與平台
  • 安裝 Dynamo
  • 使用者介面
    • 工作區
    • 資源庫
  • 節點和線路
  • 基本節點和概念
    • 節點的索引
    • 用於計算設計的幾何圖形
      • 幾何圖形概述
      • 向量、平面和座標系統
      • 點
      • 曲線
      • 曲面
      • 實體
      • 網格
    • 程式的建置區塊
      • 資料
      • 數學
      • 邏輯
      • 字串
      • 顏色
    • 使用清單設計
      • 什麼是清單
      • 使用清單
      • 清單的清單
      • n 維清單
    • Dynamo 中的字典
      • 什麼是字典
      • 字典節點
      • 程式碼區塊中的字典
      • Revit 使用情況
  • 自訂節點和套件
    • 自訂節點
      • 自訂節點簡介
      • 建立自訂節點
      • 發佈至資源庫
    • 套件
      • 套件簡介
      • 套件案例研究 - Mesh Toolkit
      • 開發套件
      • 發佈套件
      • Zero-Touch 匯入
  • 適用於 Revit 的 Dynamo
    • Revit 連接
    • 選取
    • 編輯
    • 建立
    • 自訂
    • 記錄
  • Dynamo for Civil 3D
    • Civil 3D 連接
    • 入門
    • 節點資源庫
    • 範例工作流程
      • 道路
        • 燈柱放置
      • 面
        • 服務放置
      • 公用程式
        • 更名結構
      • 鐵路
        • 間隙包絡線
      • 測量
        • 點群組管理
    • 進階主題
      • 物件併入
      • Python 和 Civil 3D
    • Dynamo 播放器
    • 有用的套件
    • 資源
  • Dynamo in Forma Beta 版
    • 設定 Forma 中的 Dynamo Player
    • 在 Dynamo Player 中加入和分享圖表
    • 在 Dynamo Player 中執行圖表
    • Dynamo 計算服務與桌面版 Dynamo 的差異
  • 在 Dynamo 中撰寫程式碼
    • 程式碼區塊和 DesignScript
      • 什麼是程式碼區塊
      • DesignScript 語法
      • 速寫
      • 函數
    • 使用 DesignScript 的幾何圖形
      • DesignScript 幾何圖形基礎知識
      • 幾何基本型
      • 向量數學
      • 曲線:內插和控制點
      • 平移、旋轉和其他轉換
      • 曲面:內插、控制點、斷面混成、迴轉
      • 幾何參數化
      • 交集和修剪
      • 幾何布林運算
      • Python 點產生器
    • Python
      • Python 節點
      • Python 和 Revit
      • 設定您自己的 Python 樣板
    • 語言變更
  • 最佳實踐
    • 圖表策略
    • 指令碼撰寫策略
    • 指令碼撰寫參考
    • 管理您的程式
    • 在 Dynamo 中有效率地處理大型資料集
  • 範例工作流程
    • 入門工作流程
      • 參數式花瓶
      • 牽引點
    • 概念索引
  • 開發人員手冊
    • 從原始碼建置 Dynamo
      • 從原始碼建置 DynamoRevit
      • 管理和更新 Dynamo 中的相依性
    • 為 Dynamo 開發
      • 入門
      • Zero-Touch 案例研究 - 網格節點
      • 在 Zero-Touch 節點中執行 Python 指令碼 (C#)
      • 深入瞭解 Zero-Touch
      • 進階 Dynamo 節點自訂
      • 在 Dynamo 套件中使用 COM (互通性) 類型
      • NodeModel 案例研究 - 自訂使用者介面
      • 針對 Dynamo 2.x 更新您的套件和 Dynamo 資源庫
      • 針對 Dynamo 3.x 更新套件與 Dynamo 資料庫
      • 延伸
      • 定義 Dynamo 2.0+ 的自訂套件組織
      • Dynamo 指令行介面
      • Dynamo 整合
      • 為 Dynamo for Revit 開發
      • 發佈套件
      • 從 Visual Studio 建置套件
      • 將延伸當作套件
    • 提取請求
    • 測試預期結果
    • 範例
  • 附錄
    • 常見問題
    • 視覺程式設計和 Dynamo
    • 資源
    • 發行說明
    • 有用的套件
    • 範例檔案
    • 主體程式整合對應表
    • 下載 PDF
    • Dynamo 鍵盤快速鍵
Powered by GitBook
On this page
  • 目標
  • 主要概念
  • 版本相容性
  • 資料集
  • 解決方法
  • 選取結構
  • 取得結構位置
  • 篩選和排序
  • 產生新名稱
  • 更名結構
  • 結果
  • 附註:在 Dynamo 中視覺化
  • 構想
Edit on GitHub
Export as PDF
  1. Dynamo for Civil 3D
  2. 範例工作流程
  3. 公用程式

更名結構

Previous公用程式Next鐵路

Last updated 1 month ago

在管網中加入管和結構時,Civil 3D 會使用樣板自動指定名稱。這在一開始放置時通常足以應付,但是隨著設計逐漸發展,名稱在未來必然會有所變化。此外,我們可能需要許多不同的命名模式,例如在管路中從最下游的結構開始按順序命名結構,或按照與本端代理的資料架構一致的命名模式來命名結構。此範例將示範如何使用 Dynamo 定義任何類型的命名策略,並且以一致的方式套用。

目標

主要概念

  • 使用邊界框

  • 使用 List.FilterByBoolMask 節點篩選資料

  • 使用 List.SortByKey 節點排序資料

  • 產生和修改文字字串

版本相容性

此圖表將在 Civil 3D 2020 及更高版本上執行。

資料集

首先,下載以下範例檔案,然後開啟 DWG 檔案和 Dynamo 圖表。

解決方法

以下是此圖表中的邏輯概觀。

  1. 依圖層選取結構

  2. 取得結構位置

  3. 依偏移篩選結構,然後依樁號排序

  4. 產生新名稱

  5. 更名結構

我們開始吧!

選取結構

我們首先需要選取要使用的所有結構。我們會透過只選取特定圖層上的所有物件來執行此作業,這表示我們可以從不同的管網 (假設共用相同圖層) 選取結構。

  1. 此節點可確保我們不會意外擷取任何不想要但可能與結構共用相同圖層的物件類型。

取得結構位置

我們現在有了結構,我們需要找出它們在空間中的位置,以便可以根據位置對結構排序。為了執行此作業,我們將利用每個物件的邊界框。物件的邊界框是完全包含物件幾何實際範圍的最小方塊。透過計算邊界框的中心,我們可以得到結構很近似的插入點。

我們將使用這些點來取得結構相對於所選定線的樁號和偏移。

篩選和排序

從這裡開始,事情會變得有點棘手。在此階段,我們有一個大型清單,列出我們指定的圖層上的所有結構,並選擇了要沿其排序結構的定線。問題是清單中可能有我們不想更名的結構。例如,這類結構可能不是我們感興趣的特定管路。

  1. 選取的定線

  2. 要更名的結構

  3. 應忽略的結構

因此,我們需要篩選結構清單,這樣就不用考慮那些與該定線之間大於特定偏移的結構。這最適合使用 List.FilterByBoolMask 節點完成。篩選結構清單後,我們使用 List.SortByKey 節點,依其樁號值排序。

如果您不熟悉使用清單,請查看 使用清單 一節。

  1. 檢查結構的偏移是否小於門檻值

  2. 將任何空值取代為 false

  3. 篩選結構和樁號的清單

  4. 依樁號排序結構

產生新名稱

我們要做的最後一項工作,是為結構建立新名稱。我們將使用的格式為 <alignment name>-STRC-<number>。這裡還有額外幾個節點,是需要時以額外的零填補數字 (例如,「01」而不是「1」)。

更名結構

最後也是同樣重要的,我們更名結構。

結果

以下是使用 Dynamo 播放器執行圖表的範例。

如果您不熟悉 Dynamo 播放器,請查看 Dynamo 播放器 一節。

附註:在 Dynamo 中視覺化

利用 Dynamo 的 3D 背景預覽來視覺化圖表的中間輸出,而不是只顯示最終結果,會很有幫助。我們可以做一件簡單的事情,就是顯示結構的邊界框。此外,此特定資料集在文件中有廊道,因此我們可以將廊道地勢線幾何圖形帶入 Dynamo,為結構在空間中的位置提供一些情境脈絡。如果圖表是用在沒有任何廊道的資料集,則這些節點就不會執行任何作業。

現在,我們可以更清楚瞭解透過偏移篩選結構的流程如何運作。

構想

以下是一些如何擴充此圖表功能的構想。

根據結構 最接近的定線 (而不是選取特定定線) 更名結構。

除了更名結構外,還 更名管 。

根據結構的管路 設定圖層 。

根據定線的樁號標示,按順序更名管網結構。

任務完成!

🎯
🎉
139KB
Utilities_RenameStructures.dyn
6MB
Utilities_RenameStructures.dwg
選取給定圖層上的結構
使用邊界框取得每個結構的近似插入點
篩選和排序結構
產生新的結構名稱
設定結構的名稱
使用 Dynamo 播放器執行圖表,然後在 Civil 3D 中查看結果
視覺化結構和廊道地勢線的幾何圖形
調整定線偏移門檻值,然後在 Dynamo 中視覺化受影響的結構