@itwin/core-frontend
Version:
iTwin.js frontend components
80 lines • 3.79 kB
TypeScript
/** @packageDocumentation
* @module Views
*/
import { Id64Array, Id64String } from "@itwin/core-bentley";
import { Point2d, Point3d, Range3d, Transform } from "@itwin/core-geometry";
import { AxisAlignedBox3d, HydrateViewStateRequestProps, HydrateViewStateResponseProps, SheetProps, ViewAttachmentProps, ViewDefinition2dProps, ViewStateProps } from "@itwin/core-common";
import { CategorySelectorState } from "./CategorySelectorState";
import { DisplayStyle2dState } from "./DisplayStyleState";
import { IModelConnection } from "./IModelConnection";
import { RenderMemory } from "./render/RenderMemory";
import { DecorateContext, SceneContext } from "./ViewContext";
import { Viewport } from "./Viewport";
import { AttachToViewportArgs, ComputeDisplayTransformArgs, GetAttachmentViewportArgs, ViewState, ViewState2d } from "./ViewState";
import { DrawingViewState } from "./DrawingViewState";
import { DisclosedTileTreeSet } from "./tile/internal";
/** A view of a [SheetModel]($backend).
* @public
* @extensions
*/
export declare class SheetViewState extends ViewState2d {
/** The width and height of the sheet in world coordinates. */
readonly sheetSize: Point2d;
private _attachmentsInfo;
private _attachments?;
private readonly _viewedExtents;
get attachmentIds(): Id64Array;
static get className(): string;
static createFromProps(viewStateData: ViewStateProps, iModel: IModelConnection): SheetViewState;
toProps(): ViewStateProps;
/** Strictly for testing. @internal */
get viewAttachmentProps(): Array<Readonly<ViewAttachmentProps>>;
/** Strictly for testing. @internal */
get viewAttachmentInfos(): Id64Array | Array<{
attachedView: ViewState;
}>;
/** Strictly for testing. @internal */
get attachments(): object[] | undefined;
isDrawingView(): this is DrawingViewState;
isSheetView(): this is SheetViewState;
constructor(props: ViewDefinition2dProps, iModel: IModelConnection, categories: CategorySelectorState, displayStyle: DisplayStyle2dState, sheetProps: SheetProps, attachments: Id64Array);
getOrigin(): Point3d;
getExtents(): import("@itwin/core-geometry").Vector3d;
/** Overrides [[ViewState.discloseTileTrees]] to include tile trees associated with [ViewAttachment]($backend)s displayed on this sheet. */
discloseTileTrees(trees: DisclosedTileTreeSet): void;
/** @internal */
collectNonTileTreeStatistics(stats: RenderMemory.Statistics): void;
get defaultExtentLimits(): {
min: number;
max: number;
};
getViewedExtents(): AxisAlignedBox3d;
/** @internal */
protected preload(hydrateRequest: HydrateViewStateRequestProps): void;
/** @internal */
protected postload(hydrateResponse: HydrateViewStateResponseProps): Promise<void>;
/** @internal */
createScene(context: SceneContext): void;
/** @internal */
get secondaryViewports(): Iterable<Viewport>;
/** @internal */
private queryAttachmentIds;
changeViewedModel(modelId: Id64String): Promise<void>;
/** See [[ViewState.attachToViewport]]. */
attachToViewport(args: AttachToViewportArgs): void;
/** See [[ViewState.detachFromViewport]]. */
detachFromViewport(): void;
get areAllTileTreesLoaded(): boolean;
/** @internal Strictly for testing */
areAllAttachmentsLoaded(): boolean;
/** Create a sheet border decoration graphic. */
private createBorder;
/** @internal */
decorate(context: DecorateContext): void;
computeFitRange(): Range3d;
/** @internal */
getAttachmentViewport(args: GetAttachmentViewportArgs): Viewport | undefined;
/** @beta */
computeDisplayTransform(args: ComputeDisplayTransformArgs): Transform | undefined;
}
//# sourceMappingURL=SheetViewState.d.ts.map