Class SoOverlayGroup

  • All Implemented Interfaces:
    SafeDisposable

    public class SoOverlayGroup
    extends SoGroup
    Group node dedicated to render multiple co-planar shapes. Derived from the class SoGroup, the SoOverlayGroup node renders multiple co-planar shapes without any Z-fighting artifacts.

    Overlapping co-planar shapes should be inserted as children of a SoOverlayGroup. The shapes are stacked for the rendering according to their places in the child list: the i th shape will be drawn above the i-1 th shape.

    For instance, in the following picture the red square is the first shape child, and the green triangle is the second shape child of a SoOverlayGroup. In the following picture, the green triangle is the first shape child. In this picture, the square and the triangle are inserted in a SoGroup, which does not prevent the Z-fighting artifact where the 2 shapes overlap.

    The SoOverlayGroup is only designed to correctly render planar shapes. Inserting in SoOverlayGroup spheres, cylinders, cubes or any shape whose vertices are not on a single euclidean plane may cause an unexpected rendering. However, this does not limit the SoOverlayGroup to 2D rendering. You can create several SoOverlayGroup instances, but all the shapes under an overlay group must be a planar shape and must be located on the same 3D plane. One different 3D plane per instance of SoOverlayGroup is possible as in the following picture from the example "Inventor\Features\OverlayPanels" in which each panel corresponds to one instance of an SoOverlayGroup.

    The SoOverlayGroup is not designed to solve any Z-fighting artifact on 3D shapes. For instance, a correct rendering of meridian circles onto a sphere requires using either SoPolygonOffset or SoDepthOffset.

    # Limitations of the overlay group:

    File format/default:

    OverlayGroup {

    }

    Action behavior:

    Similar behavior as described in SoGroup.

    Since:
    Open Inventor 2024.1

    See Also:
    SoDepthOffset, SoGroup, SoPolygonOffset, SoSeparator, SoSwitch
    • Constructor Detail

      • SoOverlayGroup

        public SoOverlayGroup()
        Creates an empty overlay group node.