草庐IT

three_value_array

全部标签

javascript - three.js 在鼠标向下旋转对象并移动

我试图在我的场景中获得良好的鼠标移动,以便我可以围绕对象旋转。我有两个问题,我可以弄清楚如何限制运动,使其永远不会在Y轴上旋转低于0度。(我不想从下面看到物体,只能从上面看到)我想不通的第二件事是如何使运动流畅。现在我在jsfiddle中取得的成就是相机在开始旋转之前移回其起始位置。我的尝试:http://jsfiddle.net/phacer/FHD8W/4/这是我没有得到的部分:varspdy=(HEIGHT_S/2-mouseY)/100;varspdx=(WIDTH/2-mouseX)/100;root.rotation.x+=-(spdy/10);root.rotation.

javascript - Three.JS Orbit Controls - 启用和禁用不跳位

我正在使用Three.JS创建一个几何操作原型(prototype)。我正在使用OrbitControls.JS来操纵相机,但在启用和禁用控件时遇到了问题。这是我的演示:http://moczys.com/webGL/Prototype_V02-05.html想法是,当您将鼠标悬停在四面体的顶点上时,会出现一个灰色球体。通过单击球体,可以调出一个顶点操作handle。然后通过单击箭头上的拖动,您可以沿该方向移动顶点。然后,您应该能够在远离几何图形的地方单击以退出此模式。单击离开时会出现问题。如果在移动顶点后单击并拖动,相机会变得有点疯狂。根据您与原点的距离,OrbitControls会

javascript - 是否可以在 THREE.js 中启用无限数量的渲染器?

为了避免XY问题,让我解释一下我的出发点。我想使用THREE.js使用相同的时间轴绘制大量堆叠在一起的波形。波形只是三行,我正在通过修改正交相机的View边界来实现这些波形的缩放/平移/缩放。我最初尝试实现这一点导致我创建多个具有固定高度的Canvas元素,彼此堆叠,并将一个THREE.WebGLRenderer附加到每个Canvas。这工作得很好,直到我尝试将它缩放到超过15个左右的波形,THREE.js给了我一个警告“太多事件的webgl上下文”,并开始删除旧的上下文。我觉得这是一种不错的做法,考虑到这里应用的是相同的技术:http://threejs.org/examples/#

javascript - 不能将 String.prototype.match 用作 Array.some 的函数吗?

这行不通:vars='^foo';console.log(['boot','foot'].some(s.match));UncaughtTypeError:String.prototype.matchcalledonnullorundefined但是这样做:vars='^foo';console.log(['boot','foot'].some(function(i){returni.match(s)}));这是为什么?我以某种方式想象String.prototype.match函数太“原始”之类的,但究竟是为什么呢?因为我没有使用ES2015,所以第二个版本看起来很冗长。有替代方案吗

javascript - 为什么对 Array 原型(prototype)的这种更改在我的 jQuery 插件中不起作用?

我已将以下方法添加到Array原型(prototype)中:Array.prototype.foreach=function(func){for(vari=0;i在同一个文件中,在上面的代码之后,我有以下jQuery插件:jQuery.fn.addClassForEvents=function(){varthat=this;arguments.foreach(function(event){that.bind(event[0],function(){that.addClass(event[0]);}).bind(event[1],function(){that.removeClass(

javascript - 对于 Array,在 javascript 中使用 map() 和 reduce() 而不是 forEach() 效率更高吗?

1)正如我们所知,map()和reduce()没有副作用。如今,我们的手机也有多核。那么使用它们效率更高吗?2)另一方面,js在大多数浏览器上只有一个线程可以执行。因此map()和reduce()是为服务器端脚本准备的? 最佳答案 我今天刚刚测试了这个,使用map和reduce处理float,使用最新的node.js版本,答案是map和reduce比常规的for循环慢两个数量级。varr=array.map(x=>x*x).reduce((total,num)=>total+num,0);~11,000毫秒varr=0.0;arra

javascript - 如何在 three.js 中导入 json 和渲染

大家好,我编写了导入json文件并使用three.js渲染它的代码,我从three.jseditor导出了json文件。它在控制台中没有显示任何错误window.onload=function(){varshapeObjectUrl="test.json",scene=newTHREE.Scene(),camera=newTHREE.PerspectiveCamera(75,window.innerWidth/window.innerHeight,0.1,1000),renderer=newTHREE.WebGLRenderer(),loader=newTHREE.JSONLoader

javascript - 如果一个点在相机的视野之外,Three.js 线就会消失

我按照文档中的说明创建了一行:http://threejs.org/docs/#Reference/Objects/Line.但是当其中一个线点在相机视野之外时,线就会消失。我也尝试使用https://github.com/spite/THREE.MeshLine,但我仍然遇到同样的问题。我该如何解决? 最佳答案 如果您更新线的顶点,您还必须更新线的边界球体以使截锥体剔除正常工作。line.geometry.computeBoundingSphere();或者,您可以通过设置来防止线的截头截头剔除line.frustumCulled

javascript - "TypeError: this is not a typed array.with"Node.js 中的 WS.js

我的服务器文件中只有这个,出现错误:constWebSocket=require('ws');constwss=newWebSocket.Server({port:9000});wss.broadcast=functionbroadcast(data){wss.clients.forEach(functioneach(client){if(client.readyState===WebSocket.OPEN){client.send(data);}});};wss.on('connection',functionconnection(ws){ws.on('message',functi

javascript - Array.indexOf 不敏感数据类型

我一直在GoogleChrome控制台中使用Array.indexOf,我尝试了这些代码[1,2,3].indexOf(3);[1,2,"3"].indexOf("3");他们都返回了2,但是当我尝试这些代码时[1,2,"3"].indexOf(3);[1,2,3].indexOf("3");他们都返回-1。我希望它也返回2,我该怎么做?感谢您的帮助、时间和精力! 最佳答案 扩展guest271314的帖子:将两个值都转换为字符串。这也适用于数字和字符串val=trueconsole.log([1,2,"true"].findInd