tft每日頭條

 > 科技

 > dynamo cloth教程

dynamo cloth教程

科技 更新时间:2024-06-26 12:59:51

  在Dynamo中,線和面都有PointAtParameter及NormalAtParameter等使用Parameter的節點,很多人隻是知道Parameter需要是0到1之間的數字,但是對于Parameter真正的意義,在理解上還是沒有GET到的,這裡就介紹一下線和面的Parameter。

  Parameter的本意是參數,作為可以進行參數化設計的工具,Dynamo是通過參數來控制圖形類的元素,尤其是線和面。我們先來看線。

  線是一維的(曲線因為所有點不能脫離線,也是一維的,相當于可以把曲線拉直),一條任意形狀的曲線,一般具有兩個基本的特征,有起始點和結束點。在參數化控制的設計上,Dynamo将曲線的起始點設計為0,終點設計為1。使用0和1是為了将所有曲線的參數化率統一,這個就如同将任意的一個向量Vector進行Normalize一樣,這樣不同的向量就有統一的一個起點,及标準化的一個長度(1),在将來做多個向量比較、運算時簡化。統一線的參數為0..1也是這個目的,可以使用一個标準化統一的标準來處理所有類型的線(包括直線、圓弧等一次曲線及雙曲線等更高階的二次及多次曲線),簡化操作過程。

  基本曲線(直線、圓弧)是具有可延長性的,對于可以延長的曲線,Dynamo允許程序使用越界的參數,也就是說,可以使用大于1或者小于0的參數,這時候,Dynamo内部會自動延長曲線。直接獲取對應位置的點或者Normal而不需要真實的曲線延長,也就是說,Curve.PointAtParameter是可以獲取不在基本曲線上,而在基本曲線延長線上的點的。

  面肯定是二維的(因為所有點不能脫離面,相當于可以将三維空間曲面展開拉平),因此需要兩個維度來控制其參數,這就是UV。UV相當于坐标系統的XY,因此一般情況下,UV是相互垂直的。因為這個原因,UV實際上會組成一個矩形的範圍,相當于面的包圍盒(BoundingBox),在這個矩形範圍内,UV的參數化數據也是由0到1之間變化。

  在面基本為矩形是,從0到1的UV所取得的點一般都會位于面上,面的形狀非矩形時,會有一些點(甚至是大部分點)位于面的延展面上,在下圖可以清楚的看到:

  

  因此對于比較異形的面,使用Surface.PointAtParameter獲取點位後,還需要判斷一下點到Surface的距離是否為零來确定獲取的參數點是否在Surface上。

  以上是平面的情況,對于弧形或者球形的表面,這些點将沿着弧形面或者球形面展開,具體可以參照下圖:

  

  轉載自:腿腿教學網

  ,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved