@cornerstonejs/core
Version:
Cornerstone3D Core
74 lines (73 loc) • 3.6 kB
TypeScript
import type { ICamera, Point3, ReferenceCompatibleOptions, ViewReference, ViewReferenceSpecifier } from '../../../types/index.js';
import type { PlaneRestriction } from '../../../types/IViewport.js';
import { type GenericViewportReferenceContext } from '../genericViewportReferenceCompatibility.js';
import type { LoadedData } from '../ViewportArchitectureTypes.js';
import type { PlanarRendering } from './planarRuntimeTypes.js';
import type { PlanarDataBinding } from './PlanarMountedData.js';
import type { PlanarPayload, PlanarViewportRenderContext, PlanarViewState } from './PlanarViewportTypes.js';
export type PlanarReferenceContext = {
dataId: string;
data: LoadedData<PlanarPayload>;
frameOfReferenceUID: string;
rendering: PlanarRendering;
};
type PlanarResolvedViewLike = {
getFrameOfReferenceUID(): string;
toICamera(): ICamera<unknown>;
};
export type PlanarViewReferenceHost = {
viewportId: string;
viewportType: string;
getActiveDataId(): string | undefined;
getBinding(dataId: string): PlanarDataBinding | undefined;
getBindings(): Iterable<[string, PlanarDataBinding]>;
getCurrentBinding(): PlanarDataBinding | undefined;
getRenderContext(): PlanarViewportRenderContext;
getResolvedView(args?: {
frameOfReferenceUID?: string;
sliceIndex?: number;
}): PlanarResolvedViewLike | undefined;
getViewState(): PlanarViewState;
getVolumeSliceWorldPointForImageIdIndex(imageIdIndex: number): Point3 | undefined;
promoteSourceDataId(dataId: string): void;
render(): void;
setImageIdIndex(imageIdIndex: number): Promise<string>;
setViewState(viewStatePatch: Partial<PlanarViewState>): void;
updateBindingsCameraState(): void;
};
declare class PlanarViewReferenceController {
private readonly host;
constructor(host: PlanarViewReferenceHost);
getVolumeId(viewRefSpecifier?: ViewReferenceSpecifier): string | undefined;
getCurrentImageId(viewRefSpecifier?: ViewReferenceSpecifier): string | undefined;
getViewReference(viewRefSpecifier?: ViewReferenceSpecifier): ViewReference;
getViewReferenceId(viewRefSpecifier?: ViewReferenceSpecifier): string;
setViewReference(viewRef: ViewReference): void;
getFrameOfReferenceUID(): string;
resolveFrameOfReferenceUID(): string;
isPlaneViewable(planeRestriction: PlaneRestriction, options?: ReferenceCompatibleOptions): boolean;
getReferenceViewContexts(fallbackContexts: GenericViewportReferenceContext[]): GenericViewportReferenceContext[];
getPlanarReferenceContext(viewRefSpecifier?: ViewReferenceSpecifier): PlanarReferenceContext | undefined;
private getCurrentPlanarReferenceContext;
private getPlanarReferenceContextByDataId;
private getAllPlanarReferenceContexts;
private getGenericViewportReferenceContext;
private findPlanarReferenceContextByVolumeId;
private findPlanarReferenceContextByImageReference;
private resolveViewReferenceContext;
private activatePlanarReferenceContext;
private applyViewReferenceToCurrentBinding;
private applyImageViewReference;
private applyVolumeViewReference;
private normalizeVolumeViewReference;
private deriveOrientationFromPlaneRestriction;
private isPlaneRestrictionCompatibleWithNormal;
private resolveVolumeReferenceSliceTarget;
private toVolumeSliceTarget;
private getImageIdsForReferenceContext;
private findImageIdIndexByReference;
private getCurrentPlanarRendering;
private areNormalsEqual;
private areNormalsOpposite;
}
export default PlanarViewReferenceController;