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
  • 目標
  • 主要概念
  • 版本相容性
  • 資料集
  • 解決方法
  • 取得分佈主線幾何圖形
  • 取得界址線幾何圖形
  • 產生插入點
  • 取得連接點
  • 建立物件
  • 結果
  • 附註:啟用連續放置
  • 構想
Edit on GitHub
Export as PDF
  1. Dynamo for Civil 3D
  2. 範例工作流程
  3. 面

服務放置

Previous面Next公用程式

Last updated 1 month ago

典型住宅開發的工程設計涉及使用數個地下公共設施,例如污水管、雨水排水、飲用水或其他。此範例將示範如何使用 Dynamo 繪製從分佈主線到指定基地 (即宗地) 的服務連接。每個基地通常都需要連接服務,這使得放置所有服務的工作相當繁瑣。Dynamo 可以自動精確繪製必要的幾何圖形,並提供可做調整以符合本端代理標準的彈性輸入,來加快流程。

目標

主要概念

  • 使用 Select Object 節點供使用者輸入

  • 使用座標系統

  • 使用幾何作業,例如 Geometry.DistanceTo 和 Geometry.ClosestPointTo

  • 建立圖塊參考

  • 控制物件併入設定

版本相容性

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

資料集

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

解決方法

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

  1. 取得分佈主線的曲線幾何圖形

  2. 取得使用者所選界址線的曲線幾何圖形,如有必要可反轉

  3. 產生服務計量器的插入點

  4. 取得分佈主線最接近服務計量器位置的點

  5. 在模型空間中建立圖塊參考和線

我們開始吧!

取得分佈主線幾何圖形

我們的第一步是讓分佈主線的幾何圖形進入 Dynamo。我們要取得特定圖層上的所有物件,並接合在一起成為 Dynamo PolyCurve,而不是選取個別的線或聚合線。

如果您不熟悉 Dynamo 曲線幾何圖形,請查看 曲線 一節。

取得界址線幾何圖形

接下來,我們需要讓所選界址線的幾何圖形進入 Dynamo,以便我們可以使用它。適合進行此工作的工具是 Select Object 節點,可讓圖表的使用者在 Civil 3D 中點選特定物件。

我們還需要處理可能發生的潛在問題。界址線有起點和終點,這表示它有方向。為了讓圖表產生一致的結果,我們需要所有界址線的方向都一致。我們可以直接在圖表邏輯中說明此條件,這可以讓圖表更具彈性。

  1. 取得界址線的起點和終點。

  2. 測量每個點到分佈主線的距離,然後計算出哪個距離比較大。

  3. 想要的結果是,線的起點最接近分佈主線。如果不是如此,我們就反轉界址線的方向。否則,我們只需傳回原始界址線。

產生插入點

現在要來找出服務計量器的放置位置。放置通常由本端代理需求決定,因此我們只要提供可變更以滿足各種條件的輸入值。我們將使用沿界址線的座標系統做為建立點的參考。這可讓您非常輕鬆地定義相對於界址線的偏移,而不論其方位為何。

如果您不熟悉座標系統,請查看 向量、平面和座標系統 一節。

取得連接點

現在,我們需要取得分佈主線最接近服務計量器位置的點。這可讓我們在模型空間中繪製服務連接,以便能永遠與分佈主線互垂。Geometry.ClosestPointTo 節點是理想的解決方案。

  1. 這是分佈主線 PolyCurve

  2. 這些是服務計量器插入點

建立物件

最後一步是在模型空間中實際建立物件。我們將使用先前產生的插入點來建立圖塊參考,然後使用分佈主線上的點來繪製連到服務連接的線。

結果

當您執行圖表時,您應該會在模型空間中看到新的圖塊參考和服務連接線。請嘗試變更某些輸入,您會看到所有內容都會自動更新!

附註:啟用連續放置

您可能會發現,在為一條界址線放置物件後,選取不同的界址線會導致物件被「移動」。

這是 Dynamo 的預設行為,在許多情況下非常有用。但是,您可能要依序放置多個服務連接,讓 Dynamo 在每次執行時建立新物件,而不是修改原始物件。您可以變更物件併入設定來控制此行為。

請查看 物件併入 一節,以取得更多資訊。

變更此設定將強制 Dynamo「忘記」每次執行時所建立的物件。以下是在關閉物件併入的情況下,使用 Dynamo 播放器 執行圖表的範例。

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

構想

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

同時放置 多個服務連接 ,而不是選取每條界址線。

將輸入調整為改放置 污水管清掃口 ,而不是供水服務計量器。

加入開關 ,以允許在界址線的特定一側 (而非兩側) 放置單一服務連接。

將供水服務計量器圖塊參考放置在距界址線的指定偏移處,並為與分佈主線互垂的每個服務連接繪製一條線。

任務完成!

🎯
🎉
108KB
Land_ServicePlacement.dyn
842KB
Land_ServicePlacement.dwg
從 Civil 3D 取得物件,並將所有物件接合在一起成為單一條 PolyCurve
選取界址線並確保其方向正確
建立服務計量器的插入點
取得分佈主線上的互垂點
在 Dynamo 中調整輸入參數,在 Civil 3D 中立即看到結果
開啟物件併入時的行為
Dynamo 的物件併入設定
使用 Dynamo 播放器執行圖表,然後在 Civil 3D 中查看結果