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: Clock
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, segmentation, callback?, opts?): void
Parameters
| Name | Type |
|---|---|
url | string |
loadingBar | loadingBarType |
segmentation | boolean |
callback? | (volume: any, nrrdMeshes: nrrdMeshesType, nrrdSlices: nrrdSliceType, gui?: GUI) => void |
opts? | optsType |
Returns
void
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:299
loadNrrdTexture3d
▸ loadNrrdTexture3d(url, callback?): void
Parameters
| Name | Type |
|---|---|
url | string |
callback? | (volume: any, gui?: GUI) => void |
Returns
void
Inherited from
Defined in
src/Scene/commonSceneMethod.ts:323
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:335
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