EsriGraphicList (OpenMap API)
Date: 2016-12-09

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.bbn.openmap.dataAccess.shape
Class EsriGraphicList

    java.lang.Object
      com.bbn.openmap.omGraphics.geom.BasicGeometry
          com.bbn.openmap.omGraphics.OMGraphicAdapter
              com.bbn.openmap.omGraphics.OMList<OMGraphic>
                  com.bbn.openmap.omGraphics.OMGraphicList
                      com.bbn.openmap.dataAccess.shape.EsriGraphicList

All Implemented Interfaces:
  EsriGraphic, ShapeConstants, OMGeometry, OMGraphic, OMGraphicConstants, java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<OMGraphic>, java.util.Collection<OMGraphic>, java.util.List<OMGraphic>

Direct Known Subclasses:
  EsriPointList, EsriPolygonList, EsriPolylineList

    public abstract class EsriGraphicList

extends OMGraphicList
implements ShapeConstants, EsriGraphic

EsriGraphicList ensures that only supported geometry types are added to its list. Each subclass of this EsriGraphicList list will hold polyline, polygon, or point geometry -- other types of geometry are not supported. As shapes are added to the list, EsriGraphicList will ensure that the type of geometry being added is the same type of geometry as specified by the subclass list type.

Author:
  Doug Van Auken, Don Dietrick
See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class com.bbn.openmap.omGraphics.OMList
`OMList.OMDist<T>`

Field Summary
`protected double[]` | `extents`
`static java.util.logging.Logger` | `logger`
`protected int` | `type`

Fields inherited from class com.bbn.openmap.omGraphics.OMList
`allowDuplicates, FIRST_ADDED_ON_TOP, graphics, LAST_ADDED_ON_TOP, NONE, processAllGeometries, traverseMode, vague`

Fields inherited from class com.bbn.openmap.omGraphics.OMGraphicAdapter
`declutterType, displayPaint, edgeMatchesFill, fillPaint, hasLabel, linePaint, matted, mattingPaint, renderType, selected, selectPaint, showEditablePalette, stroke, textureMask`

Fields inherited from class com.bbn.openmap.omGraphics.geom.BasicGeometry
`attributes, lineType, needToRegenerate, shape, visible`

Fields inherited from interface com.bbn.openmap.dataAccess.shape.ShapeConstants
`DBF_ATTRIBUTE, DBF_AUTOINCREMENT, DBF_BINARY, DBF_CHARACTER, DBF_DATE, DBF_DOUBLE, DBF_FLOAT, DBF_LOGICAL, DBF_LONG, DBF_MEMO, DBF_NUMERIC, DBF_OLE, DBF_TIMESTAMP, DBF_TYPE_AUTOINCREMENT, DBF_TYPE_BINARY, DBF_TYPE_CHARACTER, DBF_TYPE_DATE, DBF_TYPE_DOUBLE, DBF_TYPE_FLOAT, DBF_TYPE_LOGICAL, DBF_TYPE_LONG, DBF_TYPE_MEMO, DBF_TYPE_NUMERIC, DBF_TYPE_OLE, DBF_TYPE_TIMESTAMP, PARAM_DBF, PARAM_SHP, PARAM_SHX, SHAPE_BOUNDS_ATTRIBUTE, SHAPE_DBF_DASHPATTERN, SHAPE_DBF_DASHPHASE, SHAPE_DBF_DESCRIPTION, SHAPE_DBF_FILLCOLOR, SHAPE_DBF_INFO_ATTRIBUTE, SHAPE_DBF_LINECOLOR, SHAPE_DBF_LINEWIDTH, SHAPE_DBF_SELECTCOLOR, SHAPE_FILE_HEADER_LENGTH, SHAPE_FILE_RECORD_HEADER_LENGTH, SHAPE_INDEX_ATTRIBUTE, SHAPE_MAX_MEASURE_ATTRIBUTE, SHAPE_MAX_Z_ATTRIBUTE, SHAPE_MEASURE_ATTRIBUTE, SHAPE_MIN_MEASURE_ATTRIBUTE, SHAPE_MIN_Z_ATTRIBUTE, SHAPE_TYPE_ARC, SHAPE_TYPE_MULTIPATCH, SHAPE_TYPE_MULTIPOINT, SHAPE_TYPE_MULTIPOINTM, SHAPE_TYPE_MULTIPOINTZ, SHAPE_TYPE_NULL, SHAPE_TYPE_POINT, SHAPE_TYPE_POINTM, SHAPE_TYPE_POINTZ, SHAPE_TYPE_POLYGON, SHAPE_TYPE_POLYGONM, SHAPE_TYPE_POLYGONZ, SHAPE_TYPE_POLYLINE, SHAPE_TYPE_POLYLINEM, SHAPE_TYPE_POLYLINEZ, SHAPE_Z_ATTRIBUTE`

