Skip to content

copper3d / Modules / Scene/copperScene / copperScene

Class: copperScene

Scene/copperScene.copperScene

Hierarchy

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new copperScene(container, renderer, opt?)

Parameters

NameType
containerHTMLDivElement
rendererWebGLRenderer
opt?ICopperSceneOpts

Overrides

baseScene.constructor

Defined in

src/Scene/copperScene.ts:41

Properties

ambientLight

ambientLight: AmbientLight

Inherited from

baseScene.ambientLight

Defined in

src/Scene/baseScene.ts:18


camera

camera: PerspectiveCamera | OrthographicCamera

Inherited from

baseScene.camera

Defined in

src/Scene/commonSceneMethod.ts:30


cameraPositionFlag

cameraPositionFlag: boolean = false

Inherited from

baseScene.cameraPositionFlag

Defined in

src/Scene/baseScene.ts:20


clipAction

Private clipAction: any

Defined in

src/Scene/copperScene.ts:37


clock

clock: Clock

Defined in

src/Scene/copperScene.ts:30


container

container: HTMLDivElement

Inherited from

baseScene.container

Defined in

src/Scene/commonSceneMethod.ts:28


content

content: Group<Object3DEventMap>

Inherited from

baseScene.content

Defined in

src/Scene/baseScene.ts:21


controls

controls: Copper3dTrackballControls | OrbitControls<Camera> | TrackballControls

Overrides

baseScene.controls

Defined in

src/Scene/copperScene.ts:31


copperControl

copperControl: Controls

Inherited from

baseScene.copperControl

Defined in

src/Scene/baseScene.ts:19


copperOrthographicCamera

copperOrthographicCamera: OrthographicCamera

Inherited from

baseScene.copperOrthographicCamera

Defined in

src/Scene/commonSceneMethod.ts:33


copperPerspectiveCamera

copperPerspectiveCamera: PerspectiveCamera

Inherited from

baseScene.copperPerspectiveCamera

Defined in

src/Scene/commonSceneMethod.ts:32


depthStep

Protected depthStep: number = 0.4

Inherited from

baseScene.depthStep

Defined in

src/Scene/commonSceneMethod.ts:45


directionalLight

directionalLight: DirectionalLight

Inherited from

baseScene.directionalLight

Defined in

src/Scene/baseScene.ts:17


exportContent

exportContent: Group<Object3DEventMap>

Inherited from

baseScene.exportContent

Defined in

src/Scene/baseScene.ts:22


isHalfed

isHalfed: boolean = false

Inherited from

baseScene.isHalfed

Defined in

src/Scene/baseScene.ts:23


mixer

Private mixer: null | AnimationMixer<AnimationMixerEventMap> = null

Defined in

src/Scene/copperScene.ts:34


modelReady

Private modelReady: boolean = false

Defined in

src/Scene/copperScene.ts:36


pickableObjects

Protected pickableObjects: Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>[] = []

Inherited from

baseScene.pickableObjects

Defined in

src/Scene/commonSceneMethod.ts:47


playRate

Private playRate: number = 1.0

Defined in

src/Scene/copperScene.ts:35


preRenderCallbackFunctions

Protected preRenderCallbackFunctions: preRenderCallbackFunctionType

Inherited from

baseScene.preRenderCallbackFunctions

Defined in

src/Scene/commonSceneMethod.ts:43


renderNrrdVolume

Protected renderNrrdVolume: boolean = false

Inherited from

baseScene.renderNrrdVolume

Defined in

src/Scene/commonSceneMethod.ts:41


renderer

renderer: WebGLRenderer

Inherited from

baseScene.renderer

Defined in

src/Scene/baseScene.ts:12


scene

scene: Scene<Object3DEventMap>

Inherited from

baseScene.scene

Defined in

src/Scene/commonSceneMethod.ts:29


sceneName

sceneName: string = ""

Inherited from

baseScene.sceneName

Defined in

src/Scene/baseScene.ts:15


sort

Protected sort: boolean = true

Inherited from

baseScene.sort

Defined in

src/Scene/commonSceneMethod.ts:44


