king2088 / vue-3d-loader

VueJS and threeJS 3d viewer plugin
https://king2088.github.io/vue-3d-loader-docs
MIT License
222 stars 38 forks source link

你能支持在加载时获取对象大小吗? #81

Closed kamitori closed 10 months ago

kamitori commented 10 months ago

你能支持在像这样加载时获取对象大小吗? 如果没有,也没关系。先感谢您 https://discourse.threejs.org/t/find-the-size-of-a-loaded-gltf-model/38515

king2088 commented 10 months ago

你能支持在像这样加载时获取对象大小吗? 如果没有,也没关系。先感谢您 https://discourse.threejs.org/t/find-the-size-of-a-loaded-gltf-model/38515

你好,根据插件的用途(用于多种3D模型展示),暂时不考虑开发获取对象大小的功能。不过目前load事件将整个画布上的对象都返回了,兴许,你可以通过load事件来获取到对象。源码:https://github.com/king2088/vue-3d-loader/blob/master/src/3dLoader/vue3dLoader.vue#L697C29-L697C29 ,你完全可以使用threeJS来读取load返回的Object的size,

import { vue3dLoader, Three } from 'vue-3d-loader'
load(obj) {
    var box = new Three.Box3().setFromObject( obj[0] );
    var size = box.getSize();
     console.log( size );
}
king2088 commented 10 months ago
import { vue3dLoader, Three } from 'vue-3d-loader'
load(obj) {
    var box = new Three.Box3().setFromObject( obj[0] );
    var size = box.getSize();
     console.log( size );
}
sweetlicio commented 10 months ago

你好。请问下。如何通过type判定改变某一个模型的颜色。比如说有没有类似getobjectbyname().这样的方法。