当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript ArcGIS Mesh.vertexAttributes用法及代码示例


基本信息

以下是所在类或对象的基本信息。

AMD: require(["esri/geometry/Mesh"], (Mesh) => { /* code goes here */ });

ESM: import Mesh from "@arcgis/core/geometry/Mesh";

类: esri/geometry/Mesh

继承: Mesh > Geometry > Accessor

自从:用于 JavaScript 4.7 的 ArcGIS API

用法说明

Mesh.vertexAttributes函数(或属性)的定义如下:

vertexAttributes Accessor autocast


说明网格每个顶点属性的对象。顶点属性是说明每个顶点的位置(强制)、法线(用于照明计算和着色)和 uv(用于将材质图像映射到网格表面)的平面数值数组。

顶点属性可以通过组件faces 属性中指定的索引来处理。如果网格不包含任何组件,或者组件未指定任何面,则顶点属性被解释为每个连续的顶点三元组组成一个三角形。

属性:

类型说明
position Float64Array

顶点位置的平面数组。顶点位置具有 x、y 和 z 坐标,它们应该在几何的空间参考系中。

可选的

顶点 uv 坐标的平面数组(每个顶点 2 个元素)。

normal Float32Array
可选的

顶点法线的平面数组(每个顶点 3 个元素,范围从 -1 到 1)。

color Uint8Array
可选的

自:4.9

顶点颜色的平面数组(每个顶点 4 个元素,范围从 0 到 255)。顶点颜色乘以组件材质颜色(如果已定义)。

tangent Float32Array
可选的

自:4.11

顶点切线的平面数组(每个顶点 4 个元素,范围从 -1 到 1。第 4 个元素是一个符号值(-1 或 +1),表示切线基础的手性)。顶点切线用于法线贴图,请参阅MeshMaterial.normalTexture

例子:

let mesh = new Mesh({ spatialReference: SpatialReference.WebMercator });

// Specify vertices for two triangles that make up a square
// around a provided point. Uv coordinates are setup to cover the square
// from (0, 0) to (1, 1) from corner to corner.
mesh.vertexAttributes = {
  position: [
    pt.x - 10, pt.y - 10, 100,
    pt.x + 10, pt.y - 10, 100,
    pt.x + 10, pt.y + 10, 100,

    pt.x - 10, pt.y - 10, 100,
    pt.x + 10, pt.y + 10, 100,
    pt.x - 10, pt.y + 10, 100
  ],
  uv: [
    0, 0,
    1, 0,
    1, 1,

    0, 0,
    1, 1,
    0, 1
  ]
};

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 Mesh.vertexAttributes。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。