- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.3二维几何体——长方形、圆.docx
3.3 二维几何体——长方形、圆Three.js中有几种几何体可以创建二维网格:CircleGeometry、PlaneGeometry和ShapeGeometry。二维几何体看上去是扁平的,顾名思义,它们只有两个维度。PlaneGeometryPlaneGeometry可以用来创建非常简单的二维矩形。程序截图如下:创建这种几何体非常简单,如下所示:new THREE.PlaneGeometry(width,height,widthSegments,heightSegments);在这个PlaneGeometry例子中,可以修改它的属性,并立即查看修改的结果。关于这些属性的解释列在下表中:属性必须描述width(宽度)是矩形的宽度height(高度)是矩形的高度widthSegments(宽度段数)否矩形的宽度应该划分成几段heightSegmentss(高度段数)否矩形的高度应该划分成几段如果你想创建更多的面(比如,一种拥有多个方格的样式),你可以使用widthSegments属性和heightSegments属性,将这个矩形分成多个小面。该示例中用到的材质需要做一个简短的说明。我们使用如下的方法在这些几何体上创建网格:function createMesh(geom) {// 两种材质var meshMaterial = new THREE.MeshNormalMaterial(); meshMaterial.side = THREE.DoubleSide;var wireFrameMat = new THREE.MeshBasicMaterial(); wireFrameMat.wireframe = true;// 创建一个使用组合材质的网格对象var plane = THREE.SceneUtils.createMultiMaterialObject(geom, [meshMaterial, wireFrameMat]);return plane;}在这个函数里,我们基于传入的几何体创建了一个拥有多个材质的网格。第一个材质是NormaIMaterial,这种材质基于物体表面的法向向量来计算它们的颜色。我们还把这种材质设置成双面的(THREE.DoubleSide)。如果不这么做,那么当物体的背面朝向相机的时候,就会看不到它。我们还添加了一个BasicMatreial材质,通过它来打开线框效果。这样我们就可以看到该物体在三维空间中形状以及该几何体创建的面。完整代码!DOCTYPEhtmlhtmlheadtitle示例03.03.01 - 二维几何体 - 平面/titlescriptsrc=../../../Scripts/jquery-2.1.3.min.js/scriptscriptsrc=../../../Scripts/Threejs/three.min.js/scriptscriptsrc=../../../Scripts/Threejs/stats.js/scriptscriptsrc=../../../Scripts/Threejs/dat.gui.min.js/scriptstylebody {/*将margin设置为0,overflow设置为hidden,可让浏览器显示全屏*/margin: 0;overflow: hidden; }/style/headbodydivid=Stats-output/div!-- 作为Canvas容器的div --divid=WebGL-output/divscripttype=text/javascript// 页面加载完毕后,就可以运行Three.js了。 $(function () {var stats = initStats();// 创建scene对象,用来容纳网格、相机、光源等对象var scene = new THREE.Scene();// 创建相机var camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 0.1, 1000); camera.position.x = -20; camera.position.y = 30; camera.position.z = 40; camera.lookAt(new THREE.Vector3(10, 0, 0));// 创建渲染器,并设置视口大小和清除色var webGLRenderer = new THREE.WebGLRenderer(); webGLRenderer.setClearColor(
文档评论(0)