Fields inherited from interface com.bbn.openmap.omGraphics.OMGraphicConstants
`ADD_GRAPHIC_MASK, APP_OBJECT, BASIC_STROKE, CHANGE_APPEARANCE, clear, DECIMAL_DEGREES, DECLUTTERTYPE_LINE, DECLUTTERTYPE_MOVE, DECLUTTERTYPE_NONE, DECLUTTERTYPE_SPACE, DEFAULT_ROTATIONANGLE, DELETE_GRAPHIC_MASK, DESELECT_GRAPHIC_MASK, DESELECTALL_GRAPHIC_MASK, GRAPHICTYPE_ARC, GRAPHICTYPE_BITMAP, GRAPHICTYPE_CIRCLE, GRAPHICTYPE_ELLIPSE, GRAPHICTYPE_GRAPHIC, GRAPHICTYPE_GRID, GRAPHICTYPE_LINE, GRAPHICTYPE_POINT, GRAPHICTYPE_POLY, GRAPHICTYPE_RASTER, GRAPHICTYPE_RECTANGLE, GRAPHICTYPE_TEXT, INDEX, INFOLINE, LABEL, LINETYPE_GREATCIRCLE, LINETYPE_RHUMB, LINETYPE_STRAIGHT, LINETYPE_UNKNOWN, LOWER_GRAPHIC_MASK, LOWER_TO_BOTTOM_GRAPHIC_MASK, NO_ROTATE, OMGRAPHIC_ELT, OMGRAPHIC_TYPE_ATTR, RADIANS, RAISE_GRAPHIC_MASK, RAISE_TO_TOP_GRAPHIC_MASK, REMOVABLE, RENDERTYPE_LATLON, RENDERTYPE_OFFSET, RENDERTYPE_UNKNOWN, RENDERTYPE_XY, SELECT_GRAPHIC_MASK, SORT_GRAPHICS_MASK, TOOLTIP, UPDATE_GRAPHIC_MASK, UPDATED`

Constructor Summary
`EsriGraphicList()` Construct an EsriGraphicList.
`EsriGraphicList(int initialCapacity)` Construct an EsriGraphicList with an initial capacity.
`EsriGraphicList(int initialCapacity, int capacityIncrement)` Deprecated. capacityIncrement doesn't do anything.

