[page:Object3D] →

# 网格（[name]）

表示基于以三角形为[link:https://en.wikipedia.org/wiki/Polygon_mesh polygon mesh]（多边形网格）的物体的类。 同时也作为其他类的基类，例如[page:SkinnedMesh]。

## 示例

`var geometry = new THREE.BoxBufferGeometry( 1, 1, 1 ); var material = new THREE.MeshBasicMaterial( { color: 0xffff00 } ); var mesh = new THREE.Mesh( geometry, material ); scene.add( mesh );`

## 构造器

### [name]( [param:Geometry geometry], [param:Material material] )

[page:Geometry geometry] —— （可选）[page:Geometry]或者[page:BufferGeometry]的实例，默认值是一个新的[page:BufferGeometry]。
[page:Material material] —— （可选）一个[page:Material]，或是一个包含有[page:Material]的数组，默认是一个新的[page:MeshBasicMaterial]。

## 属性

共有属性请参见其基类[page:Object3D]。

### [property:Integer drawMode]

决定了网格中的三角形将如何从顶点来构造。 请参阅draw mode [page:DrawModes constants]（绘图模式常量）来查看其所有可能的值。 其默认值是[page:DrawModes TrianglesDrawMode]。

A sensible usage of this property is only possible when [page:Mesh.geometry] is of type [page:BufferGeometry BufferGeometry] since the engine always assumes *THREE.TrianglesDrawMode* for [page:Geometry Geometry].

### [property:Boolean isMesh]

用于检查这个类或者其派生类是否为网格，默认值为*true*。
你不应当对这个属性进行改变，因为它在内部使用，以用于优化。

### [property:Geometry geometry]

[page:Geometry] 或 [page:BufferGeometry] 的实例或者派生类，定义了物体的结构。
如有可能，推荐总是使用[page:BufferGeometry]来获得最好的表现。

### [property:Material material]

由[page:Material]基类或者一个包含材质的数组派生而来的材质实例，定义了物体的外观。默认值是一个具有随机颜色的[page:MeshBasicMaterial]。

### [property:Array morphTargetInfluences]

一个包含有权重（值一般在0-1范围内）的数组，指定应用了多少变形。 默认情况下是未定义的，但是会被[page:Mesh.updateMorphTargets updateMorphTargets]重置为一个空数组。

### [property:Object morphTargetDictionary]

基于morphTarget.name属性的morphTargets字典。 默认情况下是未定义的，但是会被[page:Mesh.updateMorphTargets updateMorphTargets]重建。

## 方法

共有方法请参见其基类[page:Object3D]。

### [method:null setDrawMode]( [param:Integer value] )

设置[page:.drawMode drawMode]的值。

### [method:Mesh clone]()

返回这个[name]对象及其子级的克隆。

### [method:null raycast]( [param:Raycaster raycaster], [param:Array intersects] )

在一条投射出去的[page:Ray]（射线）和这个网格之间产生交互。 [page:Raycaster.intersectObject]将会调用这个方法。

### [method:null updateMorphTargets]()

更新morphTargets，使其不对对象产生影响，重置[page:Mesh.morphTargetInfluences morphTargetInfluences] and [page:Mesh.morphTargetDictionary morphTargetDictionary]属性。

## 源代码

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]