Constructor for the BlendedRenderEngineContext3D
Unique render engine ID that corresponds to the blended rendering engine.
array of RenderEngineContext3D objects.
ShadowMapContext to be updated
call bsck method to be called on both success and failure case
This is an asynchronous method that returns a Promise as follows:
Promise .then(void) .catch (err: ReturnCode )
Returns the renderParameter
Gets the lighting characterists for rendering of the polygons.
This is an asynchronous method that returns a Promise as follows:
Promise .then(data) .catch (err: ReturnCode
callbackFunc(err: ReturnCode , data)
Return the child render engine associated with this object
The index of blended render engine for this operaton
Return the render engine ID associated with this object
The index of blended render engine for this operaton
Gets the current RenderParams3D structure for the engine.
This is an asynchronous method that returns a Promise as follows:
Promise .then(renderParams : RenderParams3D ) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , renderParams : RenderParams3D )
Gets one of the transfer functions associated with this engine.
The index of blended render engine for this operaton
A 0-based number representing which transfer function to get.
This is an asynchronous method that returns a Promise as follows:
Promise .then(renderRangeParams : RenderRangeParams ) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , renderRenderParams : RenderRangeParams )
Return the volumeDataContext associated with this object
Loads a transfer function XML file and applies the contents to the engine.
The index of blended render engine for this operaton
The file name of a transfer function XML file to load and apply.
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Projects the specific array of vectors into the scene and returns a correpsonding array of points.
The index of blended render engine for this operaton
This is an asynchronous method that returns a Promise as follows:
Promise .then(pointList : Array< Point >) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , pointList Point : Array< Point> )
Releases server side resources assoicated with this RenderEngineContext3D instance.
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Renders an interactive quality image.
This is a synchronous method and returns ReturnCode.ok on success.
Renders a final maximum quality image.
This is a synchronous method and returns ReturnCode.ok on success.
Renders an image and saves it to disk.
Name of the file to save to disk.
Set to true to render a final quality image (defualt), or false for interactive quality image.
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Saves the current set of transfer functions to an XML file.
The index of blended render engine for this operaton
The file name of a transfer function XML file to save to.
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Specifies the blendType and amount for how to render the two render engines together
additive, horizontal swipe, or vertical swipe
optional callback invoked once the server has completed this call
Sets the curved MPR path to use. Essentially, the X vector (m11,m21,m31) in the projection plane describes the direction for the linear slice to take at every interpolated point on the curve. The offset (m14,m24,m34) in the projection plane describes where each point is. From this description, the points you specify are interpolated via Catmull-Rom spline interpolation. The spacing between interpolated points is dictated by the image size.
The index of blended render engine for this operaton
An arry of transformation matrices designating the position and direction vector for each control point.
A value designating which vector to align the points against.
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Enables OpenGL GPU based rendering of polygon objects. All polygon objects will be rendered by OpenGL on the system GPU for this engine. The polygon objects are rendered into a seperate buffer that is overlayed on top of the HDVR image. OpenGL based polygon rendering is potentially much faster than the HDVR polygon engine, and supports layered object translucency. However, because the polygon objects are rendered into a seperate buffer and then overlayed on the HDVR image, they will always appear on top of the HDVR image. If volume occluded polygon objects are desired, the HDVR polygon engine must be used.
When this function is used to disable or enable OpenGL rendering it will reset the render engine's polygon state. This means that any PolygonContext objects that have been applied to the engine will be cleared, and FastPolygon rendering will be disabled. One must call setPolygonContexts and setFastPolygonEnable, as approptiate, to re-apply the polygon state.
For polygon objects to be visible the HDVR camera must be positioned so that the objects are in view. The HDVR camera position as represented in the RenderParams.transform variable may be different than the actual camera position if the front clipping plane is disabled (this is the default setting). This offsetting may be automated by using the bAutoOffset and offsetDistance paramaters. This auto offset feature is necessary if rendering in slab mode.
OpenGL polygon rendering is only available when the rendering server is running on a GPU enabled Microsoft Windows system.
Set to true to enable OpenGL GPU polygon rendering. Set to false to enable HDVR CPU polygon rendering.
True to enable auto camera offset feature for OpenGL frustrum. False to disable.
Offset distance for auto offset feature.
This is an asynchronous method that returns a Promise as follows:
Promise .then(renderParams : RenderParams3D ) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , renderParams : RenderParams3D )
Sets the engine to use fast polygons mode. In this mode changes to PolygonContext objects are rendered more quickly. However, no changes to the render engine state other than polygon transformations are permitted while in this mode. This means that no changes to the position, orientation, or any other RenderParams3D fields are permitted.
The index of blended render engine for this operaton
Set to true to turn fast polygon mode on, set to false to turn off.
This is an asynchronous method that returns a Promise as follows:
Promise .then(renderParams : RenderParams3D ) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , renderParams : RenderParams3D )
Sets an array of PolygonContext objects to be assoicated with the render engine. Once added to the engine, a new frame is rendered that includes the added polygon objects.
The index of blended render engine for this operaton
An array of PolygonContext objects to be assoicated with the render engine.
If true an interactive quality image is automaticly generated. If false no image is generated.
This is an asynchronous method that returns a Promise as follows:
Promise .then(void) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , void)
Sets the lighting characterists for rendering of the polygons.
This is an asynchronous method that returns a Promise as follows:
Promise .then(void) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , void)
Sets the rendering parameter to be used with the render engine.
A RenderParams3D object containing the values that are to be applied to the rendering engine.
This is an asynchronous method that returns a Promise as follows:
Promise .then(void) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
While this does not provide a return value, it is sometimes useful to wait for it to complete as in:
renderEngineContext.setRenderParams(renderParams).then(function() { renderEngineContext.render(); renderFinal(); });
Sets the transfer function on this rendering engine.
The index of blended render engine for this operaton
0-based number for transfer function to set.
An array of render ranges to set.
This is an asynchronous method that returns a Promise as follows:
Promise .then() .catch (err: ReturnCode )
callbackFunc(err: ReturnCode )
Shoots ray into the screen from an array of points, and returns a correpsonding array of RayStopInfo objects.
The index of blended render engine for this operaton
Array of Vectors to project into the scene.
This is an asynchronous method that returns a Promise as follows:
Promise .then(rayStopInfoList : Array< RayStopInfo>) .catch (err: ReturnCode )
callbackFunc(err: ReturnCode , rayStopInfoList : Array< RayStopInfo> )
subclass of RenderEngineContext3D which consists of an array of RenderEngineContext3D, as well as the blendType and the blendAmount for fusing of the two render engines.