Method Summary
`boolean` | `add(OMGraphic shape)` Over-ride the add( ) method to trap for inconsistent shape geometry.
`void` | `addExtents(double[] graphicExtents)`
`boolean` | `addOMGraphic(OMGraphic g)` Add an OMGraphic to the GraphicList.
`void` | `createTable()` Create a generic DbfTableModel for the contents of this list, where the attributes hold rendering properties for the list contents.
`static EsriGraphicList` | `getEsriGraphicList(java.net.URL shp, DrawingAttributes drawingAttributes, DbfTableModel dbf, GeoCoordTransformation coordTranslator)` Reads the contents of the SHP files.
`static EsriGraphicList` | `getEsriGraphicList(java.net.URL shp, DrawingAttributes drawingAttributes, GeoCoordTransformation coordTranslator)` Reads the contents of the SHP files, including the DBF file, based on the location of the shape file.
`static EsriGraphicList` | `getEsriGraphicList(java.net.URL shp, java.net.URL shx, DrawingAttributes drawingAttributes, DbfTableModel dbf)` Deprecated. use getGraphicList(URL, DrawingAttributes, DbfTableModel)
`double[]` | `getExtents()` The lat/lon extent of the EsriGraphicList contents, returned as miny, minx, maxy maxx in order of the array.
`java.util.List<EsriGraphic>` | `getGraphicsWithValueInColumn(java.lang.Object value, java.lang.String columnName)` Find EsriGraphics with a certain attribute
`DbfTableModel` | `getTable()` Get the DbfTableModel object from the AppObject of this list.
`int` | `getType()` Get the list type in ESRI type number form
`static void` | `main(java.lang.String[] args)`
`void` | `setExtents(double[] extents)` The lat/lon extent of the EsriGraphicList contents, assumed to contain miny, minx, maxy maxx in order of the array.
`void` | `setTable(DbfTableModel dtm)` Set the DbfTableModel in the AppObject of this list that holds the attribute information about this list's objects.
`void` | `setType(int type)` Set the type for the EsriGraphic.

Methods inherited from class com.bbn.openmap.omGraphics.OMGraphicList
`add, addAll, addAll, clone, create, createDist, get, getOMGraphicAt, getTargets, iteratorCopy, listIteratorCopy, listIteratorCopy, objectToOMGraphic, readGraphics, readGraphics, remove, set, setFillPaint, setGridGenerator, setLinePaint, setMatted, setMattingPaint, setOMGraphicAt, setSelectPaint, setStroke, setTargets, setTextureMask, sort, writeGraphics, writeGraphics`

Methods inherited from class com.bbn.openmap.omGraphics.OMList
`checkForDuplicate, clear, contains, contains, containsAll, deselect, distance, doAction, findAll, findAll, findAllTest, findClosest, findClosest, findClosest, findClosestTest, findIndexOfClosest, findIndexOfClosest, generate, generate, getAllowDuplicates, getContains, getCopy, getDescription, getDescription, getProcessAllGeometries, getTraverseMode, indexOf, isEmpty, isVague, isVisible, iterator, lastIndexOf, listIterator, listIterator, moveIndexedOneToBack, moveIndexedOneToBottom, moveIndexedOneToFront, moveIndexedOneToTop, moveIndexedToBottom, moveIndexedToFirst, moveIndexedToLast, moveIndexedToTop, project, project, remove, removeAll, render, renderAllAsSelected, restore, retainAll, select, selectClosest, selectClosest, selectClosestTest, setAllowDuplicates, setProcessAllGeometries, setTraverseMode, setVague, setVisible, shouldProcess, size, subList, toArray, toArray`

Methods inherited from class com.bbn.openmap.omGraphics.OMGraphicAdapter
`getDeclutterType, getDisplayColor, getDisplayPaint, getEdgeMatchesFill, getFillColor, getFillPaint, getHasLabel, getLineColor, getLinePaint, getMattingPaint, getRenderType, getSelectColor, getSelectPaint, getShowEditablePalette, getStroke, getTextureMask, hasLineTypeChoice, initLabelingDuringGenerate, isClear, isMatted, isSelected, normalizeDistanceForLineWidth, readStroke, readTextureMask, regenerate, renderLabel, renderShape, setDeclutterType, setEdgeMatchesFill, setFillColor, setGraphicsColor, setGraphicsForEdge, setGraphicsForFill, setHasLabel, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLineColor, setRenderType, setSelectColor, setSelected, setShowEditablePalette, shouldRenderEdge, shouldRenderFill, writeStroke, writeTextureMask`

