Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | 1x | import macro from 'vtk.js/Sources/macros'; import vtkSphereSource from 'vtk.js/Sources/Filters/Sources/SphereSource'; import vtkGlyphRepresentation from 'vtk.js/Sources/Widgets/Representations/GlyphRepresentation'; import { Behavior } from 'vtk.js/Sources/Widgets/Representations/WidgetRepresentation/Constants'; function vtkSphereContextRepresentation(publicAPI, model) { model.classHierarchy.push('vtkSphereContextRepresentation'); publicAPI.setGlyphResolution = macro.chain( publicAPI.setGlyphResolution, model._pipeline.glyph.setThetaResolution, model._pipeline.glyph.setPhiResolution ); publicAPI.setDrawBorder = (draw) => { model._pipeline.glyph.setLines(draw); }; publicAPI.setDrawFace = (draw) => { model._pipeline.glyph.setFace(draw); }; publicAPI.setOpacity = (opacity) => { model._pipeline.actor.getProperty().setOpacity(opacity); }; model._pipeline.actor.getProperty().setOpacity(0.2); } function defaultValues(initialValues) { return { glyphResolution: 32, drawBorder: false, drawFace: true, behavior: Behavior.CONTEXT, _pipeline: { glyph: vtkSphereSource.newInstance({ phiResolution: initialValues.glyphResolution ?? 32, thetaResolution: initialValues.glyphResolution ?? 32, }), }, ...initialValues, }; } // ---------------------------------------------------------------------------- export function extend(publicAPI, model, initialValues = {}) { vtkGlyphRepresentation.extend(publicAPI, model, defaultValues(initialValues)); macro.setGet(publicAPI, model, ['glyphResolution']); vtkSphereContextRepresentation(publicAPI, model); } // ---------------------------------------------------------------------------- export const newInstance = macro.newInstance( extend, 'vtkSphereContextRepresentation' ); export default { newInstance, extend }; |