几何函数

geometry.angle 函数

语法

  • float geometry.angle(angleType)

参数

  1. angleType - selector
    用于角度计算的选择器。
    • maxSlope - 计算形状相对于 xz 平面的最大坡度(以度为单位)。
    • azimuth - 计算当前形状的最大坡度的方向方位角(以度为单位);
    • zenith - 计算 90 度(天顶)与最大坡度之差。

返回

当前形状几何的角度(以度为单位),具体取决于选择器。

描述

geometry.angle 函数用于计算当前形状几何的角度。 azimuth 指从北开始测量的水平角度,即 90 度为东,180 度为南,270 度为西。 方位角的范围介于 [0, 360] 之间。 geometry.angle(zenith) 函数会返回与 90 - geometry.angle(maxSlope) 相同的值

示例

Cone-->
    comp(f) { all : color(geometry.angle(maxSlope)/ 90,
              0.0, 0.0) Shape. }
geometry.angle (maxSlope)
Cone-->
    comp(f) { all : color(0.5, geometry.angle(azimuth)/ 360,
              0.5) Shape. }

geometry.angle (azimuth)

geometry.area 函数

语法

  • float geometry.area()
  • float geometry.area(faceOrientation)

参数

  1. faceOrientation - selector
    要包含在面积计算中的面的选择器。
    • { surface| all }(默认)
    • { front | back | left | right | top | bottom | side }
    • { object.front | object.back | object.left | object.right | object.top | object.bottom | object.side }
    • { world.south | world.north | world.west | world.east | world.up | world.down | world.side }
    • { street.front | street.back | street.left | street.right | street.side }

返回

当前形状几何的表面积,具体取决于提供的 faceOrientation 选择器。

描述

geometry.area 函数用于计算表面积,即其所有面的总和。

geometry.boundaryLength

语法

  • float geometry.boundaryLength()

返回

所有边界边长度的总和。 仅属于一个面的边被视为边界边。

相关内容

geometry.{du|dv} 函数

语法

  • float geometry.du(uvSet, surfaceParameterization)
  • float geometry.dv(uvSet, surfaceParameterization)

参数

  1. uvSet - float
    纹理坐标集编号(介于 [0,9] 之间的整数)。 编号与材料属性的纹理图层相对应,另请参阅纹理:基础知识
  2. surfaceParameterization - selector

    表面参数空间。

    • uvSpace - 选择实际纹理坐标(通常介于 [0,1] 之间)。
    • unitSpace - 计算沿 u 或 v 轴的几何相关表面拉伸,并计算采用世界坐标单位(例如米)的近似值。

返回

选定 uvset 的 u 或 v 坐标分别横跨的范围(即最大值 - 最小值)。

相关内容

geometry.groups

语法

  • string[] geometry.groups()

返回

包含组名称的数组。

注:

组在数组中的顺序与由组的索引组件分割给定的顺序对应。 换句话说,数组中的元素索引与元素索引对应。

相关内容

geometry.hasTags 函数

语法

  • bool geometry.hasTags()
  • bool geometry.hasTags(tagQuery)

参数

  1. tagQuery - string
    此查询用于定义要考虑的标签。 另请参阅几何标签:基础知识

返回

如果任何几何组件(面、边或折点)具有标签,则为 true;否则,将为 false。 如果提供了 tagQuery,则仅考虑匹配的标签。

相关内容

geometry.hasUVs 函数

语法

  • bool geometry.hasUVs()
  • bool geometry.hasUVs(uvSet)

参数

  1. uvSet - float

    纹理坐标集编号(介于 [0,9] 之间的整数)。 编号与材料属性的纹理图层相对应,另请参阅纹理:基础知识

返回

如果几何具有 UV,则为 true;否则,将为 false。 如果提供 uvSet,则仅考虑相应 UV。

geometry.height 函数

语法

  • float geometry.height()

返回

采用世界坐标的几何高度。

相关内容

geometry.isClosedSurface 函数

语法

  • bool geometry.isClosedSurface()

返回