subCamera

subCamera: null | PerspectiveCamera = null

Inherited from

baseScene.subCamera

Defined in

src/Scene/commonSceneMethod.ts:37


subCopperControl

Protected subCopperControl: null | Controls = null

Inherited from

baseScene.subCopperControl

Defined in

src/Scene/commonSceneMethod.ts:40


subDiv

subDiv: null | HTMLDivElement = null

Inherited from

baseScene.subDiv

Defined in

src/Scene/commonSceneMethod.ts:35


subRender

Protected subRender: null | WebGLRenderer = null

Inherited from

baseScene.subRender

Defined in

src/Scene/commonSceneMethod.ts:39


subScene

subScene: Scene<Object3DEventMap>

Inherited from

baseScene.subScene

Defined in

src/Scene/commonSceneMethod.ts:36


surfaceAnnotators

Private surfaceAnnotators: SurfaceAnnotator[] = []

Defined in

src/Scene/copperScene.ts:38


viewPoint

viewPoint: CameraViewPoint

Inherited from

baseScene.viewPoint

Defined in

src/Scene/baseScene.ts:24


vignette

vignette: undefined | customMeshType

Inherited from

baseScene.vignette

Defined in

src/Scene/baseScene.ts:16

Methods

addLights

addLights(): void

Returns

void

Inherited from

baseScene.addLights

Defined in

src/Scene/baseScene.ts:142


addObject

addObject(obj): void

Parameters

NameType
objany

Returns

void

Inherited from

baseScene.addObject

Defined in

src/Scene/baseScene.ts:138


addPreRenderCallbackFunction

addPreRenderCallbackFunction(callbackFunction): number

Registers a per-frame callback and returns its id, for removePreRenderCallbackFunction.

Parameters

NameType
callbackFunctionFunction

Returns

number

Inherited from

baseScene.addPreRenderCallbackFunction

Defined in

src/Scene/commonSceneMethod.ts:109


addSubView

addSubView(): HTMLDivElement

create a new sub view to display models

Returns

HTMLDivElement

Inherited from

baseScene.addSubView

Defined in

src/Scene/commonSceneMethod.ts:159


createDemoMesh

createDemoMesh(): void

Returns

void

Inherited from

baseScene.createDemoMesh

Defined in

src/Scene/commonSceneMethod.ts:82


createSurfaceAnnotator

createSurfaceAnnotator(target, opts?): SurfaceAnnotator

Create an annotator on the surface of a given model (draw contours / place points / export coordinates). target can be a single Mesh, or a Group/Object3D (the mesh with the most vertices is chosen automatically). Reuses this scene's camera / container / controls; non-indexed geometry is welded and indexed automatically.

Parameters

NameType
targetObject3D<Object3DEventMap> | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>
opts?Omit<SurfaceAnnotatorOptions, "mesh" | "controls" | "container" | "scene" | "camera">

Returns

SurfaceAnnotator

Defined in

src/Scene/copperScene.ts:166


disposeSurfaceAnnotators

disposeSurfaceAnnotators(): void

Dispose all annotators created on this scene (removes event listeners and annotation objects).

Returns

void

Defined in

src/Scene/copperScene.ts:208


getCurrentMixer

getCurrentMixer(): null | AnimationMixer<AnimationMixerEventMap>

Returns

null | AnimationMixer<AnimationMixerEventMap>

Defined in

src/Scene/copperScene.ts:591


getCurrentTime

getCurrentTime(): number

Returns

number

Defined in

src/Scene/copperScene.ts:583


getDefaultViewPoint

getDefaultViewPoint(): CameraViewPoint

Returns

CameraViewPoint

Inherited from

baseScene.getDefaultViewPoint

Defined in

src/Scene/baseScene.ts:113


getPlayRate

getPlayRate(): number

Returns

number

Defined in

src/Scene/copperScene.ts:535


init

init(): void

Returns

void

Inherited from

baseScene.init

Defined in

src/Scene/baseScene.ts:57


loadAligned4D

loadAligned4D(opts, callback?): void

