UNPKG

awv3

Version:
31 lines (27 loc) 958 B
import * as THREE from 'three'; import BaseGraphics from './base'; const geometry = new THREE.CircleBufferGeometry(1, 32); const material = new THREE.MeshBasicMaterial({ color: 0xa757d9, side: THREE.DoubleSide, polygonOffset: true, polygonOffsetFactor: -3, polygonOffsetUnits: -15, }); export default class Point extends BaseGraphics { constructor() { super(); this.localMesh = new THREE.Mesh(geometry, material.clone()); this.localMesh.type = 'SketcherMesh'; this.localMesh.material.meta = {}; this.add(this.localMesh); } updateFromGeomParams(geomParams) { super.updateFromGeomParams(geomParams); this.localMesh.position.copy(geomParams.start); this.localMesh.scale.set(geomParams.scale, geomParams.scale, 1.0); //make sure points are on top when picked by interaction this.localMesh.position.z += 1e-6; this.updateMetaBox(); } }