copper3d / Modules / Scene/copperScene / copperScene
Class: copperScene
Scene/copperScene.copperScene
Hierarchy
↳
copperScene
Table of contents
Constructors
Properties
- ambientLight
- camera
- cameraPositionFlag
- clipAction
- clock
- container
- content
- controls
- copperControl
- copperOrthographicCamera
- copperPerspectiveCamera
- depthStep
- directionalLight
- exportContent
- isHalfed
- mixer
- modelReady
- pickableObjects
- playRate
- preRenderCallbackFunctions
- renderNrrdVolume
- renderer
- scene
- sceneName
- sort
- subCamera
- subCopperControl
- subDiv
- subRender
- subScene
- surfaceAnnotators
- viewPoint
- vignette
Methods
- addLights
- addObject
- addPreRenderCallbackFunction
- addSubView
- createDemoMesh
- createSurfaceAnnotator
- disposeSurfaceAnnotators
- getCurrentMixer
- getCurrentTime
- getDefaultViewPoint
- getPlayRate
- init
- loadAligned4D
- loadDicom
- loadGltf
- loadMetadataUrl
- loadNrrd
- loadNrrdTexture3d
- loadOBJ
- loadPureGLB
- loadRaw4DVolume
- loadView
- loadViewUrl
- loadVtk
- loadVtks
- onRenderCameraChange
- onWindowResize
- pickAnnotatableMesh
- pickModel
- pickSpecifiedModel
- removeLights
- removePreRenderCallbackFunction
- render
- resetView
- setDepth
- setDicomFilesOrder
- setModelPosition
- setPlayRate
- setViewPoint
- updateBackground
- updateCamera
- updateControls
- updateDisplay
- updateLights
- updateModelChildrenVisualisation
Constructors
constructor
• new copperScene(container, renderer, opt?)
Parameters
| Name | Type |
|---|---|
container | HTMLDivElement |
renderer | WebGLRenderer |
opt? | ICopperSceneOpts |
Overrides
Defined in
Properties
ambientLight
• ambientLight: AmbientLight
Inherited from
Defined in
camera
• camera: PerspectiveCamera | OrthographicCamera
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:30
cameraPositionFlag
• cameraPositionFlag: boolean = false
Inherited from
Defined in
clipAction
• Private clipAction: any
Defined in
clock
• clock: Timer
Defined in
container
• container: HTMLDivElement
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:28
content
• content: Group<Object3DEventMap>
Inherited from
Defined in
controls
• controls: Copper3dTrackballControls | OrbitControls<Camera> | TrackballControls
Overrides
Defined in
copperControl
• copperControl: Controls
Inherited from
Defined in
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
Defined in
src/Scene/commonSceneMethod.ts:45
directionalLight
• directionalLight: DirectionalLight
Inherited from
Defined in
exportContent
• exportContent: Group<Object3DEventMap>
Inherited from
Defined in
isHalfed
• isHalfed: boolean = false
Inherited from
Defined in
mixer
• Private mixer: null | AnimationMixer<AnimationMixerEventMap> = null
Defined in
modelReady
• Private modelReady: boolean = false
Defined in
pickableObjects
• Protected pickableObjects: Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>[] = []
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:47
playRate
• Private playRate: number = 1.0
Defined in
preRenderCallbackFunctions
• Protected preRenderCallbackFunctions: preRenderCallbackFunctionType
Inherited from
baseScene.preRenderCallbackFunctions
Defined in
src/Scene/commonSceneMethod.ts:43
renderNrrdVolume
• Protected renderNrrdVolume: boolean = false
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:41
renderer
• renderer: WebGLRenderer
Inherited from
Defined in
scene
• scene: Scene<Object3DEventMap>
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:29
sceneName
• sceneName: string = ""
Inherited from
Defined in
sort
• Protected sort: boolean = true
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:44
subCamera
• subCamera: null | PerspectiveCamera = null
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:37
subCopperControl
• Protected subCopperControl: null | Controls = null
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:40
subDiv
• subDiv: null | HTMLDivElement = null
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:35
subRender
• Protected subRender: null | WebGLRenderer = null
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:39
subScene
• subScene: Scene<Object3DEventMap>
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:36
surfaceAnnotators
• Private surfaceAnnotators: SurfaceAnnotator[] = []
Defined in
viewPoint
• viewPoint: CameraViewPoint
Inherited from
Defined in
vignette
• vignette: undefined | customMeshType
Inherited from
Defined in
Methods
addLights
▸ addLights(): void
Returns
void
Inherited from
Defined in
addObject
▸ addObject(obj): void
Parameters
| Name | Type |
|---|---|
obj | any |
Returns
void
Inherited from
Defined in
addPreRenderCallbackFunction
▸ addPreRenderCallbackFunction(callbackFunction): number
Registers a per-frame callback and returns its id, for removePreRenderCallbackFunction.
Parameters
| Name | Type |
|---|---|
callbackFunction | Function |
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
Defined in
src/Scene/commonSceneMethod.ts:159
createDemoMesh
▸ createDemoMesh(): void
Returns
void
Inherited from
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
| Name | Type |
|---|---|
target | Object3D<Object3DEventMap> | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap> |
opts? | Omit<SurfaceAnnotatorOptions, "mesh" | "controls" | "container" | "scene" | "camera"> |
Returns
SurfaceAnnotator
Defined in
disposeSurfaceAnnotators
▸ disposeSurfaceAnnotators(): void
Dispose all annotators created on this scene (removes event listeners and annotation objects).
Returns
void
Defined in
getCurrentMixer
▸ getCurrentMixer(): null | AnimationMixer<AnimationMixerEventMap>
Returns
null | AnimationMixer<AnimationMixerEventMap>
Defined in
getCurrentTime
▸ getCurrentTime(): number
Returns
number
Defined in
getDefaultViewPoint
▸ getDefaultViewPoint(): CameraViewPoint
Returns
Inherited from
Defined in
getPlayRate
▸ getPlayRate(): number
Returns
number
Defined in
init
▸ init(): void
Returns
void
Inherited from
Defined in
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
| Name | Type |
|---|---|
opts | aligned4DOptsType |
callback? | (ctrl: Aligned4DController) => void |
Returns
void
Defined in
loadDicom
▸ loadDicom(urls, opts?): void
Parameters
| Name | Type |
|---|---|
urls | string | string[] |
opts? | dicomLoaderOptsType |
Returns
void
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:183
loadGltf
▸ loadGltf(url, callback?, opts?): void
Parameters
| Name | Type |
|---|---|
url | string |
callback? | (content: Group<Object3DEventMap>) => void |
opts? | GltfLoadOpts |
Returns
void
Defined in
loadMetadataUrl
▸ loadMetadataUrl(url): void
Parameters
| Name | Type |
|---|---|
url | string |
Returns
void
Inherited from
Defined in
loadNrrd
▸ loadNrrd(url, loadingBar, callback?, opts?): void
Loads an NRRD in the canonical voxel order (i -> patient Left, j -> Posterior, k -> Superior), whatever order its file stores; see copperNrrdLoader.
Parameters
| Name | Type |
|---|---|
url | string |
loadingBar | loadingBarType |
callback? | (volume: any, nrrdMeshes: nrrdMeshesType, nrrdSlices: nrrdSliceType, gui?: GUI) => void |
opts? | optsType |
Returns
void
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:302
loadNrrdTexture3d
▸ loadNrrdTexture3d(url, callback?): void
Parameters
| Name | Type |
|---|---|
url | string |
callback? | (volume: any, gui?: GUI) => void |
Returns
void
Deprecated
Shows the file in its stored voxel order, not the canonical LPS order every other loader uses, with window and threshold values fixed for one demo case. Use loadNrrd (copperNrrdLoader) instead. Will be removed in a future major release.
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:330
loadOBJ
▸ loadOBJ(url, callback?, opts?): void
Parameters
| Name | Type |
|---|---|
url | string |
callback? | (mesh: Group<Object3DEventMap>) => void |
opts? | Object |
opts.color | string |
Returns
void
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:342
loadPureGLB
▸ loadPureGLB(url, callback?, opts?, onError?): void
Parameters
| Name | Type |
|---|---|
url | string |
callback? | (mesh: Group<Object3DEventMap>) => void |
opts? | Object |
opts.color | string |
opts.enhanceMaterial? | boolean |
onError? | (error: unknown) => void |
Returns
void
Defined in
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
| Name | Type |
|---|---|
mhdUrls | string[] |
opts? | raw4DVolumeOptsType |
callback? | (ctrl: Raw4DVolumeController) => void |
Returns
void
Defined in
loadView
▸ loadView(viewpointData): void
Parameters
| Name | Type |
|---|---|
viewpointData | CameraViewPoint |
Returns
void
Overrides
Defined in
loadViewUrl
▸ loadViewUrl(url): void
Parameters
| Name | Type |
|---|---|
url | string |
Returns
void
Inherited from
Defined in
loadVtk
▸ loadVtk(url): void
Parameters
| Name | Type |
|---|---|
url | string |
Returns
void
Defined in
loadVtks
▸ loadVtks(models): void
Parameters
| Name | Type |
|---|---|
models | vtkModels[] |
Returns
void
Defined in
onRenderCameraChange
▸ onRenderCameraChange(): void
Returns
void
Overrides
baseScene.onRenderCameraChange
Defined in
onWindowResize
▸ onWindowResize(): void
Returns
void
Inherited from
Defined in
pickAnnotatableMesh
▸ Private pickAnnotatableMesh(target): null | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>
Parameters
| Name | Type |
|---|---|
target | Object3D<Object3DEventMap> |
Returns
null | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>
Defined in
pickModel
▸ pickModel(content, callback, options?): void
Parameters
| Name | Type |
|---|---|
content | Group<Object3DEventMap> |
callback | (selectMesh: undefined | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>) => void |
options? | string[] |
Returns
void
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:117
pickSpecifiedModel
▸ pickSpecifiedModel(content, mousePosition): Object
Parameters
| Name | Type |
|---|---|
content | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap> | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>[] |
mousePosition | mouseMovePositionType |
Returns
Object
| Name | Type |
|---|---|
intersectedObject | null | Object3D<Object3DEventMap> |
intersects | Intersection<Object3D<Object3DEventMap>>[] |
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:139
removeLights
▸ removeLights(): void
Returns
void
Inherited from
Defined in
removePreRenderCallbackFunction
▸ removePreRenderCallbackFunction(id): void
Parameters
| Name | Type |
|---|---|
id | number |
Returns
void
Inherited from
baseScene.removePreRenderCallbackFunction
Defined in
src/Scene/commonSceneMethod.ts:113
render
▸ render(time?): void
Parameters
| Name | Type |
|---|---|
time? | number |
Returns
void
Overrides
Defined in
resetView
▸ resetView(): void
Returns
void
Defined in
setDepth
▸ setDepth(value): void
Parameters
| Name | Type |
|---|---|
value | number |
Returns
void
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:97
setDicomFilesOrder
▸ setDicomFilesOrder(value): void
Parameters
| Name | Type |
|---|---|
value | "ascending" | "descending" |
Returns
void
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:100
setModelPosition
▸ setModelPosition(model, position): void
Parameters
| Name | Type |
|---|---|
model | Group<Object3DEventMap> | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap> |
position | Object |
position.x? | number |
position.y? | number |
position.z? | number |
Returns
void
Defined in
setPlayRate
▸ setPlayRate(playRate): void
Parameters
| Name | Type |
|---|---|
playRate | number |
Returns
void
Defined in
setViewPoint
▸ setViewPoint(camera, target?): CameraViewPoint
Parameters
| Name | Type |
|---|---|
camera | PerspectiveCamera |
target? | number[] |
Returns
Inherited from
Defined in
updateBackground
▸ updateBackground(color1, color2): void
Parameters
| Name | Type |
|---|---|
color1 | string |
color2 | string |
Returns
void
Inherited from
Defined in
updateCamera
▸ updateCamera(viewpoint): void
Parameters
| Name | Type |
|---|---|
viewpoint | CameraViewPoint |
Returns
void
Defined in
updateControls
▸ updateControls(camera): void
Parameters
| Name | Type |
|---|---|
camera | PerspectiveCamera | OrthographicCamera |
Returns
void
Overrides
Defined in
updateDisplay
▸ updateDisplay(state): void
Parameters
| Name | Type |
|---|---|
state | baseStateType |
Returns
void
Inherited from
Defined in
updateLights
▸ updateLights(state): void
Parameters
| Name | Type |
|---|---|
state | baseStateType |
Returns
void
Inherited from
Defined in
updateModelChildrenVisualisation
▸ updateModelChildrenVisualisation(child): void
Parameters
| Name | Type |
|---|---|
child | Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap> |
Returns
void
Inherited from
baseScene.updateModelChildrenVisualisation