Methods inherited from class com.bbn.openmap.omGraphics.geom.BasicGeometry
`_distance, appendShapeEdge, appendShapeEdge, appendShapeEdge, appendShapeEdge, clearAttributes, contains, createAttributeMap, createBoxShape, createShape, createShape, describeShapeDetail, describeShapeDetail, distanceToEdge, distanceToEdge, draw, draw, fill, fill, getAppObject, getAttribute, getAttributes, getLineType, getNeedToRegenerate, getShape, isRenderable, isRenderable, putAttribute, removeAttribute, setAppObject, setAttributes, setLineType, setNeedToRegenerate, setShape`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface com.bbn.openmap.dataAccess.shape.EsriGraphic
`getAttribute, putAttribute, shallowCopy`

Methods inherited from interface java.util.List
`equals, hashCode`

Methods inherited from interface com.bbn.openmap.omGraphics.OMGraphic
`getDeclutterType, getDisplayColor, getDisplayPaint, getFillColor, getFillPaint, getLineColor, getLinePaint, getMattingPaint, getRenderType, getSelectColor, getSelectPaint, getShowEditablePalette, getStroke, getTextureMask, hasLineTypeChoice, isMatted, isSelected, normalizeDistanceForLineWidth, regenerate, renderLabel, setDeclutterType, setGraphicsColor, setGraphicsForEdge, setGraphicsForFill, setLabelLocation, setLabelLocation, setLabelLocation, setRenderType, setSelected, setShowEditablePalette, shouldRenderEdge, shouldRenderFill`

Methods inherited from interface com.bbn.openmap.omGraphics.OMGeometry
`clearAttributes, contains, distanceToEdge, draw, draw, fill, fill, getAppObject, getAttribute, getAttributes, getLineType, getNeedToRegenerate, getShape, isRenderable, isRenderable, putAttribute, removeAttribute, setAppObject, setAttributes, setLineType, setNeedToRegenerate, setShape`

Field Detail

### logger

    public static java.util.logging.Logger logger

### extents

    protected double[] extents

### type

    protected int type

Constructor Detail

### EsriGraphicList

    public EsriGraphicList()

  Construct an EsriGraphicList.

### EsriGraphicList

    public EsriGraphicList(int initialCapacity)

  Construct an EsriGraphicList with an initial capacity.

  Parameters:
    `initialCapacity` - the initial capacity of the list

### EsriGraphicList

    public EsriGraphicList(int initialCapacity,
                           int capacityIncrement)

  Deprecated. capacityIncrement doesn't do anything.

  Construct an EsriGraphicList with an initial capacity and a standard increment value.

  Parameters:
    `initialCapacity` - the initial capacity of the list
    `capacityIncrement` - the capacityIncrement for resizing

Method Detail

### add

    public boolean add(OMGraphic shape)

  Over-ride the add( ) method to trap for inconsistent shape geometry. If you are adding a OMGraphic that is not a list, make sure this list is a sub-list containing multiple geometry parts. Only add another list to a top level EsriGraphicList.

  Specified by:
    `add` in interface `java.util.Collection<OMGraphic>`
  Specified by:
    `add` in interface `java.util.List<OMGraphic>`
  Overrides:
    `add` in class `OMGraphicList`
  Parameters:
    `shape` - the non-null OMGraphic to add

### addOMGraphic

    public boolean addOMGraphic(OMGraphic g)

  Add an OMGraphic to the GraphicList. The OMGraphic must not be null.

  Parameters:
    `g` - the non-null OMGraphic to add
  Returns:
    true if addition is successful.
  Throws:
    `java.lang.IllegalArgumentException` - if OMGraphic is null

### setType

    public void setType(int type)

  Description copied from interface: `EsriGraphic`
  Set the type for the EsriGraphic.

  Specified by:
    `setType` in interface `EsriGraphic`

### getType

    public int getType()

  Get the list type in ESRI type number form

  Specified by:
    `getType` in interface `EsriGraphic`

### setExtents

    public void setExtents(double[] extents)

  The lat/lon extent of the EsriGraphicList contents, assumed to contain miny, minx, maxy maxx in order of the array.

  Specified by:
    `setExtents` in interface `EsriGraphic`

### getExtents

    public double[] getExtents()

  The lat/lon extent of the EsriGraphicList contents, returned as miny, minx, maxy maxx in order of the array.

  Specified by:
    `getExtents` in interface `EsriGraphic`

