CartoonVolumeStyle
Uses the cartoon-style nonphotorealistic rendering of the volume. Cartoon rendering uses two colours that are rendered in a series of distinct flat-shaded sections based on the local surface normal's closeness to the average normal, with no gradients in between.
Inheritance
Code
XML encoding
<CartoonVolumeStyle parallelColor='0 0 0' orthogonalColor='1 1 1' colorSteps='4' enabled='TRUE' logFeature='' />
Classic encoding
CartoonVolumeStyle { parallelColor 0 0 0 orthogonalColor 1 1 1 colorSteps 4 enabled TRUE logFeature [""] }
Interface
Filter: X3D only | Avalon only | All
id | Name | DataType | PartType | Default | ValueType | Description |
---|---|---|---|---|---|---|
parallelColor | SFColor | inputOutput | 0 0 0 | [0, 1] | The parallelColor field specifies the colour to be used for surface normals that are orthogonal to the viewer's current location (the plane of the surface itself is parallel to the user's view direction). | |
orthogonalColor | SFColor | inputOutput | 1 1 1 | [0, 1] | The orthogonalColor field specifies the colour to be used for surface normals that are parallel to the viewer's current location (the plane of the surface itself is orthogonal to the user's view direction). Surfaces that are further than orthgonal to the view direction (ie back facing) are not rendered and shall have no colour calculated for them. | |
colorSteps | SFInt32 | inputOutput | 4 | [1, 64] | The colorSteps field indicates how many distinct colours should be taken from the interpolated colours and used to render the object. If the value is 1, then no colour interpolation takes place, and only the orthogonal colour is used to render the surface with. Any other value and the colours are interploted between parallelColor and orthogonalColor in HSV colour space for the RGB components, and linearly for the alpha component. From this, determine the number of colours using a midpoint calculation. | |
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. | |
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. | ||
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 |