2020-09-15 22:21:07 +08:00
|
|
|
import { SphereBufferGeometry } from 'three';
|
2020-09-14 22:57:11 +08:00
|
|
|
import Mesh from './Mesh.js';
|
|
|
|
|
|
|
|
export default {
|
|
|
|
extends: Mesh,
|
|
|
|
props: {
|
|
|
|
radius: Number,
|
2020-09-15 04:53:30 +08:00
|
|
|
widthSegments: {
|
|
|
|
type: Number,
|
|
|
|
default: 12,
|
|
|
|
},
|
|
|
|
heightSegments: {
|
|
|
|
type: Number,
|
|
|
|
default: 12,
|
|
|
|
},
|
2020-09-14 22:57:11 +08:00
|
|
|
},
|
2020-09-20 03:42:33 +08:00
|
|
|
watch: {
|
|
|
|
radius() { this.refreshGeometry(); },
|
|
|
|
widthSegments() { this.refreshGeometry(); },
|
|
|
|
heightSegments() { this.refreshGeometry(); },
|
|
|
|
},
|
2020-09-14 22:57:11 +08:00
|
|
|
created() {
|
2020-09-20 03:42:33 +08:00
|
|
|
this.createGeometry();
|
|
|
|
},
|
|
|
|
methods: {
|
|
|
|
createGeometry() {
|
|
|
|
this.geometry = new SphereBufferGeometry(this.radius, this.widthSegments, this.heightSegments);
|
|
|
|
},
|
2020-09-14 22:57:11 +08:00
|
|
|
},
|
2020-09-19 22:40:58 +08:00
|
|
|
__hmrId: 'Sphere',
|
2020-09-14 22:57:11 +08:00
|
|
|
};
|