草庐IT

after_three_pm

全部标签

javascript - 场景中的静态对象 - Three.js

我的场景中有两个对象。我正在使用用于移动相机,所以感觉物体会随着我手的移动而旋转。问题是另一个物体也在移动,我希望它始终保持在我面前。我的意思是,即使相机移动,对象也始终位于Canvas/资源管理器内的同一位置。抱歉,如果我没有正确解释自己。感谢任何帮助。编辑:varcontrols=newTHREE.LeapTrackballControls(camera,controller);所以,我在场景中间有一个球体。我使用LeapTrackball库将相机围绕场景中心移动。这让用户感觉球体围绕着他的中心旋转。model=newTHREE.Mesh(modelGeo,modelMat);mo

javascript - three.js - 如何限制缩放以使对象不会因相机而损坏

我正在创建three.js应用程序。我已经加载了我的STL对象。我使用过“OrbitControls”。当我开始使用鼠标的中间滚动按钮缩放我的对象时,它会在某个点中断。我的相机和控制代码如下:camera=newTHREE.PerspectiveCamera(55,window.innerWidth/window.innerHeight,1,15);//camera.position.set(3,0.15,3);//positionandpointthecameratothecenterofthescenecamera.position.x=-3;camera.position.y=4

javascript - 服务 worker : Fetch event listener only works after page reload

我已经使用以下代码在我的页面中添加了一个服务worker。一旦页面被重新加载并且worker已经安装,它就可以很好地工作。但是在我看到'SWINSTALL'日志后,在重新加载页面之前似乎没有捕捉到任何获取事件。app.jsnavigator.serviceWorker.register('/worker.js').then((registration)=>{console.log('ServiceWorkerregistrationsuccessfulwithscope:',registration.scope);},(err)=>{console.log('ServiceWorker

javascript - 你能在 three.js 场景之间共享网格吗?

是否可以在场景之间共享网格或几何体?我有多个场景,它们应该是相同的、大的、网格的,但是当我尝试在它们之间共享网格时,我得到了WebGL上下文错误。我怀疑在将它们添加到场景时在网格或几何体上设置了一些变量,从而防止它们在另一个场景中重复使用。编辑:更具体地说,我正在尝试在不同场景之间共享已使用JSONLoader加载的几何体。IE。在此示例中,“apps”是一组具有场景的应用程序:varloader=newTHREE.JSONLoader();loader.load('obj/tree/tree.js',function(geometry){apps.map(function(app){

javascript - 使用 JavaScript RegEx 使用 am 和 pm 验证时间

我不太擅长正则表达式。我有以下时间:12:00am。我需要一个遵循这种格式的Javascript正则表达式:hh:mm[am/pm]varregex=/^(\d\d):(\d\d)\s?(?:AM|PM)?$/; 最佳答案 你几乎完成了,缺少的部分是关于小时数永远不会大于1和分钟数永远不会大于5的十位。我还在末尾添加了“忽略大小写”标志,它接受“am”、“AM”、“Am”、“aM”:varregex=/^([0-1]\d):([0-5]\d)\s?(?:AM|PM)?$/i;限制性更强一些(1≤小时≤12):/^([1-9]|1[0

javascript - 如何在不拉伸(stretch) three.js 前景的情况下增加视角

我有一个带纹理地板平面的three.js场景,需要非常特定的视角才能与静态2D叠加层对齐我的问题是,我越是增加相机FOV以获得我需要的视角,前景就越拉伸(stretch),而我不希望这样。我似乎需要一个非常高的FOV(~120-150)来使纹理跟随墙壁,而且它是如此之高以至于相机正在渲染位于它后面的东西。我需要将相机几乎移动到场景的中心才能显示整个楼层,这感觉不对。我怎样才能调整这个场景以获得正确的视角而不失真?实例:http://warriorhut.net/testing/shapes/backend/room/view.basic.php相关的相机设置是:varWIDTH=102

javascript - 如何使用新的 THREE.TextureLoader 加载多个纹理

如何使用Three.js中的新THREE.TextureLoader加载多个纹理?目前我正在像这样加载我的纹理:vartexture1=THREE.ImageUtils.loadTexture('texture1.jpg');vartexture2=THREE.ImageUtils.loadTexture('texture2.jpg');vartexture3=THREE.ImageUtils.loadTexture('texture3.jpg');vartexture4=THREE.ImageUtils.loadTexture('texture4.jpg');vartexture5=

javascript - 更新 three.js 中的 ShaderMaterial 属性

来自three.jstutorialonshaders,我们了解到我们可以更新ShaderMaterial的统一值:varattributes={displacement:{type:'f',//afloatvalue:[]//anemptyarray}};varuniforms={amplitude:{type:'f',//afloatvalue:1}};varvShader=$('#vertexshader');varfShader=$('#fragmentshader');//createthefinalmaterialvarshaderMaterial=newTHREE.Mes

javascript - 如何以 hh :mm AM/PM in Javascript? 格式获取当前时间

我有一个Javascript,我需要在其中以HH:MMAM/PM格式粘贴当前时间。有一个问题-我需要输入从现在开始两个小时后开始的时间,例如,我需要输入晚上7点23分,而不是晚上7点23分,等等。我尝试做类似的事情:vardateFormat=newDate("hh:mma")但它没有用。我也尝试使用:vartoday=newDate();vartime=today.toLocaleTimeString().replace(/([\d]+:[\d]{2})(:[\d]{2})(.*)/,"$1$3")alert(time);但我所看到的只是例如18:23而不是6:23PM(可能是因为t

javascript - 互联网浏览器 : how to escape extra carriage return after editing Textarea?

我们在InternetExplorer中有一个多行文本区域。如果我们在next之后检查它的内容,那么一切都是正确的(textarea中没有额外的回车符):document.getElementById('text-area').value="Hello,\nWorld!";但如果我们将插入符设置到第二行的开始位置(在InternetExplorer中,而不是在代码中)并按tab键,则有一个额外的回车符(下面的keydown有一个字符串转储):value[0]='H'value[1]='e'value[2]='l'value[3]='l'value[4]='o'value[5]=','v