Load an aligned 4D scene: a cine MRI (one slice, N cardiac phases) rendered as a world-placed plane, plus 0..N deforming surface sequences (e.g. LV endo/epi). MRI and surfaces stay in their shared patient coordinate frame (no center/scale), and advance together off ONE shared frame clock. Returns a controller (play/pause/...).

Parameters

NameType
optsaligned4DOptsType
callback?(ctrl: Aligned4DController) => void

Returns

void

Defined in

src/Scene/copperScene.ts:323


loadDicom

loadDicom(urls, opts?): void

Parameters

NameType
urlsstring | string[]
opts?dicomLoaderOptsType

Returns

void

Inherited from

baseScene.loadDicom

Defined in

src/Scene/commonSceneMethod.ts:183


loadGltf

loadGltf(url, callback?, opts?): void

Parameters

NameType
urlstring
callback?(content: Group<Object3DEventMap>) => void
opts?GltfLoadOpts

Returns

void

Defined in

src/Scene/copperScene.ts:67


loadMetadataUrl

loadMetadataUrl(url): void

Parameters

NameType
urlstring

Returns

void

Inherited from

baseScene.loadMetadataUrl

Defined in

src/Scene/baseScene.ts:71


loadNrrd

loadNrrd(url, loadingBar, segmentation, callback?, opts?): void

Parameters

NameType
urlstring
loadingBarloadingBarType
segmentationboolean
callback?(volume: any, nrrdMeshes: nrrdMeshesType, nrrdSlices: nrrdSliceType, gui?: GUI) => void
opts?optsType

Returns

void

Inherited from

baseScene.loadNrrd

Defined in

src/Scene/commonSceneMethod.ts:299


loadNrrdTexture3d

loadNrrdTexture3d(url, callback?): void

Parameters

NameType
urlstring
callback?(volume: any, gui?: GUI) => void

Returns

void

Inherited from

baseScene.loadNrrdTexture3d

Defined in

src/Scene/commonSceneMethod.ts:323


loadOBJ

loadOBJ(url, callback?, opts?): void

Parameters

NameType
urlstring
callback?(mesh: Group<Object3DEventMap>) => void
opts?Object
opts.colorstring

Returns

void

Inherited from

baseScene.loadOBJ

Defined in

src/Scene/commonSceneMethod.ts:335


loadPureGLB

loadPureGLB(url, callback?, opts?, onError?): void

Parameters

NameType
urlstring
callback?(mesh: Group<Object3DEventMap>) => void
opts?Object
opts.colorstring
opts.enhanceMaterial?boolean
onError?(error: unknown) => void

Returns

void

Defined in

src/Scene/copperScene.ts:116


loadRaw4DVolume

loadRaw4DVolume(mhdUrls, opts?, callback?): void

Load a 4D volume sequence (.mhd/.raw per cardiac phase) and render it as a raycast volume. The returned controller runs no clock of its own — drive it with setFrame()/setPhase() so it can share a cardiac-phase clock with other modalities.

Parameters

NameType
mhdUrlsstring[]
opts?raw4DVolumeOptsType
callback?(ctrl: Raw4DVolumeController) => void

Returns

void

Defined in

src/Scene/copperScene.ts:527


loadView

loadView(viewpointData): void

Parameters

NameType
viewpointDataCameraViewPoint

Returns

void

Overrides

baseScene.loadView

Defined in

src/Scene/copperScene.ts:552


loadViewUrl

loadViewUrl(url): void

Parameters

NameType
urlstring

Returns

void

Inherited from

baseScene.loadViewUrl

Defined in

src/Scene/baseScene.ts:88


loadVtk

loadVtk(url): void

Parameters

NameType
urlstring

Returns

void

Defined in

src/Scene/copperScene.ts:157


loadVtks

loadVtks(models): void

Parameters

NameType
modelsvtkModels[]

Returns

void

Defined in

src/Scene/copperScene.ts:213


onRenderCameraChange

onRenderCameraChange(): void

Returns

void

Overrides

baseScene.onRenderCameraChange

Defined in

src/Scene/copperScene.ts:608


onWindowResize

onWindowResize(): void

Returns