如果几何至少包含一个面并且所有边恰好属于 2 个面,则为 true;否则为 false

相关内容

geometry.isConcave 函数

语法

  • bool geometry.isConcave()

返回

如果几何至少包含一个凹面,则为 true;否则为 false

相关内容

geometry.isInstanced 函数

语法

  • bool geometry.isInstanced()

返回

如果当前形状几何为资产的实例,即几何自 insert operation 以来一直未更改,则为 True;否则为 false

描述

geometry.isInstanced 函数可用于检查插入的资产是否已修剪等。

相关内容

geometry.isOriented 函数

语法

  • bool geometry.isOriented(orientation)

参数

  1. orientation - selector
    要检查的面的选择器。
    • { front | back | left | right | top | bottom | side }
    • { object.front | object.back | object.left | object.right | object.top | object.bottom | object.side }
    • { world.south | world.north | world.west | world.east | world.up | world.down | world.side }
    • { street.front | street.back | street.left | street.right | street.side }

返回

如果至少一个几何面与 orientation 选择器一致,则为 True;否则为 false

描述

geometry.isOriented 函数可用于确定形状方向。

相关内容

geometry.isPlanar 函数

语法

  • bool geometry.isPlanar(tolerance)

参数

  1. tolerance - float
    用于确定面是否为平面的容差(以度为单位)。 将在每个折点处对面法线和边叉积(“局部法线”)进行比较;如果“局部法线”和面法线之间的角度大于容差,则面为非平面。 合理值为 0.25 度。

返回

如果几何至少包含一个面且所有面均为平面(在 tolerance 范围内),则为 true;否则为 false

相关内容

geometry.isRectangular 函数

语法

  • bool geometry.isRectangular(tolerance)

参数

  1. tolerance - float
    用于确定角是否为直角的容差(以度为单位)。

返回

如果几何至少包含一个面并且所有面由 4 个折点组成并仅包含直角,则为 true;否则 false。 介于 [90-tolerance, 90+tolerance] 之间的角被视为“直角”。

相关内容

geometry.materials

语法

  • string[] geometry.materials()

返回

包含材料名称的数组。

注:

材料在数组中的顺序与由组的索引组件分割给定的顺序对应。 换句话说,数组中的元素索引与元素索引对应。

相关内容

geometry.nEdges 函数

语法

  • float geometry.nEdges()

返回

当前形状几何的边数(整数)。

相关内容

geometry.nFaces 函数

语法

  • float geometry.nFaces()

返回

当前形状几何的面数(整数)。

相关内容

geometry.nHoles 函数

语法

  • float geometry.nHoles()

返回

当前形状几何的孔(即面中的孔)数(整数)。

相关内容

geometry.nVertices 函数

语法

  • float geometry.nVertices()

返回

当前形状几何的折点数(整数)。

相关内容

geometry.tags 函数

语法

  • string[] geometry.tags()
  • string[] geometry.tags(tagQuery)

参数

  1. tagQuery - string
    此查询用于定义要包含在结果中的标签。 另请参阅几何标签:基础知识

返回

具有按字母顺序排序的标签的数组。 如果提供了 tagQuery,则仅包含匹配的标签。

注:

包括存储在几何上的面、边或折点组件上的各个唯一标签。

相关内容

geometry.{uMin|uMax|vMin|vMax} 函数

语法

  • float geometry.uMin()
  • float geometry.uMax()
  • float geometry.vMin()
  • float geometry.vMax()
  • float geometry.uMin(uvSet)
  • float geometry.uMax(uvSet)
  • float geometry.vMin(uvSet)
  • float geometry.vMax(uvSet)

参数

  1. uvSet - float
    纹理坐标集编号(介于 [0,9] 之间的整数)。 编号与材料属性的纹理图层相对应,另请参阅纹理:基础知识

返回

所选 uvset 的最小或最大 u 或 v 值(没有参数的版本使用 uvset 0)。

geometry.volume 函数

语法

  • float geometry.volume()

返回

当前形状几何的体积。

相关内容