igeo.gui

## Class IGraphicMode

- java.lang.Object
- - igeo.gui.IGraphicMode

-     public class IGraphicMode
      extends java.lang.Object

  Class to specify graphic mode of either OpenGL mode / Java mode and wireframe / fill / transparent fill / wireframe+fill / wireframe+transparent fill.
  Author:
    Satoru Sugihara

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `IGraphicMode.GraphicType`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `boolean` | `fill`
    `IGraphicMode.GraphicType` | `graphicType`
    `boolean` | `light`
    `boolean` | `lightWireframe` if lightWireframe is false, wireframe doesn't use material in GL light mode
    `boolean` | `transparent`
    `boolean` | `transparentWireframe` if transparentWireframe is false, wireframe doesn't become transparent in transparent mode
    `boolean` | `wireframe`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `IGraphicMode()`
    `IGraphicMode(IGraphicMode.GraphicType g)`
    `IGraphicMode(IGraphicMode.GraphicType g, boolean enableFill, boolean enableWireframe, boolean enableTransparent)`
    `IGraphicMode(IGraphicMode m)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `disableLight()`
    `void` | `enableLight()`
    `static IGraphicMode[]` | `getAllModes()`
    `IGraphicMode.GraphicType` | `getGraphicType()`
    `boolean` | `isFill()`
    `boolean` | `isGL()`
    `boolean` | `isGraphic2D()` 2D graphic elements already flattened in 2D; need to be sorted and vary depending on view
    `boolean` | `isGraphic3D()` 3D graphic elements keeping 3D info; no need to be sorted due to depth buffer
    `boolean` | `isJ2D()`
    `boolean` | `isLight()`
    `boolean` | `isLightWireframe()`
    `boolean` | `isNone()`
    `boolean` | `isP3D()`
    `boolean` | `isTransparent()`
    `boolean` | `isTransparentWireframe()`
    `boolean` | `isWireframe()`
    `void` | `setDrawMode(boolean wireframe, boolean fill, boolean transparent)`
    `void` | `setGraphicType(IGraphicMode.GraphicType g)`
    `void` | `toggleFill()`
    `void` | `toggleTransparent()`
    `void` | `toggleWireframe()`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### graphicType

          public IGraphicMode.GraphicType graphicType

    - #### wireframe

          public boolean wireframe

    - #### fill

          public boolean fill

    - #### transparent

          public boolean transparent

    - #### transparentWireframe

          public boolean transparentWireframe

      if transparentWireframe is false, wireframe doesn't become transparent in transparent mode

    - #### lightWireframe

          public boolean lightWireframe

      if lightWireframe is false, wireframe doesn't use material in GL light mode

    - #### light

          public boolean light

  - ### Constructor Detail

    - #### IGraphicMode

          public IGraphicMode()

    - #### IGraphicMode

          public IGraphicMode(IGraphicMode.GraphicType g)

    - #### IGraphicMode

          public IGraphicMode(IGraphicMode.GraphicType g,
                              boolean enableFill,
                              boolean enableWireframe,
                              boolean enableTransparent)

    - #### IGraphicMode

          public IGraphicMode(IGraphicMode m)

  - ### Method Detail

    - #### setGraphicType

          public void setGraphicType(IGraphicMode.GraphicType g)

    - #### getGraphicType

          public IGraphicMode.GraphicType getGraphicType()

    - #### isGL

          public boolean isGL()

    - #### isJ2D

          public boolean isJ2D()

    - #### isP3D

          public boolean isP3D()

    - #### isGraphic3D

          public boolean isGraphic3D()

      3D graphic elements keeping 3D info; no need to be sorted due to depth buffer

    - #### isGraphic2D

          public boolean isGraphic2D()

      2D graphic elements already flattened in 2D; need to be sorted and vary depending on view

    - #### isWireframe

          public boolean isWireframe()

    - #### isFill

          public boolean isFill()

    - #### isTransparent

          public boolean isTransparent()

    - #### isNone

          public boolean isNone()

    - #### isLight

          public boolean isLight()

    - #### isTransparentWireframe

          public boolean isTransparentWireframe()

    - #### isLightWireframe

          public boolean isLightWireframe()

    - #### setDrawMode

          public void setDrawMode(boolean wireframe,
                                  boolean fill,
                                  boolean transparent)

    - #### toggleWireframe

          public void toggleWireframe()

    - #### toggleFill

          public void toggleFill()

    - #### toggleTransparent

          public void toggleTransparent()

    - #### enableLight

          public void enableLight()

    - #### disableLight

          public void disableLight()

    - #### getAllModes

          public static IGraphicMode[] getAllModes()