Class PoItemLegend

  • All Implemented Interfaces:
    SafeDisposable

    public class PoItemLegend
    extends PoLegend
    Class to build an items legend. This legend associates a string (this is the values of the legend) to a box or/and a line or/and a marker. All the sizes cannot be controlled by the application and depend on the dimensions of the legend. The font size F of strings is calculated as function of the rectangle delimiting the legend. The size of the markers is equal to F. The height of the boxes is equal to 1.5 * F, and the width of the lines and of the boxes is equal to 1.5 * F * boxRatio.

    File format/default:

    PoItemLegend {

      titleVisibility VISIBILITY_OFF
      titlePosition POS_BOTTOM
      titlePath RIGHT_PATH
      titleFontSize 0
      titleFontName ""
      titleString ""
      valueVisibility VISIBILITY_ON
      valuePosition POS_RIGHT
      valueFontName ""
      valueAddStringVisibility false
      valueAddString ""
      marginType REL_MARGIN
      marginLeft 0.05
      marginRight 0.05
      marginBottom 0.05
      marginTop 0.05
      incrementType VERTICAL_INCREMENT
      numColumns 1
      boxRatio 1
      start 0 0
      end 1 1
      item ""
      boxVisibility true
      boxColor 0 0 0
      lineVisibility false
      lineColor 0 0 0
      lineSize 0
      linePattern 0xFFFF
      markerVisibility false
      markerColor 0 0 0
      markerSize 0
      markerString "."
    }

    <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> <html> <head> <link REL="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style"> <title></title> </head> <BODY> <h1></h1> <h4> <A NAME="Heading671">CATALOG PARTS</A></h4> <ul><b>PoItemLegend</b> {</ul> <ul><ul><b>Separator</b> <tt>alternateRep</tt> (from PoBase) {<br> </ul></ul> <ul><ul><ul><b>AppearanceKit</b> <tt>appearance</tt> (from PoBase)</ul></ul></ul> <ul><ul><ul><i>Specifies the appearance of all the kit. By default lightModel.model=BASE_COLOR.</i></ul></ul></ul> <ul><ul><ul><b>MatrixTransform</b> <tt>domainTransform</tt> (from PoBase)</ul></ul></ul> <ul><ul><ul><i>Corresponds to the domain transformation.</i></ul></ul></ul> <ul><ul><ul><ul></ul></ul></ul></ul> <ul><ul><ul><b>Separator</b> <tt>backgroundSep</tt> (from PoLegend) {</ul></ul></ul> <ul><ul><ul><i>Contains properties and shapes to draw the background of the legend.</i></ul></ul></ul> <ul><ul><ul><ul><b>AppearanceKit</b> <tt>backgroundApp </tt>(from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Specifies the appearance of the background of the legend.</i></ul></ul></ul></ul> <ul><ul><ul><ul><b>Group</b> <tt>background</tt> (from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Contains a SoFaceSet shape to draw the background of the legend.</i></ul></ul></ul></ul> <ul><ul><ul>}<br> <br> <b>Separator</b> <tt>backgroundBorderSep</tt> (from PoLegend) {</ul></ul></ul> <ul><ul><ul><i>Contains properties and shapes to draw background border of the legend.</i></ul></ul></ul> <ul><ul><ul><ul><b>AppearanceKit</b> <tt>backgroundBorderApp </tt>(from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Specifies the appearance of background border of the legend.</i></ul></ul></ul></ul> <ul><ul><ul><ul><b>Group</b> <tt>backgroundBorder</tt> (from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Contains a SoLineSet shape to draw background border of the legend.</i></ul></ul></ul></ul> <ul><ul><ul>}<br> <br> <b>Separator</b> <tt>boxSep</tt> (from PoLegend) {</ul></ul></ul> <ul><ul><ul><i>Contains properties and shapes to draw boxes of the legend.</i></ul></ul></ul> <ul><ul><ul><ul><b>AppearanceKit</b> <tt>boxApp </tt>(from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Specifies the appearance of boxes of the legend.</i></ul></ul></ul></ul> <ul><ul><ul><ul><b>Group</b> <tt>box</tt> (from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Contains if boxes are colored, a list of couple (SoMaterial, SoFaceSet), otherwise a list of SoFaceSet shapes, to draw boxes of the legend.</i></ul></ul></ul></ul> <ul><ul><ul>}<br> <br> <b>Separator</b> <tt>boxBorderSep</tt> (from PoLegend){</ul></ul></ul> <ul><ul><ul><i>Contains properties and shapes to draw borders of boxes of the legend.</i></ul></ul></ul> <ul><ul><ul><ul><b>AppearanceKit</b> <tt>boxBorderApp </tt>(from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Specifies the appearance of borders of boxes of the legend.</i></ul></ul></ul></ul> <ul><ul><ul><ul><b>Group</b> <tt>boxBorder </tt>(from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Contains a list of SoLineSet shapes to draw borders of boxes of the legend.</i></ul></ul></ul></ul> <ul><ul><ul>}</ul></ul></ul> <ul><ul><ul><b>Separator</b> <tt>titleSep</tt> (from PoLegend){</ul></ul></ul> <ul><ul><ul><i>Contains properties and shapes to draw title of the legend.</i></ul></ul></ul> <ul><ul><ul><ul><b>AppearanceKit</b> <tt>titleApp </tt>(from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Specifies the appearance of title of the legend. By default drawStyle.style=LINES. font.size and font.name are set when the kit is rebuilt.</i></ul></ul></ul></ul> <ul><ul><ul><ul><b>Group</b> <tt>title </tt>(from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Contains a SoAnnoText3 shape to draw title of the legend.</i></ul></ul></ul></ul> <ul><ul><ul>}<br> <br> <b>Separator</b> <tt>valueTextSep</tt> (from PoLegend){</ul></ul></ul> <ul><ul><ul><i>Contains properties and shapes to draw text of values of the legend.</i></ul></ul></ul> <ul><ul><ul><ul><b>AppearanceKit</b> <tt>valueTextApp </tt>(from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Specifies the appearance of text of values of the legend. By default drawStyle.style=LINES. font.size and font.name are set when the kit is rebuilt.</i></ul></ul></ul></ul> <ul><ul><ul><ul><b>Group</b> <tt>valueText</tt> (from PoLegend)</ul></ul></ul></ul> <ul><ul><ul><ul><i>Contains a list of SoAnnoText3 shapes to draw text of values of the legend.</i></ul></ul></ul></ul> <ul><ul><ul>}<br> <br> <b>Separator</b> <tt>lineSep</tt> {</ul></ul></ul> <ul><ul><ul><i>Contains properties and shapes to draw lines of the legend.</i></ul></ul></ul> <ul><ul><ul><ul><b>AppearanceKit</b> <tt>lineApp</tt></ul></ul></ul></ul> <ul><ul><ul><ul><i>Specifies the appearance of lines of the legend.</i></ul></ul></ul></ul> <ul><ul><ul><ul><b>Group</b> <tt>line</tt></ul></ul></ul></ul> <ul><ul><ul><ul><i>Contains if lines are colored, a list of couple (SoMaterial, SoLineSet), otherwise a list of SoLineSet shapes, to draw lines of the legend.</i></ul></ul></ul></ul> <ul><ul><ul>}<br> <br> <b>Separator</b> <tt>markerSep</tt> {</ul></ul></ul> <ul><ul><ul><i>Contains properties and shapes to draw markers of the legend.</i></ul></ul></ul> <ul><ul><ul><ul><b>AppearanceKit</b> <tt>markerApp</tt></ul></ul></ul></ul> <ul><ul><ul><ul><i>Specifies the appearance of markers of the legend. If one of the strings of markerString is not equal to ".", the font used for markers is the font set in font.name.</i></ul></ul></ul></ul> <ul><ul><ul><ul><b>Group</b> <tt>marker</tt></ul></ul></ul></ul> <ul><ul><ul><ul><i>Contains a list of SoText2 (markerString[i] != ".") or/and SoPointSet (markerString[i] = ".") shapes to draw the markers.</i></ul></ul></ul></ul> <ul><ul><ul>}</ul></ul></ul> <ul><ul>}</ul></ul> <ul>}</ul> <ul><ul><br> </ul></ul> </body> </html>

    • Field Detail

      • start

        public final SoSFVec2f start
        First point of one of the diagonals of the rectangle delimiting the legend.
      • end

        public final SoSFVec2f end
        Second point of the same diagonal.
      • item

        public final SoMFString item
        List of item names.
      • boxVisibility

        public final SoSFBool boxVisibility
        Visibility of the boxes.
      • boxColor

        public final SoMFColor boxColor
        List of colors for the boxes (boxColor.getNum() must be greater or equal to item.getNum(), otherwise all boxes get the same color which is the inherited color).
      • lineVisibility

        public final SoSFBool lineVisibility
        Visibility of the lines.
      • lineColor

        public final SoMFColor lineColor
        List of colors for lines.
      • lineSize

        public final SoMFFloat lineSize
        List of sizes for lines.
      • linePattern

        public final SoMFUShort linePattern
        Be careful: (lineColor or lineSize or linePattern).getNum() must be greater or equal to item.getNum() in order to take into account one of these fields, otherwise the inherited attributes will be used.
      • markerVisibility

        public final SoSFBool markerVisibility
        Visibility of the markers.
      • markerColor

        public final SoMFColor markerColor
        List of color for markers. Be careful: markerColor.getNum() must be greater or equal to item.getNum() in order to take into account one of this field, otherwise the inherited attributes will be used.
      • markerSize

        public final SoMFFloat markerSize
        List of sizes for markers. Be careful: markerSize.getNum() must be greater or equal to item.getNum() in order to take into account one of this field, otherwise the inherited attributes will be used.
      • markerString

        public final SoMFString markerString
        The markers are defined by a list of strings. For each string of markerString equals to ".", the marker is an SoPointSet shape, otherwise an SoText2 shape. Futhermore, only the first character of each string of markerString is used. To change the font of the text markers, set catalog part markerApp.font.name. Be careful, in this version, text markers are not vertically aligned.
    • Constructor Detail

      • PoItemLegend

        public PoItemLegend​(SbVec2f _start,
                            SbVec2f _end,
                            java.lang.String[] _item)
        Calls PoItemLegend(_start, _end, _item, (com.openinventor.inventor.SbColor[])null).
      • PoItemLegend

        public PoItemLegend​(SbVec2f _start,
                            SbVec2f _end,
                            java.lang.String[] _item,
                            SbColor[] _boxColor)
        Constructor.
      • PoItemLegend

        public PoItemLegend()
        Default constructor.