awv3
Version:
⚡ AWV3 embedded CAD
31 lines (27 loc) • 958 B
JavaScript
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();
}
}