graphic render component

Hierarchy

  • BaseScene<THREE.WebGLRenderer, HTMLCanvasElement, THREE.Scene, THREE.Camera, THREE.Raycaster, THREE.Group, THREE.Object3D, THREE.Sprite>
    • Scene3D

Constructors

Properties

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

相机实例,仅 3d 下有

defaultSceneViewType: symbol

默认的场景视图类型标识

getCurrentApp: (() => undefined | WebGLRenderer)

Type declaration

    • (): undefined | WebGLRenderer
    • Returns undefined | WebGLRenderer

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

Type declaration

height: number
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
resizeStage: ((app) => void)

Type declaration

    • (app): void
    • Parameters

      • app: WebGLRenderer

      Returns void

resizeStageBySize: any
resolution: number
scene?: Scene

场景实例,仅 3d 下有

sceneContext: SceneContext
sceneType: SceneType

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

tickers: Function[]
timer: any
updateCursor: ((app, cursor) => void)

Type declaration

    • (app, cursor): void
    • Parameters

      • app: WebGLRenderer
      • cursor: string

      Returns void

view: Group

模型实际容器

viewport?: Sprite

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

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: Object3D

    Returns void

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

    Returns void

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

    Returns void

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

    Returns void

  • Returns void

  • Returns void

  • Returns void | Promise<void>

  • 创建 gl app instance,并返回

    Returns WebGLRenderer

  • 初始化坐标系控制系统

    Parameters

    • app: WebGLRenderer

    Returns CoordinateControllerThree

  • 创建根视图,给 view 设值

    Returns Group

  • 初始化视口,给 viewport 设值

    Returns void

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

    Parameters

    • app: WebGLRenderer

    Returns void

  • 关闭渲染器的默认交互

    Returns void

  • Returns void

  • Parameters

    • app: WebGLRenderer

    Returns {
        height: number;
        renderer: HTMLCanvasElement;
        width: number;
    }

    • height: number
    • renderer: HTMLCanvasElement
    • width: number
  • 获取 hitTarget 的原始实现方法

    Returns ((point, container, configMap, interactiveType) => {
        originalTarget: undefined;
        originalTargetPoint: undefined;
        target: undefined;
    } | {
        originalTarget: Object3D;
        originalTargetPoint: {
            x: number;
            y: number;
            z: number;
        };
        target: undefined | Object3D;
    })

      • (point, container, configMap, interactiveType): {
            originalTarget: undefined;
            originalTargetPoint: undefined;
            target: undefined;
        } | {
            originalTarget: Object3D;
            originalTargetPoint: {
                x: number;
                y: number;
                z: number;
            };
            target: undefined | Object3D;
        }
      • Parameters

        Returns {
            originalTarget: undefined;
            originalTargetPoint: undefined;
            target: undefined;
        } | {
            originalTarget: Object3D;
            originalTargetPoint: {
                x: number;
                y: number;
                z: number;
            };
            target: undefined | Object3D;
        }

  • 获取截图

    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 {
        position: {
            x: number;
            y: number;
        };
        scale: {
            x: number;
            y: number;
        };
        visible: boolean;
    }

    • position: {
          x: number;
          y: number;
      }
      • x: number
      • y: number
    • scale: {
          x: number;
          y: number;
      }
      • x: number
      • y: number
    • visible: boolean
  • 获取视口的实现

    Returns undefined

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

    Returns undefined

  • 初始化天空盒

    Returns void

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

    Returns void

  • 移除应用子视图

    Returns void

  • Returns null | Element<any>[]

  • resize 视口

    Returns void

  • 设置背景图

    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

    • v: Vec3

    Returns void

  • 更新分辨率

    Parameters

    • app: WebGLRenderer

    Returns void

Generated using TypeDoc