dev #84
|
@ -82,33 +82,47 @@ watch([section_count, fence_section, extra_section], () => {
|
||||||
// translate_to_section.value = make_translate_to_section()
|
// translate_to_section.value = make_translate_to_section()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// дуе { fence_top, fence, fence_inner, fence_bottom } = props.models
|
||||||
|
const fence_top = props.models.fence_top.clone()
|
||||||
|
const fence = props.models.fence.clone()
|
||||||
|
const fence_inner = props.models.fence_inner.clone()
|
||||||
|
const fence_bottom = props.models.fence_bottom.clone()
|
||||||
|
const fastening = props.models.fastening.clone()
|
||||||
|
const top = props.models.top.clone()
|
||||||
|
|
||||||
|
fence_inner.name = 'fence_inner'
|
||||||
|
|
||||||
|
const pillar: any[] = [fence_top.children[0], fence.children[0], fence_inner.children[0], fence_bottom.children[0]]
|
||||||
|
pillar[0].position.setComponent(1, lSize * -0.5)
|
||||||
|
pillar[1].scale.setComponent(1, lamelles_count.value)
|
||||||
|
pillar[2].scale.setComponent(1, lamelles_count.value)
|
||||||
|
pillar[3].position.setComponent(1, lSize * lamelles_count.value)
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<TresGroup :scale="scale_koef" :position-x="translate_to_section" :name="`fence ${index}`" :position-y="0">
|
<TresGroup :scale="scale_koef" :position-x="translate_to_section" :name="`fence ${index}`" :position-y="0">
|
||||||
<TresGroup name="pillar_one" v-if="!remove_pillar && show_pillar_one" :position-x="pillar_one_pos">
|
<TresGroup name="pillar_one" v-if="!remove_pillar && show_pillar_one" :position-x="pillar_one_pos">
|
||||||
<TresObject3D v-bind="props.models.fence_top.children[0]" :position-y="(lSize * -0.5)" />
|
<template v-for="item in pillar">
|
||||||
<TresObject3D v-bind="props.models.fence.children[0]" :scale-y="lamelles_count" />
|
<TresObject3D v-bind="item.clone()" />
|
||||||
<TresObject3D v-bind="props.models.fence_inner.children[0]" :scale-y="lamelles_count" />
|
</template>
|
||||||
<TresObject3D v-bind="props.models.fence_bottom.children[0]" :position-y="(lSize * lamelles_count)" />
|
|
||||||
</TresGroup>
|
</TresGroup>
|
||||||
|
|
||||||
<TresGroup name="pillar_two" v-if="!remove_pillar && show_pillar_two" :position-x="pillar_two_pos">
|
<TresGroup name="pillar_two" v-if="!remove_pillar && show_pillar_two" :position-x="pillar_two_pos">
|
||||||
<TresObject3D v-bind="props.models.fence_top.children[0]" :position-y="(lSize * -0.5)" />
|
<template v-for="item in pillar">
|
||||||
<TresObject3D v-bind="props.models.fence.children[0]" :scale="[-1, lamelles_count, 1]" />
|
<TresObject3D v-bind="item.clone()" />
|
||||||
<TresObject3D v-bind="props.models.fence_inner.children[0]" :scale="[-1, lamelles_count, 1]" />
|
</template>
|
||||||
<TresObject3D v-bind="props.models.fence_bottom.children[0]" :position-y="(lSize * lamelles_count)" />
|
|
||||||
</TresGroup>
|
</TresGroup>
|
||||||
|
|
||||||
<TresGroup name="lamelles">
|
<TresGroup name="lamelles">
|
||||||
<TresInstancedMesh ref="instanced_lamelle" :args="instanced_v" cast-shadow />
|
<TresInstancedMesh ref="instanced_lamelle" :args="instanced_v" />
|
||||||
</TresGroup>
|
</TresGroup>
|
||||||
<TresObject3D name="lam_fastening_one" v-bind="props.models.fastening.children[0]" :position-x="pillar_one_pos"
|
<TresObject3D v-bind="fastening.children[0]" name="lam_fastening_one" :position-x="pillar_one_pos"
|
||||||
:scale-y="lamelles_count" />
|
:scale-y="lamelles_count" />
|
||||||
<TresObject3D name="lam_fastening_two" v-bind="props.models.fastening.children[0]" :position-x="pillar_two_pos"
|
<TresObject3D v-bind="fastening.children[0]" name="lam_fastening_two" :position-x="pillar_two_pos"
|
||||||
:scale="[-1, lamelles_count, 1]" />
|
:scale="[-1, lamelles_count, 1]" />
|
||||||
<TresGroup name="top_section" :scale-x="((extra as number) || fence_section) * 10 + 0.1 * scale_koef"
|
<TresGroup name="top_section" :scale-x="((extra as number) || fence_section) * 10 + 0.1 * scale_koef"
|
||||||
:position="[pillar_size * 0.5, lamelles_count * lSize, 0]">
|
:position="[pillar_size * 0.5, lamelles_count * lSize, 0]">
|
||||||
<TresObject3D v-bind="props.models.top.children[0]" />
|
<TresObject3D v-bind="top.children[0]" />
|
||||||
</TresGroup>
|
</TresGroup>
|
||||||
</TresGroup>
|
</TresGroup>
|
||||||
</template>
|
</template>
|
Loading…
Reference in New Issue