Home Reference Source
import {TilingRenderLayer} from 'bimsurfer3/viewer/tilingrenderlayer.js'
public class | source

TilingRenderLayer

Extends:

RenderLayer → TilingRenderLayer

A specific type of RenderLayer, which uses Tiling to achieve better render performance, but also minimizes the amount of data that needs to be loaded of the line.

Constructor Summary

Public Constructor
public

Member Summary

Public Members
public
public
public
public
public
public
public

octree: *

public
public
public
Private Members
private

Method Summary

Public Methods
public

addCompleteBuffer(buffer: *, gpuBufferManager: *): *

public

addGeometry(loaderId: *, geometry: *, object: *)

public

addGeometryReusable(geometry: *, loader: *, gpuBufferManager: *)

public
public

createObject(loaderId: *, roid: *, uniqueId: *, geometryIds: *, matrix: *, normalMatrix: *, scaleMatrix: *, hasTransparency: *, type: *, aabb: *): *

public

cull(node: *): boolean

public

done(loaderId: *)

public

dump()

public
public

flushBuffer(buffer: *): *

public

load(bimServerApi: *, densityThreshold: *, roids: *, fieldsToInclude: *, progressListener: *): *

public

prepareRender(reason: *)

public

renderBuffers(transparency: *, twoSidedTriangles: *, reuse: *, lines: *, visibleElements: *)

public

renderSelectionOutlines(ids: *, width: *)

public
public
public

traverseFunction(node: *, level: *, lineBoxGeometry: *)

Inherited Summary

From class RenderLayer
public
public
public
public

gl: *

public
public
public

lines: *

public

loaders: *

public
public
public
public
public
public
public
public

viewer: *

public

addCompleteBuffer(buffer: *, gpuBufferManager: *): *

Add a buffer that is already prepared

public

addGeometry(loaderId: *, geometry: *, object: *, buffer: *, sizes: *, quantFromAabb: *)

public

addGeometryReusable(geometry: *, loader: *, gpuBufferManager: *)

public

addGeometryToObject(geometryId: *, uniqueId: *, loader: *, gpuBufferManager: *, quantFromAabb: *)

public

createGeometry(loaderId: *, roid: *, uniqueModelId: *, geometryId: *, positions: *, normals: *, colors: *, color: *, indices: *, lineIndices: *, hasTransparency: *, hasTwoSidedTriangles: *, reused: *): *

public

createObject(loaderId: *, roid: *, uniqueId: *, geometryIds: *, matrix: *, normalMatrix: *, scaleMatrix: *, hasTransparency: *, type: *, aabb: *, gpuBufferManager: *, node: *, quantFromAabb: *): *

public

flushBuffer(buffer: *, gpuBufferManager: *): *

public

getLoader(loaderId: *): *

public

getObject(loaderId: *, identifier: *): *

public

incLoadedPrimitives(triangles: *, lines: *)

public
public

registerLoader(loaderId: *)

public

removeLoader(loaderId: *)

public

render(transparency: *, lineRender: *, twoSidedTriangles: *, visibleElements: *)

public

renderBuffer(buffer: *, programInfo: *, visibleElements: *, lines: *)

public

renderBuffers(transparency: *, twoSidedTriangles: *, reuse: *, lineRender: *, visibleElements: *)

public

renderFinalBuffers(buffers: *, programInfo: *, visibleElements: *, lines: *)

public
public

renderSelectionOutlines(ids: *, width: *, node: *)

public

storeMissingGeometry(geometryLoader: *, map: *)

Public Constructors

public constructor() source

Override:

RenderLayer#constructor

Public Members

public drawTileBorders: * source

public enabled: boolean source

public initialLoad: string source

public lastViewMatrix: * source

public lineBoxGeometry: * source

public loaderToNode: {} source

public octree: * source

public reuseLoader: * source

public show: string source

public tileLoader: * source

Private Members

private _frustum: * source

Public Methods

public addCompleteBuffer(buffer: *, gpuBufferManager: *): * source

Add a buffer that is already prepared

Override:

RenderLayer#addCompleteBuffer

Params:

NameTypeAttributeDescription
buffer *
gpuBufferManager *

Return:

*

public addGeometry(loaderId: *, geometry: *, object: *) source

Override:

RenderLayer#addGeometry

Params:

NameTypeAttributeDescription
loaderId *
geometry *
object *

public addGeometryReusable(geometry: *, loader: *, gpuBufferManager: *) source

Override:

RenderLayer#addGeometryReusable

Params:

NameTypeAttributeDescription
geometry *
loader *
gpuBufferManager *

public completelyDone() source

public createObject(loaderId: *, roid: *, uniqueId: *, geometryIds: *, matrix: *, normalMatrix: *, scaleMatrix: *, hasTransparency: *, type: *, aabb: *): * source

Override:

RenderLayer#createObject

Params:

NameTypeAttributeDescription
loaderId *
roid *
uniqueId *
geometryIds *
matrix *
normalMatrix *
scaleMatrix *
hasTransparency *
type *
aabb *

Return:

*

public cull(node: *): boolean source

Params:

NameTypeAttributeDescription
node *

Return:

boolean

public done(loaderId: *) source

Params:

NameTypeAttributeDescription
loaderId *

public dump() source

public flushAllBuffers() source

public flushBuffer(buffer: *): * source

Override:

RenderLayer#flushBuffer

Params:

NameTypeAttributeDescription
buffer *

Return:

*

public load(bimServerApi: *, densityThreshold: *, roids: *, fieldsToInclude: *, progressListener: *): * source

Params:

NameTypeAttributeDescription
bimServerApi *
densityThreshold *
roids *
fieldsToInclude *
progressListener *

Return:

*

public prepareRender(reason: *) source

Override:

RenderLayer#prepareRender

Params:

NameTypeAttributeDescription
reason *

public renderBuffers(transparency: *, twoSidedTriangles: *, reuse: *, lines: *, visibleElements: *) source

Override:

RenderLayer#renderBuffers

Params:

NameTypeAttributeDescription
transparency *
twoSidedTriangles *
reuse *
lines *
visibleElements *

public renderSelectionOutlines(ids: *, width: *) source

Override:

RenderLayer#renderSelectionOutlines

Params:

NameTypeAttributeDescription
ids *
width *

public renderTileBorders() source

public showAll() source

public traverseFunction(node: *, level: *, lineBoxGeometry: *) source

Params:

NameTypeAttributeDescription
node *
level *
lineBoxGeometry *