diff --git a/components/model/item.vue b/components/model/item.vue index dba5fbe..91e48a2 100644 --- a/components/model/item.vue +++ b/components/model/item.vue @@ -25,31 +25,31 @@ const axis = [ { axis: 'z', func: 'translateZ', }, ] type vectorType = 'x' | 'y' | 'z'; -const expFunc = (element: typeof axis[0]) => { - if (target.value) { - const point = model.value.position[element.axis] - let step = stepbase * target.value[element.axis as vectorType] - if (step !== 0) { - if (Math.abs(point) >= Math.abs(target.value[element.axis as vectorType])) { - step = 0 - } - if (model.value !== undefined && model.value[element.func] !== undefined && model.value.__tres) { - try { - model.value[element.func](step) - } catch (error) { - expFunc(element) - } - } - } - } -} + onLoop(() => { if (model.value && target.value) { axis.forEach(element => { - try { - expFunc(element) - } catch (error) { - console.log(error) + if (target.value) { + const point = model.value.position[element.axis] + let step = stepbase * target.value[element.axis as vectorType] + if (step !== 0) { + if (Math.abs(point) >= Math.abs(target.value[element.axis as vectorType])) { + step = 0 + } + if (model.value !== undefined && model.value[element.func] !== undefined && model.value.__tres) { + try { + model.value[element.func](step) + } catch (error) { + console.log('lvl 1') + try { model.value[element.func](step) } catch { + console.log('lvl 2') + try { model.value[element.func](step) } catch { + console.log('lvl 3') + } + } + } + } + } } }); }