Rendering

Classes for rendering the contents of views.

Classes

Name Description  
DecorateContext Provides context for a ViewportDecorator to add Decorations to be rendered within a Viewport.  
Decorations A set of RenderGraphics and CanvasDecorations produced by Tools and Decorators, used to decorate the contents of a Viewport.  
DynamicsContext Provides context for an InteractiveTool to display decorations representing its current state.  
EmphasizeElements An implementation of EmphasizeElements.FeatureOverrideProvider for emphasizing selected elements through simple color/transparency appearance overrides.  
GraphicBranch A node in a scene graph.  
GraphicBuilder Provides methods for constructing a RenderGraphic from geometric primitives.  
RenderClipVolume An opaque representation of a clip volume applied to geometry within a Viewport. Beta
RenderContext Provides context for producing RenderGraphics for drawing within a Viewport.  
RenderGraphic Abstract representation of an object which can be rendered by a RenderSystem.  
RenderGraphicOwner A graphic that owns another graphic.  
RenderSystem A RenderSystem provides access to resources used by the internal WebGL-based rendering system.  
Scene Holds a collection of objects comprising a Viewport's scene. Beta
SceneContext Context used to create the scene for a Viewport. Beta

Enumerations

Name Description  
FeatureOverrideType Options for overriding element appearance.  
GraphicType Describes the type of a GraphicBuilder, which defines the coordinate system in which the builder's geometry is defined and  
UniformType The underlying data types that can be used for uniform variables in screen-space effect shaders. Beta
VaryingType The underlying data types that can be used for varying variables in screen-space effect shaders. Beta

Global Functions

Name Description  
canvasToImageBuffer Create an ImageBuffer in the specified format with the same dimensions and contents as a canvas.  
canvasToResizedCanvasWithBars Resize a canvas to a desired size.  
extractImageSourceDimensions Extract the dimensions of the jpeg or png data encoded in an ImageSource.  
getCenteredViewRect Determine maximum ViewRect that can be fitted and centered in specified ViewRect given a required aspect ratio. Beta
getCompressedJpegFromCanvas Produce a jpeg compressed to no more than specified bytes and of no less than specified quality. Beta
getImageSourceFormatForMimeType Get the ImageSourceFormat corresponding to the mime type string, or undefined if the string does not identify a supported ImageSourceFormat.  
getImageSourceMimeType Get a string describing the mime type associated with an ImageSource format.  
imageBufferToBase64EncodedPng Converts the contents of an ImageBuffer to PNG format.  
imageBufferToCanvas Create a canvas element with the same dimensions and contents as an image buffer.  
imageBufferToPngDataUrl Produces a data url in "image/png" format from the contents of an ImageBuffer.  
imageElementFromImageSource Extract an html Image element from a binary jpeg or png.  
imageElementFromUrl Create an html Image element from a URL.  
openImageDataUrlInNewWindow Open an image specified as a data URL in a new window/tab. Beta
tryImageElementFromUrl Try to create an html Image element from a URL.  

Interfaces

Name Description  
AppearanceOverrideProps JSON representation of an appearance override in an EmphasizeElementsProps.  
CanvasDecoration A Decoration that is drawn onto the  
EmphasizeElementsProps JSON representation of an EmphasizeElements.  
ParticleCollectionBuilderParams Parameters used to construct a ParticleCollectionBuilderParams.ParticleCollectionBuilder. Beta
ParticleProps Describes a particle to to add to a particle collection via ParticleCollectionBuilder.addParticle. Beta
RenderSystem.Options Options passed to IModelApp.supplyRenderSystem to configure the RenderSystem on startup. Beta
RenderSystemDebugControl An interface optionally exposed by a RenderSystem that allows control of various debugging features. Beta
RenderTargetDebugControl An interface optionally exposed by a RenderTarget that allows control of various debugging features. Beta
ScreenSpaceEffectBuilder An interface used to construct and register with the IModelApp.renderSystem a custom screen-space effect. Beta
ScreenSpaceEffectBuilderParams Parameters used to create a ScreenSpaceEffectBuilder. Beta
ScreenSpaceEffectContext Context passed to ScreenSpaceEffectBuilder.shouldApply. Beta
ScreenSpaceEffectSource The GLSL implementation of the effect produced by a ScreenSpaceEffectBuilder, to be integrated into a complete shader program. Beta
Uniform Represents a uniform variable in a shader program used by a custom screen-space effect, providing methods for setting the current value of the uniform. Beta
UniformArrayParams Parameters used to define an array of uniform variables for a ScreenSpaceEffectBuilder's shader program. Beta
UniformContext Context supplied to UniformParams.bind. Beta
UniformParams Parameters used to define a uniform variable for a ScreenSpaceEffectBuilder's shader program. Beta

Namespaces

Name Description  
FeatureSymbology Contains types that enable an application to customize how Features are drawn within a Viewport.  
ParticleCollectionBuilder Beta
Pixel Describes aspects of a pixel as read from a Viewport. Beta

Type Aliases

Name Description  
CanvasDecorationList An array of CanvasDecorations.  
GraphicList An array of RenderGraphics.  

Last Updated: 23 February, 2021