- Three.js源码学习(二)core/BufferGoemet
- Three.js源码学习(一)core/BufferAttrib
- Three.js源码学习(四)Core/DirectGeomet
- Three.js源码学习(五)core/EventDispatc
- Three.js源码学习(八)core/InstancedBuf
- Three.js源码学习(十一)core/Interleaved
- Three.js源码学习(十六)core/Raycaster
- Three.js源码学习(十七)core/Uniform
- Three.js源码学习(九)core/InstancedBuf
- Three.js源码学习(十二)core/Interleaved
bufferGeometryId//BufferGeometry使用奇数作为id
constructor构造器
id=bufferGeometryId
uuid
name
type=‘BufferGeometry’
index
attributes={}
morphAttriobutes={}
groups=[]
boundingBox=null
boundingSphere=null
drawRange={start:0,count:Inginity}
userData={}
method方法
isBufferGeometry()
getIndex()
setIndex()
addAttribute(name,attribute)
getAttribute(name)
removeAttribute(name)
addGroup(start,count,materialIndex)//
clearGroup()
setDrawRange(start,count)
applyMatrix(matrix)//需要attributes内有position,normal
rotateX(angle)//围绕x旋转
rotateY(angle)
rotateZ(angle)
translate(x,y,z)//??依赖Matrix
scale(x,y,z)//???
lookAt(vector)//依赖Object3D.lookAt()
center()
setFromObject(object)
从object设置BufferGoemetry位置颜色等属性
setFromPoints(points)
从点集设置BufferGeometry位置属性
updateFromObject(object)
从object更新vertices,normals,colors,uvs或者groups
fromGeometry(geometry)
从geometry的__directGeometry创建一个BufferGoemetry
fromDirectGeometry(geometry)
从geometry返回一个BufferGoemetry
computeBoundingBox()
计算限制Box
computeBoudingSphere()
计算限制球体,能包括所有的position
computeFaceNormals()
暂时未实现
computeVertexNormals()
计算定点的法向量,并归一化
merge(geometry,offset)
合并geometry中的attribute到当前对象
normalizeNormals()
将法向量归一化
toNonIndexed()
toJSON()
将data打包为json格式
clone()
返回一个当前对象的深拷贝
copy(source)
从source拷贝所有属性
dispose()
网友评论