我有一个3D模型加载在我的网页使用jsc3d。有没有办法在我的模型上放置一个热点(一个可点击的区域),以便当它被点击时,我可以放大并旋转模型到一个特定的集合或坐标?
发布于 2015-07-07 16:16:35
我认为网格选择的“热点”已经内置。假设您正确初始化了一个查看器:
var viewer;
/* Set viewer Options */
...
viewer.init();
...设置回调函数:
viewer.onmousedown = onViewerMouseDown;那么你需要这样的东西:
function onViewerMouseDown(x, y, button, depth, mesh) {
if (button == 0/*left button down*/ && mesh != null) {
var meshName = mesh.name;
var pivot = mesh.aabb.center();
/* do something with the selected mesh */
console.log('Mesh center: ' + JSON.stringify(pivot));
}
}如果您有多个网格,您应该自己旋转/转换,例如在jsc3d原型中实现网格旋转矩阵。
更多信息:
http://jsc3d.googlecode.com/svn/trunk/jsc3d/docs/symbols/JSC3D.Viewer.html#onmousedown
https://stackoverflow.com/questions/31121175
复制相似问题