import { Camera , OrthographicCamera , Vector3 } from "three" ; export interface Bounds { bmin : Vector3 ; bmax : Vector3 ; } export interface FuseChannel { chIndex : number ; lut : Uint8Array ; rgbColor : [ number , number , number ] | number ; } typedef VolumeChannelDisplayOptions property { boolean } enabled property { < Array . < number > } color property { < Array . < number > } specularColor property { < Array . < number > } emissiveColor property { number } glossiness property { boolean } isosurfaceEnabled property { number } isovalue property { number } isosurfaceOpacity example export interface VolumeChannelDisplayOptions { enabled : boolean ; color : [ number , number , number ] ; specularColor : [ number , number , number ] ; emissiveColor : [ number , number , number ] ; glossiness : number ; isosurfaceEnabled : boolean ; isovalue : number ; isosurfaceOpacity : number ; } typedef VolumeDisplayOptions property { Array . < VolumeChannelDisplayOptions > } channels property { number } density property { Array . < number > } translation property { Array . < number > } rotation property { number } maskChannelIndex property { number } maskAlpha property { Array . < number > } clipBounds property { Array . < number > } scale property { boolean } maxProjection property { number } renderMode property { number } shadingMethod property { Array . < number > } gamma property { number } primaryRayStepSize property { number } secondaryRayStepSize property { boolean } showBoundingBox property { Array . < number > } boundingBoxColor example export interface VolumeDisplayOptions { channels ? : VolumeChannelDisplayOptions [ ] ; density ? : number ; translation ? : [ number , number , number ] ; rotation ? : [ number , number , number ] ; maskChannelIndex ? : number ; maskAlpha ? : number ; clipBounds ? : [ number , number , number , number , number , number ] ; scale ? : [ number , number , number ] ; maxProjection ? : boolean ; renderMode ? : number ; shadingMethod ? : number ; gamma ? : [ number , number , number ] ; primaryRayStepSize ? : number ; secondaryRayStepSize ? : number ; showBoundingBox ? : boolean ; boundingBoxColor ? : [ number , number , number ] ; } export const isOrthographicCamera = ( def ) : def is OrthographicCamera => def && ( def as OrthographicCamera ) . isOrthographicCamera ;