From 0926d2082dea72a1bbbd51344b56aecff45d509b Mon Sep 17 00:00:00 2001 From: Val Erastov Date: Tue, 9 Aug 2022 19:34:19 -0700 Subject: [PATCH] clean up unused code --- .../abstractSelectionMarker.js | 56 ------------------- .../selectionMarker/edgeSelectionMarker.js | 16 ------ .../cad/scene/selectionMarker/lineMarker.js | 24 -------- .../scene/selectionMarker/selectionMarker.js | 47 ---------------- .../selectionMarker/selectionSynchronizer.js | 17 ------ .../selectionMarker/sketchSelectionMarker.js | 12 ---- 6 files changed, 172 deletions(-) delete mode 100644 web/app/cad/scene/selectionMarker/abstractSelectionMarker.js delete mode 100644 web/app/cad/scene/selectionMarker/edgeSelectionMarker.js delete mode 100644 web/app/cad/scene/selectionMarker/lineMarker.js delete mode 100644 web/app/cad/scene/selectionMarker/selectionMarker.js delete mode 100644 web/app/cad/scene/selectionMarker/selectionSynchronizer.js delete mode 100644 web/app/cad/scene/selectionMarker/sketchSelectionMarker.js diff --git a/web/app/cad/scene/selectionMarker/abstractSelectionMarker.js b/web/app/cad/scene/selectionMarker/abstractSelectionMarker.js deleted file mode 100644 index d5cf769b..00000000 --- a/web/app/cad/scene/selectionMarker/abstractSelectionMarker.js +++ /dev/null @@ -1,56 +0,0 @@ -import {findDiff} from 'gems/iterables'; -import {entitySelectionToken} from '../controls/pickControlPlugin'; - -export class AbstractSelectionMarker { - - constructor(context, entity) { - this.context = context; - this.entity = entity; - this.selection = []; - this.context.streams.selection[entity].attach(this.update); - } - - update = () => { - let selection = this.context.services.selection[this.entity].objects; - if (!selection) { - if (this.selection.length !== 0) { - for (let obj of this.selection) { - this.unMark(obj); - } - this.selection = []; - } - this.context.services.viewer.render(); - return; - } - - let [, toMark, toWithdraw] = findDiff(selection, this.selection); - for (let obj of toMark) { - this.selection.push(obj); - this.mark(obj); - } - - for (let obj of toWithdraw) { - this.selection.splice(this.selection.indexOf(obj), 1); - this.unMark(obj); - } - this.context.services.viewer.render(); - }; - - mark(obj) { - throw 'abstract'; - } - - unMark(obj) { - throw 'abstract'; - } -} - -export function setFacesColor(faces, color) { - for (let face of faces) { - if (color === null) { - face.color.set(new THREE.Color()); - } else { - face.color.set( color ); - } - } -} diff --git a/web/app/cad/scene/selectionMarker/edgeSelectionMarker.js b/web/app/cad/scene/selectionMarker/edgeSelectionMarker.js deleted file mode 100644 index d533b319..00000000 --- a/web/app/cad/scene/selectionMarker/edgeSelectionMarker.js +++ /dev/null @@ -1,16 +0,0 @@ -import {AbstractSelectionMarker} from './abstractSelectionMarker'; - -export class EdgeSelectionMarker extends AbstractSelectionMarker { - - constructor (context) { - super(context, 'edge'); - } - - mark(obj) { - obj.marker.material.visible = true; - } - - unMark(obj) { - obj.marker.material.visible = false; - } -} \ No newline at end of file diff --git a/web/app/cad/scene/selectionMarker/lineMarker.js b/web/app/cad/scene/selectionMarker/lineMarker.js deleted file mode 100644 index 5b54b943..00000000 --- a/web/app/cad/scene/selectionMarker/lineMarker.js +++ /dev/null @@ -1,24 +0,0 @@ -import {AbstractSelectionMarker} from "./abstractSelectionMarker"; -import {setAttribute, getAttribute} from 'scene/objectData'; - -export class LineMarker extends AbstractSelectionMarker { - - constructor(context, entity, selectionMaterial) { - super(context, entity); - this.selectionMaterial = selectionMaterial; - } - - mark(obj) { - let line = this.getLine(obj); - setAttribute(line, 'selection_defaultMaterial', line.material); - line.material = this.selectionMaterial; - } - - unMark(obj) { - let line = this.getLine(obj); - line.material = getAttribute(line, 'selection_defaultMaterial'); - line.material = this.selectionMaterial; - } - - getLine() {throw 'abstract'} -} \ No newline at end of file diff --git a/web/app/cad/scene/selectionMarker/selectionMarker.js b/web/app/cad/scene/selectionMarker/selectionMarker.js deleted file mode 100644 index 28b9e6ae..00000000 --- a/web/app/cad/scene/selectionMarker/selectionMarker.js +++ /dev/null @@ -1,47 +0,0 @@ -import * as stitching from 'brep/operations/stitching' -import {AbstractSelectionMarker, setFacesColor} from "./abstractSelectionMarker"; - -export class SelectionMarker extends AbstractSelectionMarker { - - constructor(context, markColor, readOnlyColor, defaultColor) { - super(context, 'face'); - this.markColor = markColor; - this.defaultColor = defaultColor; - this.readOnlyColor = readOnlyColor; - } - - mark(sceneFace) { - this.setColor(sceneFace, this.markColor, this.readOnlyColor); - } - - unMark(sceneFace) { - this.setColor(sceneFace, this.defaultColor, this.defaultColor); - } - - setColor(sceneFace, color, groupColor) { - const group = this.findGroup(sceneFace); - if (group) { - for (let i = 0; i < group.length; i++) { - let face = group[i]; - setFacesColor(face.meshFaces, groupColor); - face.solid.mesh.geometry.colorsNeedUpdate = true; - } - } else { - setFacesColor(sceneFace.meshFaces, color); - sceneFace.solid.mesh.geometry.colorsNeedUpdate = true; - } - } - - findGroup(sceneFace) { - if (sceneFace.curvedSurfaces) { - return sceneFace.curvedSurfaces; - } - if (sceneFace.brepFace) { - const stitchedFace = sceneFace.brepFace.data[stitching.FACE_CHUNK]; - if (stitchedFace) { - return stitchedFace.faces.map(f => f.data['scene.face']); - } - } - return undefined; - } -} diff --git a/web/app/cad/scene/selectionMarker/selectionSynchronizer.js b/web/app/cad/scene/selectionMarker/selectionSynchronizer.js deleted file mode 100644 index fbc11fe6..00000000 --- a/web/app/cad/scene/selectionMarker/selectionSynchronizer.js +++ /dev/null @@ -1,17 +0,0 @@ -import {findDiff} from 'gems/iterables'; - -export const selectionSynchronizer = (entity, findEntity, color) => ([old, curr]) => { - let [, toWithdraw, toMark] = findDiff(old, curr); - toWithdraw.forEach(id => { - let model = findEntity(entity, id); - if (model) { - model.ext.view.withdraw(); - } - }); - toMark.forEach(id => { - let model = findEntity(entity, id); - if (model) { - model.ext.view.mark(id, color); - } - }); -}; \ No newline at end of file diff --git a/web/app/cad/scene/selectionMarker/sketchSelectionMarker.js b/web/app/cad/scene/selectionMarker/sketchSelectionMarker.js deleted file mode 100644 index 626d785d..00000000 --- a/web/app/cad/scene/selectionMarker/sketchSelectionMarker.js +++ /dev/null @@ -1,12 +0,0 @@ -import {LineMarker} from './lineMarker'; - -export class SketchSelectionMarker extends LineMarker { - - constructor(context, selectionMaterial) { - super(context, 'sketchObject', selectionMaterial); - } - - getLine(obj) { - return obj.viewObject; - } -} \ No newline at end of file