void

Inherited from

baseScene.onWindowResize

Defined in

src/Scene/baseScene.ts:221


pickAnnotatableMesh

Private pickAnnotatableMesh(target): null | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>

Parameters

NameType
targetObject3D<Object3DEventMap>

Returns

null | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>

Defined in

src/Scene/copperScene.ts:188


pickModel

pickModel(content, callback, options?): void

Parameters

NameType
contentGroup<Object3DEventMap>
callback(selectMesh: undefined | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>) => void
options?string[]

Returns

void

Inherited from

baseScene.pickModel

Defined in

src/Scene/commonSceneMethod.ts:117


pickSpecifiedModel

pickSpecifiedModel(content, mousePosition): Object

Parameters

NameType
contentMesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap> | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>[]
mousePositionmouseMovePositionType

Returns

Object

NameType
intersectedObjectnull | Object3D<Object3DEventMap>
intersectsIntersection<Object3D<Object3DEventMap>>[]

Inherited from

baseScene.pickSpecifiedModel

Defined in

src/Scene/commonSceneMethod.ts:139


removeLights

removeLights(): void

Returns

void

Inherited from

baseScene.removeLights

Defined in

src/Scene/baseScene.ts:173


removePreRenderCallbackFunction

removePreRenderCallbackFunction(id): void

Parameters

NameType
idnumber

Returns

void

Inherited from

baseScene.removePreRenderCallbackFunction

Defined in

src/Scene/commonSceneMethod.ts:113


render

render(time?): void

Parameters

NameType
time?number

Returns

void

Overrides

baseScene.render

Defined in

src/Scene/copperScene.ts:623


resetView

resetView(): void

Returns

void

Defined in

src/Scene/copperScene.ts:573


setDepth

setDepth(value): void

Parameters

NameType
valuenumber

Returns

void

Inherited from

baseScene.setDepth

Defined in

src/Scene/commonSceneMethod.ts:97


setDicomFilesOrder

setDicomFilesOrder(value): void

Parameters

NameType
value"ascending" | "descending"

Returns

void

Inherited from

baseScene.setDicomFilesOrder

Defined in

src/Scene/commonSceneMethod.ts:100


setModelPosition

setModelPosition(model, position): void

Parameters

NameType
modelGroup<Object3DEventMap> | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>
positionObject
position.x?number
position.y?number
position.z?number

Returns

void

Defined in

src/Scene/copperScene.ts:543


setPlayRate

setPlayRate(playRate): void

Parameters

NameType
playRatenumber

Returns

void

Defined in

src/Scene/copperScene.ts:539


setViewPoint

setViewPoint(camera, target?): CameraViewPoint

Parameters

NameType
cameraPerspectiveCamera
target?number[]

Returns

CameraViewPoint

Inherited from

baseScene.setViewPoint

Defined in

src/Scene/baseScene.ts:117


updateBackground

updateBackground(color1, color2): void

Parameters

NameType
color1string
color2string

Returns

void

Inherited from

baseScene.updateBackground

Defined in

src/Scene/baseScene.ts:201


updateCamera

updateCamera(viewpoint): void

Parameters

NameType
viewpointCameraViewPoint

Returns

void

Defined in

src/Scene/copperScene.ts:578


updateControls

updateControls(camera): void

Parameters

NameType
cameraPerspectiveCamera | OrthographicCamera

Returns

void

Overrides

baseScene.updateControls

Defined in

src/Scene/copperScene.ts:595


updateDisplay

updateDisplay(state): void

Parameters

NameType
statebaseStateType

Returns

void

Inherited from

baseScene.updateDisplay

Defined in

src/Scene/baseScene.ts:196


updateLights

updateLights(state): void

Parameters

NameType
statebaseStateType

Returns

void

Inherited from

baseScene.updateLights

Defined in

src/Scene/baseScene.ts:179


updateModelChildrenVisualisation

updateModelChildrenVisualisation(child): void

Parameters

NameType
childMesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>

Returns

void

Inherited from

baseScene.updateModelChildrenVisualisation

Defined in

src/Scene/baseScene.ts:206