instantreality 1.0

Component:
VolumeRendering
Status:
interface only
Structure type:
concrete
Standard:
X3D

EdgeEnhancementVolumeStyle

Provides edge enhancement for the volume rendering style. Enhancement of the basic volume is provided by darkening voxels based on the orientation of their surface normal relative to the view direction. Perpendicular normals colour the voxels according to the edgeColor while voxels with parallel normals are not changed at all. A threshold can be set where the proportion of how close to parallel the normal direction needs to be before no colour changes are made.

Inheritance

Code

XML encoding
<EdgeEnhancementVolumeStyle enabled='TRUE'
logFeature=''
edgeColor='0 0 0'
gradientThreshold='0.4'
 />
Classic encoding
EdgeEnhancementVolumeStyle {
	enabled TRUE
	logFeature [""]
	edgeColor 0 0 0
	gradientThreshold 0.4
}

Interface

Filter: X3D only | Avalon only | All
id Name DataType PartType Default ValueType Description
SFColor edgeColor SFColor inputOutput 0 0 0 [0, 1] The edgeColor field defines the colour to be used to highlight the edges.
SFBool enabled SFBool inputOutput TRUE The enabled field defines whether this rendering style should be currently applied to the volume data. If the field is set to FALSE, then the rendering shall not be applied at all. The render shall act as though no volume data is rendered when set to FALSE. Effectively, this allows the end user to turn on and off volume rendering of specific parts of the volume without needing to add or remove style definitions from the volume data node.
SFFloat gradientThreshold SFFloat inputOutput 0.4 [0, 1.5707963] The gradientThreshold field defines the minimum angle (in radians) away from the view direction vector that the surface normal needs to be before any enhancement is applied.
MFString logFeature MFString inputOutput state, child, parent, route, eventIn, eventOut controls the logging of changes, state: log state changes (e.g. live), child: log child add/remove, parent: log parent add/remove, route: log route add/remove; eventIn: log receiving of events, eventOut: log sending of events: guiView, runtime system should create node-view, guiEdit: runtime system should create node-editeverything: log everything
SFNode metadata SFNode inputOutput MetadataObject container for payload metadata inside MetadataSet element
SFNode surfaceNormals SFNode inputOutput NULL [Texture] The surfaceNormals field is used to provide pre-calculated surface normal information for each voxel. If provided, this shall be used for all lighting calculations. If not provided, the implementation shall automatically generate surface normals using an implementation-specific method. If a value is provided, it shall be exactly the same voxel dimensions as the base volume data that it represents. If the dimension are not identical then the browser shall generate a warning and automatically generate its own internal normals as though no value was provided for this field.