### addExtents

    public void addExtents(double[] graphicExtents)

### setTable

    public void setTable(DbfTableModel dtm)

  Set the DbfTableModel in the AppObject of this list that holds the attribute information about this list's objects.

### getTable

    public DbfTableModel getTable()

  Get the DbfTableModel object from the AppObject of this list.

### createTable

    public void createTable()

  Create a generic DbfTableModel for the contents of this list, where the attributes hold rendering properties for the list contents. The table is stored in the AppObject member variable of the list.

### getEsriGraphicList

    public static EsriGraphicList getEsriGraphicList(java.net.URL shp,
                                                     java.net.URL shx,
                                                     DrawingAttributes drawingAttributes,
                                                     DbfTableModel dbf)

  Deprecated. use getGraphicList(URL, DrawingAttributes, DbfTableModel)

  Reads the contents of the SHX and SHP files. The SHX file will be read first by utilizing the ShapeIndex.open method. This method will return a list of offsets, which the AbstractSupport.open method will use to iterate through the contents of the SHP file.

  Parameters:
    `shp` - The url of the SHP file
    `shx` - The url of the SHX file
    `drawingAttributes` - a DrawingAttributes object containing the rendering parameters you might want on the OMGraphics. The OMGraphic default (black edge, clear fill) will be used if this is null.
    `dbf` - a DbfTableModel, if you want each row of objects from the table (an array), inserted into their associated OMGraphic's appObject. The dbf will be added to the list appObject, so you can ask it questions later. If null, no problem. If the number of records doesn't match the OMGraphic list length, nothing will be done.
  Returns:
    A new EsriGraphicList, null if there is a problem.

### getEsriGraphicList

    public static EsriGraphicList getEsriGraphicList(java.net.URL shp,
                                                     DrawingAttributes drawingAttributes,
                                                     DbfTableModel dbf,
                                                     GeoCoordTransformation coordTranslator)

  Reads the contents of the SHP files.

  Parameters:
    `shp` - The url of the SHP file
    `drawingAttributes` - a DrawingAttributes object containing the rendering parameters you might want on the OMGraphics. The OMGraphic default (black edge, clear fill) will be used if this is null.
    `dbf` - a DbfTableModel. The dbf will be added to the list appObject, so you can ask it questions later. If null, no problem. If the number of records doesn't match the OMGraphic list length, nothing will be done.
    `coordTranslator` - a GeoCoordTransformation to use to convert coordinates to decimal degree lat/lon data.
  Returns:
    A new EsriGraphicList, null if there is a problem.

### getEsriGraphicList

    public static EsriGraphicList getEsriGraphicList(java.net.URL shp,
                                                     DrawingAttributes drawingAttributes,
                                                     GeoCoordTransformation coordTranslator)

  Reads the contents of the SHP files, including the DBF file, based on the location of the shape file. The dbf will be added to the list appObject, so you can ask it questions later. If null, no problem. If the number of records doesn't match the OMGraphic list length, the dbf information won't be added to the list.

  Parameters:
    `shp` - The url of the SHP file
    `drawingAttributes` - a DrawingAttributes object containing the rendering parameters you might want on the OMGraphics. The OMGraphic default (black edge, clear fill) will be used if this is null.
    `coordTranslator` - used to transform coordinates to lat/lon decimal degrees for OpenMap.
  Returns:
    A new EsriGraphicList, null if there is a problem.

### getGraphicsWithValueInColumn

    public java.util.List<EsriGraphic> getGraphicsWithValueInColumn(java.lang.Object value,
                                                                    java.lang.String columnName)
                                                             throws FormatException

  Find EsriGraphics with a certain attribute

  Parameters:
    `value` - the value of the desired attribute.
    `columnName` - the columnName in the dbf
  Returns:
    new List of EsriGraphic shapes with value in column
  Throws:
    `FormatException` - thrown if columnName isn't found.

### main

    public static void main(java.lang.String[] args)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (C) BBNT Solutions LLC; See http://openmap.bbn.com/ for details