@itwin/core-frontend
Version:
iTwin.js frontend components
81 lines • 3.73 kB
TypeScript
/** @packageDocumentation
* @module Views
*/
import { Id64String } from "@itwin/core-bentley";
import { AxisAlignedBox3d, HydrateViewStateRequestProps, HydrateViewStateResponseProps, SectionDrawingViewProps, ViewDefinition2dProps, ViewStateProps } from "@itwin/core-common";
import { Transform, Vector3d } from "@itwin/core-geometry";
import { CategorySelectorState } from "./CategorySelectorState";
import { DisplayStyle2dState } from "./DisplayStyleState";
import { IModelConnection } from "./IModelConnection";
import { DisclosedTileTreeSet } from "./tile/internal";
import { SceneContext } from "./ViewContext";
import { Viewport } from "./Viewport";
import { AttachToViewportArgs, ComputeDisplayTransformArgs, ExtentLimits, GetAttachmentViewportArgs, ViewState2d, ViewState3d } from "./ViewState";
/** Strictly for testing.
* @internal
*/
export interface SectionDrawingInfo {
readonly spatialView: Id64String;
readonly drawingToSpatialTransform: Transform;
}
/** A view of a [DrawingModel]($backend)
* @public
* @extensions
*/
export declare class DrawingViewState extends ViewState2d {
static get className(): string;
/** Exposed strictly for testing and debugging. Indicates that when loading the view, the spatial view should be displayed even
* if `SectionDrawing.displaySpatialView` is not `true`.
* @internal
*/
static alwaysDisplaySpatialView: boolean;
/** Exposed strictly for testing and debugging. Indicates that the 2d graphics should not be displayed.
* @internal
*/
static hideDrawingGraphics: boolean;
private readonly _viewedExtents;
private _attachmentInfo;
private _attachment?;
/** Strictly for testing. @internal */
get sectionDrawingProps(): SectionDrawingViewProps | undefined;
/** Strictly for testing. @internal */
get sectionDrawingInfo(): SectionDrawingInfo;
/** Strictly for testing. @internal */
get attachment(): object | undefined;
/** Strictly for testing. @internal */
get attachmentInfo(): {
spatialView: Id64String | ViewState3d;
};
constructor(props: ViewDefinition2dProps, iModel: IModelConnection, categories: CategorySelectorState, displayStyle: DisplayStyle2dState, extents: AxisAlignedBox3d, sectionDrawing?: SectionDrawingViewProps);
/** See [[ViewState.attachToViewport]]. */
attachToViewport(args: AttachToViewportArgs): void;
/** See [[ViewState.detachFromViewport]]. */
detachFromViewport(): void;
changeViewedModel(modelId: Id64String): Promise<void>;
private querySectionDrawingProps;
/** @internal */
protected preload(hydrateRequest: HydrateViewStateRequestProps): void;
/** @internal */
protected postload(hydrateResponse: HydrateViewStateResponseProps): Promise<void>;
static createFromProps(props: ViewStateProps, iModel: IModelConnection): DrawingViewState;
toProps(): ViewStateProps;
getViewedExtents(): AxisAlignedBox3d;
get defaultExtentLimits(): ExtentLimits;
isDrawingView(): this is DrawingViewState;
/** See [[ViewState.getOrigin]]. */
getOrigin(): import("@itwin/core-geometry").Point3d;
/** See [[ViewState.getExtents]]. */
getExtents(): Vector3d;
/** @internal */
discloseTileTrees(trees: DisclosedTileTreeSet): void;
/** @internal */
createScene(context: SceneContext): void;
get areAllTileTreesLoaded(): boolean;
/** @internal */
get secondaryViewports(): Iterable<Viewport>;
/** @internal */
getAttachmentViewport(args: GetAttachmentViewportArgs): Viewport | undefined;
/** @beta */
computeDisplayTransform(args: ComputeDisplayTransformArgs): Transform | undefined;
}
//# sourceMappingURL=DrawingViewState.d.ts.map