UNPKG

@itwin/core-frontend

Version:
91 lines 4.5 kB
/** @packageDocumentation * @module WebGL */ import { Id64String } from "@itwin/core-bentley"; import { Transform } from "@itwin/core-geometry"; import { BatchType, ContourDisplay, FeatureAppearance, FeatureAppearanceProvider, GeometryClass, HiddenLine, RealityModelDisplaySettings, ViewFlags } from "@itwin/core-common"; import { IModelConnection } from "../../../IModelConnection"; import { FeatureSymbology } from "../../../render/FeatureSymbology"; import { ClipVolume } from "./ClipVolume"; import { Branch } from "./Graphic"; import { PlanarClassifier } from "./PlanarClassifier"; import { TextureDrape } from "./TextureDrape"; import { EdgeSettings } from "./EdgeSettings"; /** Options used to construct a BranchState. * @internal */ export interface BranchStateOptions { readonly transform: Transform; viewFlags: ViewFlags; symbologyOverrides: FeatureSymbology.Overrides; clipVolume?: ClipVolume; readonly planarClassifier?: PlanarClassifier; readonly secondaryClassifiers?: PlanarClassifier[]; readonly textureDrape?: TextureDrape; readonly edgeSettings: EdgeSettings; /** Used chiefly for readPixels() to identify context of picked Ids when graphics from multiple iModels are displayed together. */ readonly iModel?: IModelConnection; readonly transformFromIModel?: Transform; /** Whether the graphics in this branch are 2d or 3d. * Sometimes we draw 3d orthographic views in the context of a 2d view (e.g., sheet view attachments). * Currently this only affects the logic for discarding surfaces (in 2d, we relay on display priority to enforce draw order between different elements; * in 3d we use the pick buffers. */ is3d: boolean; frustumScale?: { x: number; y: number; }; readonly appearanceProvider?: FeatureAppearanceProvider; readonly realityModelDisplaySettings?: RealityModelDisplaySettings; forceViewCoords?: boolean; readonly viewAttachmentId?: Id64String; readonly inSectionDrawingAttachment?: boolean; groupNodeId?: number; /** If true, the view's [DisplayStyleSettings.clipStyle]($common) will be disabled for this branch. * No [ClipStyle.insideColor]($common), [ClipStyle.outsideColor]($common), or [ClipStyle.intersectionStyle]($common) will be applied. */ disableClipStyle?: true; contourLine?: ContourDisplay; } /** * Represents a branch node in the scene graph, with associated view flags and transform to be applied to * all sub-nodes of the branch. * @internal */ export declare class BranchState { private readonly _opts; get transform(): Transform; get viewFlags(): ViewFlags; set viewFlags(vf: ViewFlags); get clipVolume(): ClipVolume | undefined; get forceViewCoords(): boolean; get planarClassifier(): PlanarClassifier | undefined; get textureDrape(): TextureDrape | undefined; get edgeSettings(): EdgeSettings; get iModel(): IModelConnection | undefined; get transformFromIModel(): Transform | undefined; get is3d(): boolean; get frustumScale(): { x: number; y: number; }; get appearanceProvider(): FeatureAppearanceProvider | undefined; get secondaryClassifiers(): PlanarClassifier[] | undefined; get realityModelDisplaySettings(): RealityModelDisplaySettings | undefined; get viewAttachmentId(): string | undefined; get inSectionDrawingAttachment(): boolean | undefined; get groupNodeId(): number | undefined; get disableClipStyle(): true | undefined; get contourLine(): ContourDisplay | undefined; get symbologyOverrides(): FeatureSymbology.Overrides; set symbologyOverrides(ovrs: FeatureSymbology.Overrides); changeRenderPlan(viewFlags: ViewFlags, is3d: boolean, hline: HiddenLine.Settings | undefined, contour?: ContourDisplay): void; /** Create a BranchState from a Branch. Any properties not explicitly specified by the new Branch are inherited from the previous BranchState. */ static fromBranch(prev: BranchState, branch: Branch): BranchState; getFeatureAppearance(overrides: FeatureSymbology.Overrides, elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined; static createForDecorations(): BranchState; withViewCoords(): BranchState; constructor(opts: BranchStateOptions); } //# sourceMappingURL=BranchState.d.ts.map