首页/技术分享

DynamoPrimer解析之ARCH-Customizing-BaseFile(下)

发布于:2020-01-13 12:23:25
4013人 分享

6、曲面的点已经通过上一步中的移动复制确定了位置,于是通过节点NurbsSurface.ByPoints创建一个曲面,输入端points需要输入组成曲面的各个点图元,输入端uDegree和输入端vDegree分别表示U方向和V方向的阶数,默认是3。

0601_通过点生成曲面.png

7、节点AdaptiveComponent.ByPoints能够自动放置自适应构件。在此之前,需要确定两个变量。

7.1 第一个变量是输入端familyType,即自适应构件的族类型,该变量可以直接通过节点Family Types确定。

7.2 第二个变量是输入端points,即自适应构件的定位点。定位点比较复杂,需要借助节点包LunchBox中的节点LunchBox Quad Grid by Face,该节点需要三个输入端,第一个输入端surface就是曲面,输入端U和输入端V分别表示U方向和V方向四边形的数量。

7.3 最终的输出端有三个,第一个是Panel Pts,即四边形的四个点。第二个是Panel Polys,即四边形的四条边。第三个是Panel Faces,即四边形的面。我们需要的是四边形的点作为定位点。

0701_放置自适应构件.png

8、放置完自适应构件以后,每个构件与太阳光之间都有一个夹角。

8.1 节点Plane.ByBestFitThroughPoints能够通过输入的点创建一个最接近输入点的平面,节点Plane.Normal能够获取平面的法向量,即得到了每个构件所在平面的法向量。

8.2 节点SunSettings.Current能够获取当前文档中的日光设置,节点SunSettings.SunDirection能够获取日光设置中日光的方向。最后用节点Vector.Dot计算两种向量之间的点积。

0801_获取向量的点积.png

9、将Aperture Ratio的数值赋予每个自适应构件。

9.1 在上一步中获取到向量之间的点积之后,先通过节点Math.Abs得到这些数据的绝对值。

9.2 通过节点Math.RemapRange重新定义数据的范围并且保留数据的分布率。输入端newMin和输入端newMax分别定义的是新范围的最小值与最大值。输入端numbers输入需要调整的数据。

9.3 最后通过节点Element.SetParameterByName将参数值赋予到参数Aperture Ratio中。输入端element输入之前放置的自适应构件。输入端parameterName表示参数的名称,即Aperture Ratio。输入端value输入参数的具体数值,即向量点积的绝对值。

0901_为自适应构件填写参数.png

转载请注明来源本文地址:https://www.tuituisoft/blog/3780.html

上一篇:

DynamoPrimer解析之ARCH-Customizing-BaseFile(上)

下一篇:

Revit自定义管道标注标签(投稿/文/匡贤选)