# Hierarchy For All Packages

Package Hierarchies:

- igeo,
- igeo.gui,
- igeo.io,
- igeo.p

## Class Hierarchy

- java.lang.Object
  - java.util.AbstractCollection<E> (implements java.util.Collection<E>)
    - java.util.AbstractList<E> (implements java.util.List<E>)
      - java.util.ArrayList<E> (implements java.lang.Cloneable, java.util.List<E>, java.util.RandomAccess, java.io.Serializable)
        - igeo.io.IRhino3dm.BrepEdgeArray
        - igeo.io.IRhino3dm.BrepFaceArray
        - igeo.io.IRhino3dm.BrepLoopArray
        - igeo.io.IRhino3dm.BrepTrimArray
        - igeo.io.IRhino3dm.BrepVertexArray
        - igeo.io.IRhino3dm.CurveArray
        - igeo.io.IRhino3dm.Point2Array
        - igeo.io.IRhino3dm.PointArray
          - igeo.io.IRhino3dm.Polyline
        - igeo.io.IRhino3dm.SurfaceArray
  - java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable)
    - java.awt.Container
      - java.awt.Panel (implements javax.accessibility.Accessible)
        - java.applet.Applet
          - igeo.IAppletGL2 (implements java.lang.Runnable)
          - processing.core.PApplet (implements java.awt.event.FocusListener, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, processing.core.PConstants, java.lang.Runnable)
            - igeo.p.PIApplet
      - java.awt.Window (implements javax.accessibility.Accessible)
        - java.awt.Dialog
          - javax.swing.JDialog (implements javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants)
            - igeo.gui.IPanel.AIScaleDialog (implements java.awt.event.ActionListener)
    - igeo.gui.IParameterViewer
  - javax.swing.filechooser.FileFilter
    - igeo.gui.IFileFilter (implements java.io.FilenameFilter)
  - igeo.io.I3DXML
  - igeo.io.I3DXML.ColorBufferType
  - igeo.io.I3DXML.ColorType
  - igeo.io.I3DXML.FaceGPType
  - igeo.io.I3DXML.FaceSetType
  - igeo.io.I3DXML.I3DXMLNode
    - igeo.io.I3DXML.Instance3D
    - igeo.io.I3DXML.InstanceRep
    - igeo.io.I3DXML.Reference3D
    - igeo.io.I3DXML.ReferenceRep
  - igeo.io.I3DXML.LineAttributesType
  - igeo.io.I3DXML.MaterialApplicationType
  - igeo.io.I3DXML.Matrix4x3
  - igeo.io.I3DXML.PointAttributesType
  - igeo.io.I3DXML.PolygonalLODType
  - igeo.io.I3DXML.PolylineGPType
  - igeo.io.I3DXML.PolylineSetType
  - igeo.io.I3DXML.RepresentationDocument
    - igeo.io.I3DXML.XMLRepresentationDocument
  - igeo.io.I3DXML.SurfaceAttributesType
  - igeo.io.I3DXML.TextureCoordinatesBufferType
  - igeo.io.I3DXML.VertexBufferType
  - igeo.io.I3DXML.VisualizationRepType
    - igeo.io.I3DXML.BagRepType
    - igeo.io.I3DXML.PolygonalRepType
  - igeo.io.I3DXMLImporter
  - igeo.io.IAIExporter
  - igeo.io.IAIExporter.IFaceViewSort (implements igeo.IComparator<T>)
  - igeo.io.IAIExporter.IViewSort (implements igeo.IComparator<T>)
  - igeo.IApplicationGL2 (implements javax.media.opengl.GLEventListener)
  - igeo.IAttribute
  - igeo.IBounds
  - igeo.IBSplineBasisFunction
  - igeo.IColor
  - igeo.gui.IComponent
    - igeo.gui.IPanel (implements igeo.gui.IPanelI)
      - igeo.gui.IScreenTogglePanel
        - igeo.gui.IGridPanel
    - igeo.gui.IPaneLight (implements igeo.gui.IPane)
  - igeo.IConfig
  - igeo.ICurveCache
  - igeo.ICurveCreator
  - igeo.IDelaunay
  - igeo.IDelaunay2D
  - igeo.IDelaunay2D.EdgeCounter
  - igeo.IDelaunay2D.FaceIndex
  - igeo.IDirectionalComparator (implements igeo.IComparator<T>)
  - igeo.IDistanceComparator (implements igeo.IComparator<T>)
  - igeo.gui.IDoubleBuffer
  - igeo.IDynamicsBase (implements igeo.IDynamics)
    - igeo.IAgentTracker
    - igeo.ILineAgentGeo
    - igeo.IParticleDirectionLink
    - igeo.IParticleDistanceLink
    - igeo.IParticleGeo (implements igeo.IParticleI, igeo.IVecI)
      - igeo.IBoidGeo (implements igeo.IBoidI)
      - igeo.IParticleOnCurveGeo (implements igeo.IParticleOnCurveI)
      - igeo.IParticleOnMeshGeo
      - igeo.IParticleOnPlaneGeo
      - igeo.IParticleOnSurfaceGeo (implements igeo.IParticleOnSurfaceI)
    - igeo.ISpacingEqualizer (implements igeo.ITensionI)
    - igeo.ISpring (implements igeo.ISpringI)
    - igeo.IStick
    - igeo.IStraightener (implements igeo.IStraightenerI)
    - igeo.IString
    - igeo.ITensileNet.IParticleCoupler
    - igeo.ITension (implements igeo.ITensionI)
    - igeo.ITensionOnCurve (implements igeo.ITensionI)
    - igeo.ITrajectoryGeo (implements igeo.ITrajectoryI)
  - igeo.IDynamicServer (implements java.lang.Runnable)
  - igeo.Ie (implements igeo.ISwitchE)
  - igeo.IEdge
  - igeo.IErr
  - igeo.io.IEsri
  - igeo.io.IEsri.AttributeField
  - igeo.io.IEsri.AttributeHeader
  - igeo.io.IEsri.Attributes
  - igeo.io.IEsri.Shape
  - igeo.IFace
  - igeo.IFieldGeo (implements igeo.IFieldI)
    - igeo.I2DCurveFieldGeo (implements igeo.I2DFieldI)
    - igeo.I2DMapFieldGeo (implements igeo.I2DFieldI)
    - igeo.I2DSurfaceFieldGeo (implements igeo.I2DFieldI)
      - igeo.I2DSurfaceNormalField.I2DSurfaceNormalFieldGeo
      - igeo.I2DSurfacePositionField.I2DSurfacePositionFieldGeo
      - igeo.I2DSurfaceSlopeField.I2DSurfaceSlopeFieldGeo
      - igeo.I2DSurfaceUTangentField.I2DSurfaceUTangentFieldGeo
      - igeo.I2DSurfaceVTangentField.I2DSurfaceVTangentFieldGeo
    - igeo.ICurveFieldGeo (implements igeo.I3DFieldI)
      - igeo.ICurveAttractorField.ICurveAttractorFieldGeo
      - igeo.ICurveCurlField.ICurveCurlFieldGeo
      - igeo.ICurvePositionField.ICurvePositionFieldGeo
      - igeo.ICurveTangentField.ICurveTangentFieldGeo
    - igeo.IMeshFieldGeo (implements igeo.I3DFieldI)
      - igeo.ILinkedNodeMeshField.ILinkedNodeMeshFieldGeo
      - igeo.IMeshNormalField.IMeshNormalFieldGeo
    - igeo.IPlaneFieldGeo (implements igeo.I3DFieldI)
      - igeo.IPlaneAttractorField.IPlaneAttractorFieldGeo
    - igeo.IPointCloudFieldGeo (implements igeo.I3DFieldI)
    - igeo.IPointFieldGeo (implements igeo.I3DFieldI)
      - igeo.IAttractorGeo
      - igeo.IPlanarAttractor.IPlanarAttractorGeo
      - igeo.IPointCurlFieldGeo
    - igeo.ISurfaceFieldGeo (implements igeo.I3DFieldI)
      - igeo.ISurfaceAttractorField.ISurfaceAttractorFieldGeo
      - igeo.ISurfaceNormalField.ISurfaceNormalFieldGeo
      - igeo.ISurfacePositionField.ISurfacePositionFieldGeo
      - igeo.ISurfaceSlopeField.ISurfaceSlopeFieldGeo
      - igeo.ISurfaceUTangentField.ISurfaceUTangentFieldGeo
      - igeo.ISurfaceVTangentField.ISurfaceVTangentFieldGeo
  - igeo.IFieldMesh
  - igeo.IFieldMesh.EdgeVertex
  - igeo.IFieldMesh.VertexGrid
  - igeo.IFoldableStrip (implements igeo.IFoldable)
  - igeo.IG (implements igeo.IServerI)
  - igeo.IGaussDecay (implements igeo.IDecay)
  - igeo.gui.IGraphicMode
  - igeo.IGraphicObject (implements igeo.IGraphicI, igeo.ISubobject)
    - igeo.gui.IBrepGraphicGL
    - igeo.gui.ICurveGraphicGL
    - igeo.gui.IMeshGraphicGL
    - igeo.gui.IPointGraphic
    - igeo.gui.ISurfaceGraphicFillGL
    - igeo.gui.ISurfaceGraphicGL
    - igeo.gui.ISurfaceGraphicWireframeGL
    - igeo.gui.ITextGraphicGL
    - igeo.gui.IVectorGraphic
    - igeo.gui.IVolumeGraphicGL
  - igeo.IGraphicServer
  - igeo.gui.IGraphicsGL2 (implements igeo.gui.IGraphicsGL)
  - igeo.gui.IGraphicsJ2D (implements igeo.gui.IGraphics2D)
  - igeo.gui.IImageLoader (implements java.awt.image.ImageObserver)
  - igeo.IIn
  - igeo.io.IInputWrapper
    - igeo.p.PIInput
  - igeo.io.IIO
  - igeo.gui.IIsoparmGraphic
  - igeo.gui.IKeyEvent
  - igeo.ILinearDecay (implements igeo.IDecay)
  - igeo.IMap
    - igeo.IAddMap
    - igeo.IConstantMap
    - igeo.IDoubleMap
      - igeo.IImageMap
        - igeo.IImageSequenceMap
    - igeo.IInvertMap
    - igeo.IMaxMap
    - igeo.IMinMap
    - igeo.IMultiplyMap
    - igeo.IScaleMap
    - igeo.ISubMap
    - igeo.ISubtractMap
    - igeo.ISurfaceDensityMap
    - igeo.ISurfaceDepthMap
      - igeo.ISurfaceZDepthMap
    - igeo.IUFlipMap
    - igeo.IULinearMap
    - igeo.IUSineMap
    - igeo.IUStripeShiftMap
    - igeo.IVFlipMap
    - igeo.IVLinearMap
    - igeo.IVSineMap
    - igeo.IVStripeShiftMap
  - igeo.IMaterial
    - igeo.IBasicMaterial
  - igeo.IMatrix (implements igeo.IMatrixI)
    - igeo.IMatrix2 (implements igeo.IMatrix2I)
    - igeo.IMatrix3 (implements igeo.IMatrix3I)
    - igeo.IMatrix4 (implements igeo.IMatrix4I)
  - igeo.IMeshCreator
  - igeo.IMeshType
  - igeo.gui.IMouseButton
  - igeo.gui.IMouseEvent
  - igeo.gui.IMouseWheelEvent
  - igeo.gui.INavigator
  - igeo.INoDecay (implements igeo.IDecay)
  - java.io.InputStream (implements java.io.Closeable)
    - java.io.FilterInputStream
      - java.util.zip.InflaterInputStream
        - java.util.zip.ZipInputStream
          - igeo.io.I3DXMLImporter.ZipInputStreamWrapper
  - igeo.IObject
    - igeo.IAgent (implements igeo.IDynamics)
      - igeo.IField (implements igeo.IFieldI)
        - igeo.I2DField (implements igeo.I2DFieldI)
          - igeo.I2DMapField
          - igeo.I2DSurfaceNormalField
          - igeo.I2DSurfacePositionField
          - igeo.I2DSurfaceSlopeField
          - igeo.I2DSurfaceUTangentField
          - igeo.I2DSurfaceVTangentField
        - igeo.I3DField (implements igeo.I3DFieldI)
          - igeo.IAttractor
          - igeo.ICompoundField
          - igeo.ICurveAttractorField
          - igeo.ICurveCurlField
          - igeo.ICurvePositionField
          - igeo.ICurveTangentField
          - igeo.IGravity
          - igeo.ILinkedNodeMeshField
          - igeo.IMeshNormalField
          - igeo.IPlanarAttractor
          - igeo.IPlaneAttractorField
          - igeo.IPointCurlField
          - igeo.ISurfaceAttractorField
          - igeo.ISurfaceNormalField
          - igeo.ISurfacePositionField
          - igeo.ISurfaceSlopeField
          - igeo.ISurfaceUTangentField
          - igeo.ISurfaceVTangentField
        - igeo.IScalarField (implements igeo.IScalarFieldI)
      - igeo.IFieldVisualizer
      - igeo.ILineAgent
      - igeo.ILinkedNodeMeshAgent
      - igeo.IMeshAgent
      - igeo.IPointAgent (implements igeo.IVecI)
        - igeo.IDataAgent<T,S>
          - igeo.ILinkedDataAgent<T>
            - igeo.ILinkedScalarAgent
            - igeo.ILinkedVec2Agent
            - igeo.ILinkedVecAgent
        - igeo.IParticle (implements igeo.IParticleI)
          - igeo.IBoid (implements igeo.IBoidI)
            - igeo.IBoidTrajectory (implements igeo.ITrajectoryI)
          - igeo.IParticleAgent
          - igeo.IParticleTrajectory (implements igeo.ITrajectoryI)
        - igeo.IParticleOnCurve (implements igeo.IParticleOnCurveI)
          - igeo.IParticleOnCurveAgent
        - igeo.IParticleOnPlane (implements igeo.IParticleI)
        - igeo.IParticleOnSurface (implements igeo.IParticleOnSurfaceI)
      - igeo.IWall
        - igeo.ITriangleWall
    - igeo.ICurveR (implements igeo.ICurveI)
    - igeo.IGeometry (implements igeo.ITransformable)
      - igeo.IBrep (implements igeo.ITransformable)
        - igeo.IBox
      - igeo.ICurve (implements igeo.ICurveI)
        - igeo.IArc
        - igeo.ICircle
        - igeo.ISpringLine (implements igeo.IDynamics, igeo.ISpringI)
        - igeo.IStickLine (implements igeo.IDynamics)
        - igeo.IStraightenerCurve (implements igeo.IStraightenerI)
        - igeo.IStringLine (implements igeo.IDynamics)
        - igeo.ITensionLine (implements igeo.IDynamics, igeo.ITensionI)
        - igeo.ITensionLineOnCurve (implements igeo.ITensionI)
      - igeo.IMesh (implements igeo.IMeshI)
        - igeo.ICollidableMesh
      - igeo.IPoint (implements igeo.IVecI)
      - igeo.ISurface (implements igeo.ISurfaceI)
        - igeo.ICylinder
        - igeo.ISphere
      - igeo.IText
      - igeo.IVolume (implements igeo.IVolumeI)
    - igeo.ILayer
    - igeo.IMeshR (implements igeo.IMeshI)
    - igeo.IPointR (implements igeo.IVecI)
    - igeo.IPolycurve
    - igeo.ISurfaceR (implements igeo.ISurfaceI)
    - igeo.IVectorObject (implements igeo.IVecI)
  - igeo.io.IObjFileExporter
  - igeo.io.IObjFileImporter
  - igeo.io.IObjFileImporter.Entity
    - igeo.io.IObjFileImporter.AmbientColor
    - igeo.io.IObjFileImporter.BasisMatrix
    - igeo.io.IObjFileImporter.BevelInterpolation
    - igeo.io.IObjFileImporter.ColorInterpolation
    - igeo.io.IObjFileImporter.Comment
    - igeo.io.IObjFileImporter.Connect
    - igeo.io.IObjFileImporter.Curve
    - igeo.io.IObjFileImporter.Curve2D
    - igeo.io.IObjFileImporter.CurveApproximationTechnique
    - igeo.io.IObjFileImporter.CurveType
    - igeo.io.IObjFileImporter.Degree
    - igeo.io.IObjFileImporter.DiffuseColor
    - igeo.io.IObjFileImporter.DissolveInterpolation
    - igeo.io.IObjFileImporter.EndStatement
    - igeo.io.IObjFileImporter.Face
    - igeo.io.IObjFileImporter.GeometricVertex
    - igeo.io.IObjFileImporter.GroupName
    - igeo.io.IObjFileImporter.IlluminationMode
    - igeo.io.IObjFileImporter.InnerTrimmingLoop
    - igeo.io.IObjFileImporter.LevelOfDetail
    - igeo.io.IObjFileImporter.Line
    - igeo.io.IObjFileImporter.Material
    - igeo.io.IObjFileImporter.MaterialLibrary
    - igeo.io.IObjFileImporter.MaterialName
    - igeo.io.IObjFileImporter.MergingGroup
    - igeo.io.IObjFileImporter.ObjectName
    - igeo.io.IObjFileImporter.OuterTrimmingLoop
    - igeo.io.IObjFileImporter.Parameter
    - igeo.io.IObjFileImporter.ParameterSpaceVertex
    - igeo.io.IObjFileImporter.Point
    - igeo.io.IObjFileImporter.RayTracing
    - igeo.io.IObjFileImporter.ShadowCasting
    - igeo.io.IObjFileImporter.Shininess
    - igeo.io.IObjFileImporter.SmoothingGroup
    - igeo.io.IObjFileImporter.SpecialCurve
    - igeo.io.IObjFileImporter.SpecialPoint
    - igeo.io.IObjFileImporter.SpecularColor
    - igeo.io.IObjFileImporter.StepSize
    - igeo.io.IObjFileImporter.Surface
    - igeo.io.IObjFileImporter.SurfaceApproximationTechnique
    - igeo.io.IObjFileImporter.TextureMap
    - igeo.io.IObjFileImporter.TextureVertex
    - igeo.io.IObjFileImporter.Transparency
      - igeo.io.IObjFileImporter.Transparency2
    - igeo.io.IObjFileImporter.VertexNormal
  - igeo.io.IObjFileImporter.EntityData
    - igeo.io.IObjFileImporter.AmbientColor.Data
    - igeo.io.IObjFileImporter.BasisMatrix.Data
    - igeo.io.IObjFileImporter.BevelInterpolation.Data
    - igeo.io.IObjFileImporter.ColorInterpolation.Data
    - igeo.io.IObjFileImporter.Connect.Data
    - igeo.io.IObjFileImporter.CurveApproximationTechnique.Data
    - igeo.io.IObjFileImporter.Degree.Data
    - igeo.io.IObjFileImporter.DiffuseColor.Data
    - igeo.io.IObjFileImporter.DissolveInterpolation.Data
    - igeo.io.IObjFileImporter.EndStatement.Data
    - igeo.io.IObjFileImporter.Face.Data
    - igeo.io.IObjFileImporter.GeometricVertex.Data
    - igeo.io.IObjFileImporter.GroupName.Data
    - igeo.io.IObjFileImporter.IlluminationMode.Data
    - igeo.io.IObjFileImporter.InnerTrimmingLoop.Data
    - igeo.io.IObjFileImporter.LevelOfDetail.Data
    - igeo.io.IObjFileImporter.Line.Data
    - igeo.io.IObjFileImporter.Material.Data
    - igeo.io.IObjFileImporter.MaterialLibrary.Data
    - igeo.io.IObjFileImporter.MaterialName.Data
    - igeo.io.IObjFileImporter.MergingGroup.Data
    - igeo.io.IObjFileImporter.ObjectName.Data
    - igeo.io.IObjFileImporter.OuterTrimmingLoop.Data
    - igeo.io.IObjFileImporter.Parameter.Data
    - igeo.io.IObjFileImporter.ParameterSpaceVertex.Data
    - igeo.io.IObjFileImporter.ParametricGeometryData
      - igeo.io.IObjFileImporter.Curve.Data
      - igeo.io.IObjFileImporter.Curve2D.Data
      - igeo.io.IObjFileImporter.CurveType.Data
      - igeo.io.IObjFileImporter.Point.Data
      - igeo.io.IObjFileImporter.Surface.Data
    - igeo.io.IObjFileImporter.RayTracing.Data
    - igeo.io.IObjFileImporter.ShadowCasting.Data
    - igeo.io.IObjFileImporter.Shininess.Data
    - igeo.io.IObjFileImporter.SmoothingGroup.Data
    - igeo.io.IObjFileImporter.SpecialCurve.Data
    - igeo.io.IObjFileImporter.SpecialPoint.Data
    - igeo.io.IObjFileImporter.SpecularColor.Data
    - igeo.io.IObjFileImporter.StepSize.Data
    - igeo.io.IObjFileImporter.SurfaceApproximationTechnique.Data
    - igeo.io.IObjFileImporter.TextureMap.Data
    - igeo.io.IObjFileImporter.TextureVertex.Data
    - igeo.io.IObjFileImporter.Transparency.Data
    - igeo.io.IObjFileImporter.VertexNormal.Data
  - igeo.IOrient
  - igeo.IOut
  - igeo.gui.IPanel.FileAndFilterIndex
  - igeo.IParameterObject (implements igeo.ISubobject)
    - igeo.IBool (implements igeo.IBoolI, igeo.IEntityParameter)
    - igeo.IBoolR (implements igeo.IBoolI, igeo.IReferenceParameter)
    - igeo.IBoolR.And (implements igeo.IBoolOp)
    - igeo.IBoolR.Eq (implements igeo.IBoolOp)
    - igeo.IBoolR.Not (implements igeo.IBoolOp)
    - igeo.IBoolR.Or (implements igeo.IBoolOp)
    - igeo.ICurveR.IsClosed (implements igeo.IBoolOp)
    - igeo.ICurveR.Pt (implements igeo.IVecOp)
    - igeo.ICurveR.Tan (implements igeo.IVecOp)
    - igeo.ICurveR.U (implements igeo.IDoubleOp)
    - igeo.ICurveR.U2 (implements igeo.IDoubleOp)
    - igeo.IDouble (implements igeo.IDoubleI, igeo.IEntityParameter)
    - igeo.IDoubleR (implements igeo.IDoubleI, igeo.IReferenceParameter)
    - igeo.IDoubleR.Abs (implements igeo.IDoubleOp)
    - igeo.IDoubleR.ACos (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Add (implements igeo.IDoubleOp)
    - igeo.IDoubleR.ASin (implements igeo.IDoubleOp)
    - igeo.IDoubleR.ATan (implements igeo.IDoubleOp)
    - igeo.IDoubleR.ATan2 (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Cos (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Deg (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Div (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Eq (implements igeo.IBoolOp)
    - igeo.IDoubleR.Exp (implements igeo.IDoubleOp)
    - igeo.IDoubleR.FromInt (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Inv (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Log (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Mul (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Neg (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Pow (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Rad (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Sin (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Sq (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Sqrt (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Sub (implements igeo.IDoubleOp)
    - igeo.IDoubleR.Tan (implements igeo.IDoubleOp)
    - igeo.IInteger (implements igeo.IEntityParameter, igeo.IIntegerI)
    - igeo.IIntegerR (implements igeo.IIntegerI, igeo.IReferenceParameter)
    - igeo.IIntegerR.Add (implements igeo.IIntegerOp)
    - igeo.IIntegerR.Div (implements igeo.IIntegerOp)
    - igeo.IIntegerR.Eq (implements igeo.IBoolOp)
    - igeo.IIntegerR.FromDouble (implements igeo.IIntegerOp)
    - igeo.IIntegerR.Mod (implements igeo.IIntegerOp)
    - igeo.IIntegerR.Mul (implements igeo.IIntegerOp)
    - igeo.IIntegerR.Neg (implements igeo.IIntegerOp)
    - igeo.IIntegerR.Sub (implements igeo.IIntegerOp)
    - igeo.IMeshGeo (implements igeo.IMeshI)
    - igeo.INurbsGeo
      - igeo.ICurveGeo (implements igeo.ICurveI, igeo.IEntityParameter)
        - igeo.IArcGeo
        - igeo.ICircleGeo
        - igeo.ITrimCurve (implements igeo.ITrimCurveI)
      - igeo.ISurfaceGeo (implements igeo.IEntityParameter, igeo.ISurfaceI)
      - igeo.IVolumeGeo (implements igeo.IEntityParameter, igeo.IVolumeI)
    - igeo.ISurfaceR.IsFlat (implements igeo.IBoolOp)
    - igeo.ISurfaceR.IsUClosed (implements igeo.IBoolOp)
    - igeo.ISurfaceR.IsVClosed (implements igeo.IBoolOp)
    - igeo.ISurfaceR.Normal (implements igeo.IVecOp)
    - igeo.ISurfaceR.Pt (implements igeo.IVecOp)
    - igeo.ISurfaceR.UTan (implements igeo.IVecOp)
    - igeo.ISurfaceR.UV (implements igeo.IVec2Op)
    - igeo.ISurfaceR.UV2 (implements igeo.IVec2Op)
    - igeo.ISurfaceR.VTan (implements igeo.IVecOp)
    - igeo.ITextGeo (implements igeo.ITransformable)
    - igeo.IVec (implements igeo.IEntityParameter, igeo.IVecI)
      - igeo.IVec4 (implements igeo.IEntityParameter, igeo.IVec4I)
    - igeo.IVec2 (implements igeo.IEntityParameter, igeo.IVec2I)
      - igeo.gui.IPolyline2D.Intersection
    - igeo.IVec2f (implements igeo.IVec2I)
    - igeo.IVec2R (implements igeo.IReferenceParameter, igeo.IVec2I)
    - igeo.IVec2R.Add (implements igeo.IVec2Op)
    - igeo.IVec2R.Angle (implements igeo.IDoubleOp)
    - igeo.IVec2R.Cross (implements igeo.IVecOp)
    - igeo.IVec2R.Dist (implements igeo.IDoubleOp)
    - igeo.IVec2R.Dist2 (implements igeo.IDoubleOp)
    - igeo.IVec2R.Div (implements igeo.IVec2Op)
    - igeo.IVec2R.Dot (implements igeo.IDoubleOp)
    - igeo.IVec2R.Eq (implements igeo.IBoolOp)
    - igeo.IVec2R.EqX (implements igeo.IBoolOp)
    - igeo.IVec2R.EqY (implements igeo.IBoolOp)
    - igeo.IVec2R.FromX (implements igeo.IVec2Op)
    - igeo.IVec2R.FromXY (implements igeo.IVec2Op)
    - igeo.IVec2R.FromY (implements igeo.IVec2Op)
    - igeo.IVec2R.Len (implements igeo.IDoubleOp)
    - igeo.IVec2R.Len2 (implements igeo.IDoubleOp)
    - igeo.IVec2R.Mul (implements igeo.IVec2Op)
    - igeo.IVec2R.Neg (implements igeo.IVec2Op)
    - igeo.IVec2R.Ortho (implements igeo.IVec2Op)
    - igeo.IVec2R.Ref (implements igeo.IVec2Op)
    - igeo.IVec2R.Rot (implements igeo.IVec2Op)
    - igeo.IVec2R.Scale1d (implements igeo.IVec2Op)
    - igeo.IVec2R.SetLen (implements igeo.IVec2Op)
    - igeo.IVec2R.Shear (implements igeo.IVec2Op)
    - igeo.IVec2R.Sub (implements igeo.IVec2Op)
    - igeo.IVec2R.ToVec2 (implements igeo.IVec2Op)
    - igeo.IVec2R.ToVec3 (implements igeo.IVecOp)
    - igeo.IVec2R.ToVec4 (implements igeo.IVec4Op)
    - igeo.IVec2R.Transform2 (implements igeo.IVec2Op)
    - igeo.IVec2R.Transform3 (implements igeo.IVec2Op)
    - igeo.IVec2R.TransformVec2 (implements igeo.IVec2Op)
    - igeo.IVec2R.TransformVec3 (implements igeo.IVec2Op)
    - igeo.IVec2R.Unit (implements igeo.IVec2Op)
    - igeo.IVec2R.X (implements igeo.IDoubleOp)
    - igeo.IVec2R.Y (implements igeo.IDoubleOp)
    - igeo.IVec4R (implements igeo.IReferenceParameter, igeo.IVec4I, igeo.IVecI)
    - igeo.IVec4R.Add (implements igeo.IVec4Op)
    - igeo.IVec4R.Cross (implements igeo.IVec4Op)
    - igeo.IVec4R.Dist (implements igeo.IDoubleOp)
    - igeo.IVec4R.Dist2 (implements igeo.IDoubleOp)
    - igeo.IVec4R.Div (implements igeo.IVec4Op)
    - igeo.IVec4R.Eq (implements igeo.IBoolOp)
    - igeo.IVec4R.EqW (implements igeo.IBoolOp)
    - igeo.IVec4R.EqX (implements igeo.IBoolOp)
    - igeo.IVec4R.EqY (implements igeo.IBoolOp)
    - igeo.IVec4R.EqZ (implements igeo.IBoolOp)
    - igeo.IVec4R.FromVec (implements igeo.IVec4Op)
    - igeo.IVec4R.FromVecAndW (implements igeo.IVec4Op)
    - igeo.IVec4R.FromW (implements igeo.IVec4Op)
    - igeo.IVec4R.FromX (implements igeo.IVec4Op)
    - igeo.IVec4R.FromXYZ (implements igeo.IVec4Op)
    - igeo.IVec4R.FromXYZW (implements igeo.IVec4Op)
    - igeo.IVec4R.FromY (implements igeo.IVec4Op)
    - igeo.IVec4R.FromZ (implements igeo.IVec4Op)
    - igeo.IVec4R.Mul (implements igeo.IVec4Op)
    - igeo.IVec4R.Neg (implements igeo.IVec4Op)
    - igeo.IVec4R.Ref (implements igeo.IVec4Op)
    - igeo.IVec4R.Rot (implements igeo.IVec4Op)
    - igeo.IVec4R.Rot2 (implements igeo.IVec4Op)
    - igeo.IVec4R.Scale1d (implements igeo.IVec4Op)
    - igeo.IVec4R.SetLen (implements igeo.IVec4Op)
    - igeo.IVec4R.Shear (implements igeo.IVec4Op)
    - igeo.IVec4R.Sub (implements igeo.IVec4Op)
    - igeo.IVec4R.ToVec (implements igeo.IVecOp)
    - igeo.IVec4R.ToVec2 (implements igeo.IVec2Op)
    - igeo.IVec4R.ToVec2WithAxis (implements igeo.IVec2Op)
    - igeo.IVec4R.ToVec2WithAxisAndOrigin (implements igeo.IVec2Op)
    - igeo.IVec4R.ToVec2WithProjection (implements igeo.IVec2Op)
    - igeo.IVec4R.Transform3 (implements igeo.IVec4Op)
    - igeo.IVec4R.Transform4 (implements igeo.IVec4Op)
    - igeo.IVec4R.TransformVec3 (implements igeo.IVec4Op)
    - igeo.IVec4R.TransformVec4 (implements igeo.IVec4Op)
    - igeo.IVec4R.Unit (implements igeo.IVec4Op)
    - igeo.IVec4R.W (implements igeo.IDoubleOp)
    - igeo.IVec4R.X (implements igeo.IDoubleOp)
    - igeo.IVec4R.Y (implements igeo.IDoubleOp)
    - igeo.IVec4R.Z (implements igeo.IDoubleOp)
    - igeo.IVecR (implements igeo.IReferenceParameter, igeo.IVecI)
    - igeo.IVecR.Add (implements igeo.IVecOp)
    - igeo.IVecR.Angle (implements igeo.IDoubleOp)
    - igeo.IVecR.Cross (implements igeo.IVecOp)
    - igeo.IVecR.Dist (implements igeo.IDoubleOp)
    - igeo.IVecR.Dist2 (implements igeo.IDoubleOp)
    - igeo.IVecR.Div (implements igeo.IVecOp)
    - igeo.IVecR.Dot (implements igeo.IDoubleOp)
    - igeo.IVecR.Eq (implements igeo.IBoolOp)
    - igeo.IVecR.EqX (implements igeo.IBoolOp)
    - igeo.IVecR.EqY (implements igeo.IBoolOp)
    - igeo.IVecR.EqZ (implements igeo.IBoolOp)
    - igeo.IVecR.FromX (implements igeo.IVecOp)
    - igeo.IVecR.FromXYZ (implements igeo.IVecOp)
    - igeo.IVecR.FromY (implements igeo.IVecOp)
    - igeo.IVecR.FromZ (implements igeo.IVecOp)
    - igeo.IVecR.Len (implements igeo.IDoubleOp)
    - igeo.IVecR.Len2 (implements igeo.IDoubleOp)
    - igeo.IVecR.Mul (implements igeo.IVecOp)
    - igeo.IVecR.Neg (implements igeo.IVecOp)
    - igeo.IVecR.Ref (implements igeo.IVecOp)
    - igeo.IVecR.Rot (implements igeo.IVecOp)
    - igeo.IVecR.Rot2 (implements igeo.IVecOp)
    - igeo.IVecR.Scale1d (implements igeo.IVecOp)
    - igeo.IVecR.SetLen (implements igeo.IVecOp)
    - igeo.IVecR.Shear (implements igeo.IVecOp)
    - igeo.IVecR.Sub (implements igeo.IVecOp)
    - igeo.IVecR.ToVec2 (implements igeo.IVec2Op)
    - igeo.IVecR.ToVec2WithAxis (implements igeo.IVec2Op)
    - igeo.IVecR.ToVec2WithAxisAndOrigin (implements igeo.IVec2Op)
    - igeo.IVecR.ToVec2WithProjection (implements igeo.IVec2Op)
    - igeo.IVecR.Transform3 (implements igeo.IVecOp)
    - igeo.IVecR.Transform4 (implements igeo.IVecOp)
    - igeo.IVecR.TransformVec3 (implements igeo.IVecOp)
    - igeo.IVecR.TransformVec4 (implements igeo.IVecOp)
    - igeo.IVecR.Unit (implements igeo.IVecOp)
    - igeo.IVecR.X (implements igeo.IDoubleOp)
    - igeo.IVecR.Y (implements igeo.IDoubleOp)
    - igeo.IVecR.Z (implements igeo.IDoubleOp)
  - igeo.gui.IParameterViewer.IParameterGraphic
  - igeo.IPiecewiseFunction (implements igeo.IFunction)
    - igeo.IPiecewisePolynomialFunction
      - igeo.IBSplineBasisFunction.IBSplineBasisSubFunction
  - igeo.IPolycurveGeo (implements igeo.ICurveI)
  - igeo.gui.IPolyline
  - igeo.gui.IPolyline2D
  - igeo.gui.IPolyline2D.XComparator (implements igeo.IComparator<T>)
  - igeo.gui.IPolyline2D.YComparator (implements igeo.IComparator<T>)
  - igeo.IPolynomialFunction (implements igeo.IFunction)
  - igeo.Ir (implements igeo.ISwitchR)
  - igeo.IRadialComparator (implements igeo.IComparator<T>)
  - igeo.IRand
    - igeo.IRandom
  - igeo.io.IRhino3dm
    - igeo.io.IRhino3dmExporter
    - igeo.io.IRhino3dmImporter
  - igeo.io.IRhino3dm.Annotation2Text
  - igeo.io.IRhino3dm.BoundingBox
  - igeo.io.IRhino3dm.BrepTrimPoint
  - igeo.io.IRhino3dm.Chunk
    - igeo.io.IRhino3dm.ChunkTable
  - igeo.io.IRhino3dm.Circle
    - igeo.io.IRhino3dm.Arc
  - igeo.io.IRhino3dm.ClassRegistry
  - igeo.io.IRhino3dm.DisplayMaterialRef
  - igeo.io.IRhino3dm.Interval
  - igeo.io.IRhino3dm.Line
  - igeo.io.IRhino3dm.MappingChannel
  - igeo.io.IRhino3dm.MappingTag
  - igeo.io.IRhino3dm.MaterialRef
  - igeo.io.IRhino3dm.MeshCurvatureStats
  - igeo.io.IRhino3dm.MeshFace
  - igeo.io.IRhino3dm.MeshParameters
  - igeo.io.IRhino3dm.Plane
  - igeo.io.IRhino3dm.PlaneEquation
  - igeo.io.IRhino3dm.Properties
  - igeo.io.IRhino3dm.Rect
  - igeo.io.IRhino3dm.RenderingAttributes
  - igeo.io.IRhino3dm.Rhino3dmFile
  - igeo.io.IRhino3dm.RhinoObject
    - igeo.io.IRhino3dm.Bitmap
      - igeo.io.IRhino3dm.EmbeddedBitmap
      - igeo.io.IRhino3dm.WindowsBitmap
        - igeo.io.IRhino3dm.WindowsBitmapEx
    - igeo.io.IRhino3dm.BrepFaceSide
    - igeo.io.IRhino3dm.BrepRegion
    - igeo.io.IRhino3dm.DimStyle
    - igeo.io.IRhino3dm.Font
    - igeo.io.IRhino3dm.Geometry
      - igeo.io.IRhino3dm.Annotation
        - igeo.io.IRhino3dm.AngularDimension
        - igeo.io.IRhino3dm.Leader
        - igeo.io.IRhino3dm.LinearDimension
        - igeo.io.IRhino3dm.RadialDimension
        - igeo.io.IRhino3dm.TextEntity
      - igeo.io.IRhino3dm.Annotation2
        - igeo.io.IRhino3dm.AngularDimension2
        - igeo.io.IRhino3dm.Leader2
        - igeo.io.IRhino3dm.LinearDimension2
        - igeo.io.IRhino3dm.OrdinateDimension2
        - igeo.io.IRhino3dm.RadialDimension2
        - igeo.io.IRhino3dm.TextEntity2
      - igeo.io.IRhino3dm.AnnotationArrow
      - igeo.io.IRhino3dm.Brep
      - igeo.io.IRhino3dm.BrepLoop
      - igeo.io.IRhino3dm.Curve
        - igeo.io.IRhino3dm.ArcCurve
        - igeo.io.IRhino3dm.CurveOnSurface
        - igeo.io.IRhino3dm.CurveProxy
          - igeo.io.IRhino3dm.BrepEdge
          - igeo.io.IRhino3dm.BrepTrim
          - igeo.io.IRhino3dm.PolyEdgeSegment
        - igeo.io.IRhino3dm.LineCurve
        - igeo.io.IRhino3dm.NurbsCurve
        - igeo.io.IRhino3dm.PolyCurve
          - igeo.io.IRhino3dm.PolyEdgeCurve
        - igeo.io.IRhino3dm.PolylineCurve
      - igeo.io.IRhino3dm.DetailView
      - igeo.io.IRhino3dm.Hatch
      - igeo.io.IRhino3dm.InstanceDefinition
      - igeo.io.IRhino3dm.InstanceRef
      - igeo.io.IRhino3dm.Light
      - igeo.io.IRhino3dm.Mesh
      - igeo.io.IRhino3dm.MeshEdgeRef
      - igeo.io.IRhino3dm.MeshFaceRef
      - igeo.io.IRhino3dm.MeshVertexRef
      - igeo.io.IRhino3dm.MorphControl
      - igeo.io.IRhino3dm.NurbsCage
      - igeo.io.IRhino3dm.Point
        - igeo.io.IRhino3dm.AnnotationTextDot
        - igeo.io.IRhino3dm.BrepVertex
      - igeo.io.IRhino3dm.PointCloud
      - igeo.io.IRhino3dm.PointGrid
      - igeo.io.IRhino3dm.Surface
        - igeo.io.IRhino3dm.Extrusion
        - igeo.io.IRhino3dm.NurbsSurface
        - igeo.io.IRhino3dm.PlaneSurface
          - igeo.io.IRhino3dm.ClippingPlaneSurface
        - igeo.io.IRhino3dm.RevSurface
        - igeo.io.IRhino3dm.SumSurface
        - igeo.io.IRhino3dm.SurfaceProxy
          - igeo.io.IRhino3dm.BrepFace
          - igeo.io.IRhino3dm.OffsetSurface
      - igeo.io.IRhino3dm.TextDot
      - igeo.io.IRhino3dm.Viewport
    - igeo.io.IRhino3dm.Group
    - igeo.io.IRhino3dm.HatchPattern
    - igeo.io.IRhino3dm.HistoryRecord
    - igeo.io.IRhino3dm.Layer
    - igeo.io.IRhino3dm.Linetype
    - igeo.io.IRhino3dm.Material
    - igeo.io.IRhino3dm.ObjectAttributes
    - igeo.io.IRhino3dm.Texture
    - igeo.io.IRhino3dm.TextureMapping
    - igeo.io.IRhino3dm.UserData
      - igeo.io.IRhino3dm.AngularDimension2Extra
      - igeo.io.IRhino3dm.BrepRegionTopologyUserData
      - igeo.io.IRhino3dm.DimensionExtra
      - igeo.io.IRhino3dm.DimStyleExtra
      - igeo.io.IRhino3dm.HatchExtra
      - igeo.io.IRhino3dm.LayerExtensions
      - igeo.io.IRhino3dm.MeshNgonUserData
      - igeo.io.IRhino3dm.TextExtra
      - igeo.io.IRhino3dm.UnknownUserData
      - igeo.io.IRhino3dm.UserStringList
  - igeo.io.IRhino3dm.Settings
  - igeo.io.IRhino3dm.Settings.AnnotationSettings
  - igeo.io.IRhino3dm.Settings.ConstractionPlane
  - igeo.io.IRhino3dm.Settings.ConstructionPlaneGridDefaults
  - igeo.io.IRhino3dm.Settings.EarthAnchorPoint
  - igeo.io.IRhino3dm.Settings.IOSettings
  - igeo.io.IRhino3dm.Settings.PageSettings
  - igeo.io.IRhino3dm.Settings.RenderSettings
  - igeo.io.IRhino3dm.Settings.ViewPosition
  - igeo.io.IRhino3dm.Settings.ViewSettings
  - igeo.io.IRhino3dm.Settings.ViewTraceImage
  - igeo.io.IRhino3dm.Settings.WallPaperImage
  - igeo.io.IRhino3dm.StartSection
  - igeo.io.IRhino3dm.SurfaceCurvature
  - igeo.io.IRhino3dm.TextureCoordinates
  - igeo.io.IRhino3dm.UnitsAndTolerances
  - igeo.io.IRhino3dm.UnitSystem
  - igeo.io.IRhino3dm.UserString
  - igeo.io.IRhino3dm.UUID
  - igeo.io.IRhino3dm.UUIDIndex
  - igeo.io.IRhino3dm.Xform
  - igeo.IServer (implements igeo.IServerI)
  - igeo.io.IShapeFileImporter
  - igeo.io.IShapeFileImporter.Constraint
    - igeo.io.IShapeFileImporter.GridConstraint
  - igeo.ISort
  - igeo.gui.ISubsurfaceMesh
  - igeo.gui.ISubsurfaceMesh.EdgePoint
  - igeo.gui.ISubsurfaceMesh.EdgePointComparator (implements igeo.IComparator<T>)
  - igeo.gui.ISubsurfaceMesh.SubsurfaceMatrix
  - igeo.ISun
  - igeo.ISun.DateIterator
  - igeo.ISun.DateRange
  - igeo.ISun.Location
  - igeo.ISun.SearchBuffer
  - igeo.ISurfaceCache
  - igeo.ISurfaceCreator
  - igeo.ISurfaceCreator.XCurveComparator (implements igeo.IComparator<T>)
  - igeo.ISurfaceCreator.YCurveComparator (implements igeo.IComparator<T>)
  - igeo.ISurfaceCreator.ZCurveComparator (implements igeo.IComparator<T>)
  - igeo.gui.ISurfaceMesh
  - igeo.gui.ISurfaceMesh.SubsurfaceIndex
  - igeo.gui.ISurfaceMesh.SubsurfaceIndexGroup
  - igeo.ITensileNet
  - igeo.ITensileNet.ConstructorAndParameters<T>
  - igeo.ITensileNet.IParticleOnCurveComparator (implements igeo.IComparator<T>)
  - igeo.ITexture
    - igeo.IPixelTexture
  - igeo.gui.ITextureGraphicGL1 (implements igeo.gui.ITextureGraphicGL)
  - igeo.gui.ITextureGraphicGL2 (implements igeo.gui.ITextureGraphicGL)
  - igeo.ITrimCache
  - igeo.gui.ITrimCurveGraphic
  - igeo.gui.ITrimLoopGraphic
  - igeo.IUnit
  - igeo.IValueComparator<T> (implements igeo.IComparator<T>)
    - igeo.IGeometryXComparator<T>
      - igeo.IBrepXComparator
      - igeo.ICurveXComparator
      - igeo.ISurfaceXComparator
    - igeo.IGeometryYComparator<T>
      - igeo.IBrepYComparator
      - igeo.ICurveYComparator
      - igeo.ISurfaceYComparator
    - igeo.IGeometryZComparator<T>
      - igeo.IBrepZComparator
      - igeo.ICurveZComparator
      - igeo.ISurfaceZComparator
  - igeo.IVertex (implements igeo.IVecI)
  - igeo.IVertex.ZComparator (implements igeo.IComparator<T>)
  - igeo.IVertex.ZYXComparator (implements igeo.IComparator<T>)
  - igeo.gui.IView
  - igeo.IVoronoi2D
  - igeo.IVoronoi2D.RadialComparator (implements igeo.IComparator<T>)
  - igeo.IXComparator (implements igeo.IComparator<T>)
  - igeo.IYComparator (implements igeo.IComparator<T>)
  - igeo.IZComparator (implements igeo.IComparator<T>)
  - java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
    - java.io.ByteArrayOutputStream
      - igeo.io.IRhino3dmExporter.ChunkOutputStream
    - igeo.io.IByteListOutputStream
    - igeo.IPrintWrapper
    - igeo.io.IRandomAccessOutputStream
  - igeo.p.PIConfig
  - processing.core.PImage (implements java.lang.Cloneable, processing.core.PConstants)
    - processing.core.PGraphics (implements processing.core.PConstants)
      - processing.opengl.PGraphicsOpenGL
        - processing.opengl.PGraphics3D
          - igeo.p.PIGraphics3D (implements igeo.gui.IGraphics3D, igeo.gui.IPane)
          - igeo.p.PIGraphicsGL2

## Interface Hierarchy

- java.util.EventListener
  - java.awt.event.ComponentListener
    - igeo.gui.IPanelI (also extends java.awt.event.FocusListener, igeo.IServerI, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.awt.event.WindowListener)
  - java.awt.event.FocusListener
    - igeo.gui.IPanelI (also extends java.awt.event.ComponentListener, igeo.IServerI, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.awt.event.WindowListener)
  - java.awt.event.KeyListener
    - igeo.gui.IPanelI (also extends java.awt.event.ComponentListener, java.awt.event.FocusListener, igeo.IServerI, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.awt.event.WindowListener)
  - java.awt.event.MouseListener
    - igeo.gui.IPanelI (also extends java.awt.event.ComponentListener, java.awt.event.FocusListener, igeo.IServerI, java.awt.event.KeyListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.awt.event.WindowListener)
  - java.awt.event.MouseMotionListener
    - igeo.gui.IPanelI (also extends java.awt.event.ComponentListener, java.awt.event.FocusListener, igeo.IServerI, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseWheelListener, java.awt.event.WindowListener)
  - java.awt.event.MouseWheelListener
    - igeo.gui.IPanelI (also extends java.awt.event.ComponentListener, java.awt.event.FocusListener, igeo.IServerI, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.WindowListener)
  - java.awt.event.WindowListener
    - igeo.gui.IPanelI (also extends java.awt.event.ComponentListener, java.awt.event.FocusListener, igeo.IServerI, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener)
- igeo.IComparator<T>
- igeo.IDecay
- igeo.IFieldI
  - igeo.I2DFieldI
  - igeo.I3DFieldI
  - igeo.IScalarFieldI
- igeo.IFoldable
- igeo.IFunction
- igeo.IGraphicI
- igeo.gui.IGraphics
  - igeo.gui.IGraphics2D
  - igeo.gui.IGraphics3D
    - igeo.gui.IGraphicsGL
  - igeo.gui.IGraphicsGL
- igeo.gui.IPane
- igeo.gui.IPanelAdapter
- igeo.IParticleFactory
- igeo.IParticleOnCurveFactory
- igeo.IServerI
  - igeo.gui.IPanelI (also extends java.awt.event.ComponentListener, java.awt.event.FocusListener, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.awt.event.WindowListener)
- igeo.ISubobject
  - igeo.IDynamics
- igeo.ISwitchI
  - igeo.ISwitchE
  - igeo.ISwitchR
- igeo.ITensionFactory
- igeo.ITensionI
  - igeo.ISpringI
  - igeo.IStraightenerI
- igeo.gui.ITextureGraphicGL
- igeo.ITrajectoryI
- igeo.ITransformable
  - igeo.IBoidI
  - igeo.ICurveI (also extends igeo.ICurveOp)
    - igeo.ITrimCurveI
  - igeo.IMeshI
  - igeo.IParticleI
    - igeo.IBoidI
    - igeo.IParticleOnCurveI
    - igeo.IParticleOnSurfaceI
  - igeo.IParticleOnCurveI
  - igeo.IParticleOnSurfaceI
  - igeo.ISurfaceI (also extends igeo.ISurfaceOp)
  - igeo.ITrimCurveI
  - igeo.IVec4I (also extends igeo.IVec4Op, igeo.IVecI)
  - igeo.IVecI (also extends igeo.IArithmeticVal<T,S>, igeo.IVecOp)
    - igeo.IBoidI
    - igeo.IParticleI
      - igeo.IBoidI
      - igeo.IParticleOnCurveI
      - igeo.IParticleOnSurfaceI
    - igeo.IParticleOnCurveI
    - igeo.IParticleOnSurfaceI
    - igeo.IVec4I (also extends igeo.IVec4Op)
  - igeo.IVolumeI (also extends igeo.IVolumeOp)
- igeo.IVal
  - igeo.IArithmeticVal<T,S>
    - igeo.IBoidI
    - igeo.IDoubleI (also extends igeo.IDoubleOp)
    - igeo.IParticleI
      - igeo.IBoidI
      - igeo.IParticleOnCurveI
      - igeo.IParticleOnSurfaceI
    - igeo.IParticleOnCurveI
    - igeo.IParticleOnSurfaceI
    - igeo.IVec2I (also extends igeo.IVec2Op)
    - igeo.IVec4I (also extends igeo.IVec4Op, igeo.IVecI)
    - igeo.IVecI (also extends igeo.ITransformable, igeo.IVecOp)
      - igeo.IBoidI
      - igeo.IParticleI
        - igeo.IBoidI
        - igeo.IParticleOnCurveI
        - igeo.IParticleOnSurfaceI
      - igeo.IParticleOnCurveI
      - igeo.IParticleOnSurfaceI
      - igeo.IVec4I (also extends igeo.IVec4Op)
  - igeo.IBoidI
  - igeo.IBoolI
  - igeo.IBoolOp (also extends igeo.IParameter, igeo.IScalar)
    - igeo.IBoolI
  - igeo.ICurveI (also extends igeo.ICurveOp, igeo.ITransformable)
    - igeo.ITrimCurveI
  - igeo.ICurveOp
    - igeo.ICurveI (also extends igeo.ITransformable)
      - igeo.ITrimCurveI
    - igeo.ITrimCurveI
  - igeo.IDoubleI (also extends igeo.IArithmeticVal<T,S>, igeo.IDoubleOp)
  - igeo.IDoubleOp (also extends igeo.IParameter, igeo.IScalar)
    - igeo.IDoubleI (also extends igeo.IArithmeticVal<T,S>)
  - igeo.IEntityParameter
  - igeo.IIntegerI
  - igeo.IIntegerOp (also extends igeo.IParameter, igeo.IScalar)
    - igeo.IIntegerI
  - igeo.IMatrix2I (also extends igeo.IMatrix2Op, igeo.IMatrixI)
  - igeo.IMatrix2Op
    - igeo.IMatrix2I (also extends igeo.IMatrixI)
  - igeo.IMatrix3I (also extends igeo.IMatrix3Op, igeo.IMatrixI)
  - igeo.IMatrix3Op
    - igeo.IMatrix3I (also extends igeo.IMatrixI)
  - igeo.IMatrix4I (also extends igeo.IMatrix4Op, igeo.IMatrixI)
  - igeo.IMatrix4Op
    - igeo.IMatrix4I (also extends igeo.IMatrixI)
  - igeo.IMatrixI
    - igeo.IMatrix2I (also extends igeo.IMatrix2Op)
    - igeo.IMatrix3I (also extends igeo.IMatrix3Op)
    - igeo.IMatrix4I (also extends igeo.IMatrix4Op)
  - igeo.IMatrixOp
    - igeo.IMatrix2I (also extends igeo.IMatrix2Op, igeo.IMatrixI)
    - igeo.IMatrix3I (also extends igeo.IMatrix3Op, igeo.IMatrixI)
    - igeo.IMatrix4I (also extends igeo.IMatrix4Op, igeo.IMatrixI)
    - igeo.IMatrixI
      - igeo.IMatrix2I (also extends igeo.IMatrix2Op)
      - igeo.IMatrix3I (also extends igeo.IMatrix3Op)
      - igeo.IMatrix4I (also extends igeo.IMatrix4Op)
  - igeo.IParameter
    - igeo.IBoidI
    - igeo.IBoolI
    - igeo.IBoolOp (also extends igeo.IScalar)
      - igeo.IBoolI
    - igeo.ICurveI (also extends igeo.ICurveOp, igeo.ITransformable)
      - igeo.ITrimCurveI
    - igeo.ICurveOp
      - igeo.ICurveI (also extends igeo.ITransformable)
        - igeo.ITrimCurveI
      - igeo.ITrimCurveI
    - igeo.IDoubleI (also extends igeo.IArithmeticVal<T,S>, igeo.IDoubleOp)
    - igeo.IDoubleOp (also extends igeo.IScalar)
      - igeo.IDoubleI (also extends igeo.IArithmeticVal<T,S>)
    - igeo.IEntityParameter
    - igeo.IIntegerI
    - igeo.IIntegerOp (also extends igeo.IScalar)
      - igeo.IIntegerI
    - igeo.IMatrix2I (also extends igeo.IMatrix2Op, igeo.IMatrixI)
    - igeo.IMatrix2Op
      - igeo.IMatrix2I (also extends igeo.IMatrixI)
    - igeo.IMatrix3I (also extends igeo.IMatrix3Op, igeo.IMatrixI)
    - igeo.IMatrix3Op
      - igeo.IMatrix3I (also extends igeo.IMatrixI)
    - igeo.IMatrix4I (also extends igeo.IMatrix4Op, igeo.IMatrixI)
    - igeo.IMatrix4Op
      - igeo.IMatrix4I (also extends igeo.IMatrixI)
    - igeo.IMatrixI
      - igeo.IMatrix2I (also extends igeo.IMatrix2Op)
      - igeo.IMatrix3I (also extends igeo.IMatrix3Op)
      - igeo.IMatrix4I (also extends igeo.IMatrix4Op)
    - igeo.IMatrixOp
      - igeo.IMatrix2I (also extends igeo.IMatrix2Op, igeo.IMatrixI)
      - igeo.IMatrix3I (also extends igeo.IMatrix3Op, igeo.IMatrixI)
      - igeo.IMatrix4I (also extends igeo.IMatrix4Op, igeo.IMatrixI)
      - igeo.IMatrixI
        - igeo.IMatrix2I (also extends igeo.IMatrix2Op)
        - igeo.IMatrix3I (also extends igeo.IMatrix3Op)
        - igeo.IMatrix4I (also extends igeo.IMatrix4Op)
    - igeo.IParticleI
      - igeo.IBoidI
      - igeo.IParticleOnCurveI
      - igeo.IParticleOnSurfaceI
    - igeo.IParticleOnCurveI
    - igeo.IParticleOnSurfaceI
    - igeo.IReferenceParameter
    - igeo.ISurfaceI (also extends igeo.ISurfaceOp, igeo.ITransformable)
    - igeo.ISurfaceOp
      - igeo.ISurfaceI (also extends igeo.ITransformable)
    - igeo.ITrimCurveI
    - igeo.IVec2I (also extends igeo.IArithmeticVal<T,S>, igeo.IVec2Op)
    - igeo.IVec2Op
      - igeo.IVec2I (also extends igeo.IArithmeticVal<T,S>)
    - igeo.IVec4I (also extends igeo.IVec4Op, igeo.IVecI)
    - igeo.IVec4Op
      - igeo.IVec4I (also extends igeo.IVecI)
    - igeo.IVecI (also extends igeo.IArithmeticVal<T,S>, igeo.ITransformable, igeo.IVecOp)
      - igeo.IBoidI
      - igeo.IParticleI
        - igeo.IBoidI
        - igeo.IParticleOnCurveI
        - igeo.IParticleOnSurfaceI
      - igeo.IParticleOnCurveI
      - igeo.IParticleOnSurfaceI
      - igeo.IVec4I (also extends igeo.IVec4Op)
    - igeo.IVecOp
      - igeo.IBoidI
      - igeo.IParticleI
        - igeo.IBoidI
        - igeo.IParticleOnCurveI
        - igeo.IParticleOnSurfaceI
      - igeo.IParticleOnCurveI
      - igeo.IParticleOnSurfaceI
      - igeo.IVec4I (also extends igeo.IVec4Op, igeo.IVecI)
      - igeo.IVec4Op
        - igeo.IVec4I (also extends igeo.IVecI)
      - igeo.IVecI (also extends igeo.IArithmeticVal<T,S>, igeo.ITransformable)
        - igeo.IBoidI
        - igeo.IParticleI
          - igeo.IBoidI
          - igeo.IParticleOnCurveI
          - igeo.IParticleOnSurfaceI
        - igeo.IParticleOnCurveI
        - igeo.IParticleOnSurfaceI
        - igeo.IVec4I (also extends igeo.IVec4Op)
    - igeo.IVolumeI (also extends igeo.ITransformable, igeo.IVolumeOp)
    - igeo.IVolumeOp
      - igeo.IVolumeI (also extends igeo.ITransformable)
  - igeo.IParticleI
    - igeo.IBoidI
    - igeo.IParticleOnCurveI
    - igeo.IParticleOnSurfaceI
  - igeo.IParticleOnCurveI
  - igeo.IParticleOnSurfaceI
  - igeo.IReferenceParameter
  - igeo.IScalar
    - igeo.IBoolI
    - igeo.IBoolOp (also extends igeo.IParameter)
      - igeo.IBoolI
    - igeo.IDoubleI (also extends igeo.IArithmeticVal<T,S>, igeo.IDoubleOp)
    - igeo.IDoubleOp (also extends igeo.IParameter)
      - igeo.IDoubleI (also extends igeo.IArithmeticVal<T,S>)
    - igeo.IIntegerI
    - igeo.IIntegerOp (also extends igeo.IParameter)
      - igeo.IIntegerI
  - igeo.ISurfaceI (also extends igeo.ISurfaceOp, igeo.ITransformable)
  - igeo.ISurfaceOp
    - igeo.ISurfaceI (also extends igeo.ITransformable)
  - igeo.ITrimCurveI
  - igeo.IVec2I (also extends igeo.IArithmeticVal<T,S>, igeo.IVec2Op)
  - igeo.IVec2Op
    - igeo.IVec2I (also extends igeo.IArithmeticVal<T,S>)
  - igeo.IVec4I (also extends igeo.IVec4Op, igeo.IVecI)
  - igeo.IVec4Op
    - igeo.IVec4I (also extends igeo.IVecI)
  - igeo.IVecI (also extends igeo.IArithmeticVal<T,S>, igeo.ITransformable, igeo.IVecOp)
    - igeo.IBoidI
    - igeo.IParticleI
      - igeo.IBoidI
      - igeo.IParticleOnCurveI
      - igeo.IParticleOnSurfaceI
    - igeo.IParticleOnCurveI
    - igeo.IParticleOnSurfaceI
    - igeo.IVec4I (also extends igeo.IVec4Op)
  - igeo.IVecOp
    - igeo.IBoidI
    - igeo.IParticleI
      - igeo.IBoidI
      - igeo.IParticleOnCurveI
      - igeo.IParticleOnSurfaceI
    - igeo.IParticleOnCurveI
    - igeo.IParticleOnSurfaceI
    - igeo.IVec4I (also extends igeo.IVec4Op, igeo.IVecI)
    - igeo.IVec4Op
      - igeo.IVec4I (also extends igeo.IVecI)
    - igeo.IVecI (also extends igeo.IArithmeticVal<T,S>, igeo.ITransformable)
      - igeo.IBoidI
      - igeo.IParticleI
        - igeo.IBoidI
        - igeo.IParticleOnCurveI
        - igeo.IParticleOnSurfaceI
      - igeo.IParticleOnCurveI
      - igeo.IParticleOnSurfaceI
      - igeo.IVec4I (also extends igeo.IVec4Op)
  - igeo.IVolumeI (also extends igeo.ITransformable, igeo.IVolumeOp)
  - igeo.IVolumeOp
    - igeo.IVolumeI (also extends igeo.ITransformable)

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - igeo.IFieldGeo.Decay
    - igeo.ISun.City
    - igeo.ITextGeo.HorizontalAlignment
    - igeo.ITextGeo.VerticalAlignment
    - igeo.IUnit.Type
    - igeo.gui.IGraphicMode.GraphicType
    - igeo.gui.INavigator.DragType
    - igeo.io.I3DXML.ReferenceRep.FormatType
    - igeo.io.I3DXML.LineAttributesType.LineTypeType
    - igeo.io.I3DXML.PointAttributesType.PointSymbolType
    - igeo.io.I3DXML.MaterialApplicationType.MappingSideType
    - igeo.io.I3DXML.MaterialApplicationType.TextureBlendFunctionType
    - igeo.io.I3DXML.ColorBufferType.ColorFormatType
    - igeo.io.I3DXML.TextureCoordinatesBufferType.TextureDimensionType
    - igeo.io.IAIExporter.CapType
    - igeo.io.IAIExporter.JoinType
    - igeo.io.IIO.FileType
    - igeo.io.IRhino3dm.Endian
    - igeo.io.IRhino3dm.AnnotationType
    - igeo.io.IRhino3dm.TextDisplayMode
    - igeo.io.IRhino3dm.Texture.MappingChannel
    - igeo.io.IRhino3dm.Texture.Type
    - igeo.io.IRhino3dm.Texture.Mode
    - igeo.io.IRhino3dm.Texture.Filter
    - igeo.io.IRhino3dm.Texture.Wrap
    - igeo.io.IRhino3dm.TextureMapping.Type
    - igeo.io.IRhino3dm.Surface.ISO
    - igeo.io.IRhino3dm.BrepTrim.Type
    - igeo.io.IRhino3dm.BrepLoop.Type
    - igeo.io.IRhino3dm.MeshCurvatureStats.CurvatureStyle