Class BaseScene<ApplicationContext, Renderer, Scene, Camera, Raycaster, Container, DisplayObject, Viewport>Abstract

graphic render component

Type Parameters

  • ApplicationContext

  • Renderer

  • Scene

  • Camera

  • Raycaster

  • Container

  • DisplayObject

  • Viewport

Hierarchy

Constructors

  • Type Parameters

    • ApplicationContext

    • Renderer

    • Scene

    • Camera

    • Raycaster

    • Container

    • DisplayObject

    • Viewport

    Parameters

    Returns BaseScene<ApplicationContext, Renderer, Scene, Camera, Raycaster, Container, DisplayObject, Viewport>

Properties

_vNode: VirtualNode<any>
backgroundImage: DisplayObject
camera?: Camera

相机实例,仅 3d 下有

compute2dOriginView: any

计算2d原始视图的缩放和位置

computeViewport: any

计算视口的缩放和位置、可见性

coordinateTransform: any

坐标转化

defaultSceneViewType: symbol

默认的场景视图类型标识

getCoordinateCtrl: any
getCurrentApp: (() => undefined | ApplicationContext)

Type declaration

    • (): undefined | ApplicationContext
    • Returns undefined | ApplicationContext

getCurrentInteractiveController: (() => undefined | InteractiveController<any, any, any>)

Type declaration

getSceneTools: any
getViewEntity: any
height: number
initInteractiveController: any
loadCanvas: any
maxFPS: number
mountTimer: number
onClick: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onDBClick: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onDragEnd: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onDragMove: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onDragStart: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onPinch: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onPinchEnd: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onPinchStart: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onPointerMove: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onPointerUp: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onPress: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onPressUp: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onRightClick: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onRotate: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onRotateEnd: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onRotateStart: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

onWheel: ((event) => void)

Type declaration

    • (event): void
    • Parameters

      Returns void

raycaster?: Raycaster

射线实例,仅 3d 下有

renderFlag: boolean
resizeHandler: any
resizeStageByCanvas: any
resolution: number
scene?: Scene

场景实例,仅 3d 下有

sceneContext: SceneContext
sceneType: SceneType

场景类型,标识是 2d 还是 3d 场景

tickers: Function[]
updateCameraInfo: any
updateCursorHandler: any
updateRenderFlag: any

更新渲染状态

view: Container

模型实际容器

viewport?: Viewport

模型视口容器(有多视图的时候才有)

width: number
BACKGROUND_COLOR: number

默认背景色

DEFAULT_HEIGHT: number

默认画布高度

DEFAULT_WIDTH: number

默认画布宽度

SCALE_BIGGER: number
SCALE_SMALLER: number
TRANSPARENT: boolean

默认是否透明

appMap: Map<string, any>

挂载点与应用上下文的映射关系

appMountedStatus: Map<string, boolean>

应用上下文是否已经挂载的状态

interactiveMap: Map<any, IInteractiveControllerInfo<any, any, any>>

应用上下文与不同视角交互控制器的映射关系

Accessors

  • get context(): SceneContext
  • Returns SceneContext

Methods

  • 添加子视图的接口

    Parameters

    • view: DisplayObject

    Returns void

  • 添加根视图容器到 app stage 的实现

    Parameters

    • app: ApplicationContext

    Returns void

  • 画布拖拽功能的实现,注意:如果已经引入其他交互插件则无需重复实现,避免实现上的冲突

    Parameters

    • event: SceneEvent<any>
    • type: "start" | "move" | "end"

    Returns void

  • 画布缩放功能的实现,注意:如果已经引入其他交互插件则无需重复实现,避免实现上的冲突

    Parameters

    Returns void

  • Returns void

  • Returns void | Promise<void>

  • 创建 gl app instance,并返回

    Returns ApplicationContext

  • 初始化坐标系控制系统

    Parameters

    • app: ApplicationContext

    Returns CoordinateController

  • 创建根视图,给 view 设值

    Returns Container

  • 初始化视口,给 viewport 设值

    Returns void

  • 销毁 gl app 及相关清理工作的实现

    Parameters

    • app: ApplicationContext

    Returns void

  • 关闭渲染器的默认交互

    Parameters

    • app: ApplicationContext

    Returns void

  • Returns void

  • Parameters

    • app: ApplicationContext

    Returns ICanvasInfo<Renderer>

  • 获取 hitTarget 的原始实现方法

    Returns ((point, container, configMap, interactiveType) => {
        originalTarget?: DisplayObject;
        originalTargetPoint?: Vec2 | Vec3;
        target?: DisplayObject;
    })

      • (point, container, configMap, interactiveType): {
            originalTarget?: DisplayObject;
            originalTargetPoint?: Vec2 | Vec3;
            target?: DisplayObject;
        }
      • 获取 hitTarget 的原始实现方法

        Parameters

        Returns {
            originalTarget?: DisplayObject;
            originalTargetPoint?: Vec2 | Vec3;
            target?: DisplayObject;
        }

        • Optional originalTarget?: DisplayObject

          event 的直接对象

        • Optional originalTargetPoint?: Vec2 | Vec3

          选中对象的具体场景鼠标位置

        • Optional target?: DisplayObject

          originalTarget 或 originalTarget 的祖先中的第一个可被交互的元素

  • 获取截图

    Parameters

    • Optional sx: number
    • Optional sy: number
    • Optional w: number
    • Optional h: number
    • Optional fileType: string
    • Optional quality: number
    • Optional isBase64: boolean

    Returns Promise<string | Blob>

  • 获取根视图的基本信息(position、scale、visible)

    Returns ViewInfo

  • 获取视口的实现

    Returns undefined | Viewport

  • 获取视口基础信息的实现

    Returns undefined | ViewInfo

  • 初始化天空盒

    Parameters

    • app: ApplicationContext

    Returns void

  • 将渲染器/画布挂载到视图布局上(浏览器环境下无需另外实现)

    Parameters

    • renderer: Renderer

    Returns void

  • 移除应用子视图

    Parameters

    • app: ApplicationContext

    Returns void

  • Returns null | Element<any>[]

  • resize 场景大小

    Parameters

    • app: ApplicationContext

    Returns void

  • resize 视口

    Parameters

    • app: ApplicationContext

    Returns void

  • 设置背景图

    Parameters

    • app: ApplicationContext

    Returns void

  • 设置根视图的位置

    Parameters

    • position: Partial<Vec3>

    Returns void

  • 设置根视图的缩放

    Parameters

    • scale: Partial<Vec3>

    Returns void

  • 设置根视图是否可见

    Parameters

    • visible: boolean

    Returns void

  • 设置视口的位置

    Parameters

    • position: Partial<Vec3>

    Returns void

  • 设置视口的缩放

    Parameters

    • scale: Partial<Vec3>

    Returns void

  • 设置视口是否可见

    Parameters

    • visible: boolean

    Returns void

  • 卸载画布的钩子(主要做一些清理回收工作,浏览器环境下无需另外实现)

    Returns void

  • 更新相机位置

    Parameters

    • position: Vec3

    Returns void

  • Parameters

    • app: ApplicationContext
    • cursor: string

    Returns void

  • 更新分辨率

    Parameters

    • app: ApplicationContext

    Returns void

Generated using TypeDoc