摘要:構(gòu)造函數(shù)分別是長寬高是對應(yīng)長寬高的分段,在使用線模式進行渲染的時候,可以看到效果如下。長寬高分別被截為段,段,段。球體構(gòu)造函數(shù)球體半徑水平方向和垂直方向上分段數(shù)。最小值為,默認值為。構(gòu)造函數(shù)形狀數(shù)組可選的參數(shù)對象,可配置參數(shù)。
Geometry api Geometry
var geometry = new THREE.Geometry();立方體(BoxGeometry)
老版本里面貌似是CubeGeometry,在r76版本的文檔中,使用的是BoxGeometry。
構(gòu)造函數(shù)BoxGeometry(width, height, dept, widthSegments, heightSegments, depthSegments)
width,height,dept分別是長寬高
widthSegments, heightSegments, deptSegments是對應(yīng)長寬高的分段,在使用線模式({wireframe:true})進行渲染的時候,可以看到效果如下。
var cubeGeometry = new THREE.BoxGeometry(6, 6, 6, 2, 3, 1); var cubeMaterial = new THREE.MeshBasicMaterial({ wireframe : true }); cubeMaterial.color = new THREE.Color("red"); var cube = new THREE.Mesh(cubeGeometry, cubeMaterial);
長寬高分別被截為2段,3段,1段。
球體(SphereGeometry) 構(gòu)造函數(shù)SphereGeometry(radius, widthSegments, heightSegments, phiStart, phiLength, thetaStart, thetaLength)
radius:球體半徑
widthSegments, heightSegments:水平方向和垂直方向上分段數(shù)。widthSegments最小值為3,默認值為8。heightSegments最小值為2,默認值為6。
phiStart:水平方向上的起始角,默認值0
phiLenght:水平方向上球體曲面覆蓋的弧度,默認Math.PI * 2
thetaStart : 垂直方向上的起始角, 默認0
thetaLength: 垂直方向是球體曲面覆蓋的弧度,默認值為Math.PI
多邊形(ShapeGeometry)前面都是一些立體的圖形,多邊形(ShapeGeometry)用來創(chuàng)建一個平面多邊形。
構(gòu)造函數(shù)ShapeGeometry(shapes, options)
shapes形狀數(shù)組
可選的參數(shù)對象,可配置參數(shù)curveSegments, meterial, UVGenerator。
實例方法addShapeList(shapes, options) 添加圖形(Shape實例)列表到多邊形中
addShape(shape, options)添加單個圖形(Shape實例)到多邊形中。
例子var rectShape= new THREE.Shape(); rectShape.moveTo(1,4); rectShape.lineTo(1, 8); rectShape.lineTo(5, 8); rectShape.lineTo(5, 4); rectShape.lineTo(3, -4); rectShape.lineTo(1, 4); var rectGeom = new THREE.ShapeGeometry( rectShape ); var rectMesh = new THREE.Mesh( rectGeom, new THREE.MeshBasicMaterial( { color: 0xff0000 } ) ) ;PolyhedronGeometry/多面體
PolyhedronGeometry(vertices, faces, radius, detail)
vertices:頂點的數(shù)組,如[1,1,1, -1,-1,-1,…],則第一個頂點的坐標(biāo)是(1,1,1),第二個頂點的坐標(biāo)是(-1,-1,-1)
faces:面的頂點坐標(biāo)的索引,應(yīng)用vertices的頂點,如[0,1,2, 3,4,5,…],則第一個面由頂點0,1,2構(gòu)成,第二個面由頂點3,4,5構(gòu)成
radius(Float): 多面體的半徑
detail(Integer): 設(shè)置為n時,多面體的面的數(shù)量增加基礎(chǔ)面的n倍.
var verticesOfCube = [ -1,-1,-1, 1,-1,-1, 1, 1,-1, -1, 1,-1, -1,-1, 1, 1,-1, 1, 1, 1, 1, -1, 1, 1, ]; var indicesOfFaces = [ 2,1,0, 0,3,2, 0,4,7, 7,3,0, 0,1,5, 5,4,0, 1,2,6, 6,5,1, 2,3,7, 7,6,2, 4,5,6, 6,7,4 ]; var polyhedron = new THREE.Mesh( new THREE.PolyhedronGeometry( verticesOfCube, indicesOfFaces, 50, 1),material); scene.add(polyhedron);
參考文檔:https://blog.csdn.net/u011135...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/94013.html
摘要:自定義頂點建立幾何體與克隆本身已經(jīng)有很多的網(wǎng)格模型,基本已經(jīng)夠我們的使用,但是如果我們還是想自己根據(jù)頂點坐標(biāo)來建立幾何模型的話,也是可以的。并且不僅要更新頂點,還要更新線條的連接方式,否則是沒有效果的。 自定義頂點建立幾何體與克隆 Three.js本身已經(jīng)有很多的網(wǎng)格模型,基本已經(jīng)夠我們的使用,但是如果我們還是想自己根據(jù)頂點坐標(biāo)來建立幾何模型的話,Three.js也是可以的。 基本效果...
摘要:學(xué)習(xí)筆記使用粒子系統(tǒng)模擬時空隧道本例的運行結(jié)果如圖時空隧道演示地址的粒子系統(tǒng)的粒子系統(tǒng)主要是依靠精靈體來創(chuàng)建的,要實現(xiàn)中的粒子系統(tǒng)創(chuàng)建,一般有兩種方式。 WebGL three.js學(xué)習(xí)筆記 使用粒子系統(tǒng)模擬時空隧道 本例的運行結(jié)果如圖:showImg(https://img-blog.csdnimg.cn/20190426222855492.png?x-oss-process=ima...
摘要:缺省是一個啟用線框模式和隨機顏色的基礎(chǔ)網(wǎng)孔材料。一個權(quán)重值數(shù)組,取值從到,指定變形程度。指定該索引處的為基礎(chǔ)變形。更新使其不對對象產(chǎn)生影響。得到光線投射和網(wǎng)孔之間的交叉點。返回這個網(wǎng)孔對象及其子對象的克隆。 MESH 網(wǎng)孔對象的基類MESH就是一系列的多邊形組成的,三角形或者四邊形,網(wǎng)格一般由頂點來描繪,我們看見的三維開發(fā)的模型就是由一系列的點組成的。 var geometry = n...
閱讀 2164·2021-11-11 16:55
閱讀 1685·2019-08-30 15:54
閱讀 2817·2019-08-30 15:53
閱讀 2211·2019-08-30 15:44
閱讀 1152·2019-08-30 15:43
閱讀 965·2019-08-30 11:22
閱讀 1942·2019-08-29 17:20
閱讀 1566·2019-08-29 16:56