Three.js/WebGL按固定尺寸缩放
我有一些可能是任意尺寸的平面几何 我必须将它们缩放到特定的尺寸(例如1024x768或768x1024) Three.js提供了通过Geometry.scale对象的缩放功能。如果您知道初始高度/宽度是多少,这非常有用,因为我可以:Three.js/WebGL按固定尺寸缩放,webgl,three.js,Webgl,Three.js,我有一些可能是任意尺寸的平面几何 我必须将它们缩放到特定的尺寸(例如1024x768或768x1024) Three.js提供了通过Geometry.scale对象的缩放功能。如果您知道初始高度/宽度是多少,这非常有用,因为我可以: obj.scale.x = finalWidth/initialWidth; obj.scale.y = finalHeight/initialHeight; 但是没有对象会返回几何体的高度和宽度(即initialWidth和initialHeight)(如果我在
obj.scale.x = finalWidth/initialWidth;
obj.scale.y = finalHeight/initialHeight;
但是没有对象会返回几何体的高度和宽度(即initialWidth和initialHeight)(如果我在这里出错,请纠正我)
那么,有没有办法在不知道初始尺寸的情况下将几何体缩放到特定尺寸
另外,当我不知道物体的初始尺寸时,你可以问我首先是如何建造这个物体的。当然,我知道初始尺寸,但这是我正在构建的框架的另一个遥远的部分,如果可能的话,我希望避免全程跟踪尺寸。你说的是真的。你可以试试
geometry.computeBoundingBox();
然后可以从
几何体计算尺寸。boundingBox
您是对的。要完成解决方案,请执行以下操作:
geometry.computeBoundingBox();
调用computeBoundingBox后,可以从geometry.boundingBox读取尺寸
width = geometry.boundingBox.max.x - geometry.boundingBox.min.x
height = geometry.boundingBox.max.y - geometry.boundingBox.min.y
depth = geometry.boundingBox.max.z - geometry.boundingBox.min.z