Class TLcdVPFCoverage

java.lang.Object
com.luciad.format.vpf.TLcdVPFCoverage

public class TLcdVPFCoverage extends Object
Models the VPF coverage level.

A VPF coverage is part of a library (TLcdVPFLibrary) and contains a set of feature classes (TLcdVPFFeatureClass) of the same theme (for example transportation). There are five types of feature classes in a coverage: points, lines, areas, texts and complex features. A coverage can contain zero or more feature classes of each type.

All geometries within the same coverage have the same topology level (see MIL-STD-2407, page 37 for a detailed description). Detailed topological relationships between objects are currently not available.

Optionally, a data quality descriptor can be associated with each coverage.

See Also:
  • Method Details

    • getPath

      public File getPath()
      Returns the path, as a File, to the directory of this coverage, for example /data/vmaplv0/eusproto/trans for the transportation coverage in the eusproto library of the vmaplv0 database.
      Returns:
      the path to the directory of this coverage.
    • getPathName

      public String getPathName()
      Returns the path to the directory of this coverage, for example /data/vmaplv0/eusproto/trans for the transportation coverage in the eusproto library of the vmaplv0 database.
      Returns:
      the path to the directory of this coverage.
    • getLibrary

      public TLcdVPFLibrary getLibrary()
      Returns the library to which this coverage belongs.
      Returns:
      the library to which this coverage belongs.
    • getFeatureClasses

      public TLcdVPFFeatureClass[] getFeatureClasses()
      Returns an array with all feature classes contained in this coverage. If the coverage is empty, an array of length zero will be returned. The feature classes are returned in the order they are provided in the FCS table.
      Returns:
      an array with all feature classes contained in this coverage.
    • getFeatureClass

      public TLcdVPFFeatureClass getFeatureClass(String aFeatureClassName)
      Returns the TLcdVPFFeatureClass with the given name that is part of this coverage, or null if no such feature class exists.
      Parameters:
      aFeatureClassName - the name of the feature class to be returned.
      Returns:
      the TLcdVPFFeatureClass with the given name, or null if no such feature class exists.
      Throws:
      NullPointerException - if aFeatureClassName == null
    • getPointFeatureClassesName

      public String[] getPointFeatureClassesName()
      Returns an array containing the names of all point feature classes in this coverage. If no point features are available in this coverage, an array of length zero will be returned. The names are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the names of all point feature classes in this coverage.
    • getLineFeatureClassesName

      public String[] getLineFeatureClassesName()
      Returns an array containing the names of all line feature classes in this coverage. If no line features are available in this coverage, an array of length zero will be returned. The names are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the names of all line feature classes in this coverage.
    • getAreaFeatureClassesName

      public String[] getAreaFeatureClassesName()
      Returns an array containing the names of all area feature classes in this coverage. If no area features are available in this coverage, an array of length zero will be returned. The names are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the names of all area feature classes in this coverage.
    • getTextFeatureClassesName

      public String[] getTextFeatureClassesName()
      Returns an array containing the names of all text feature classes in this coverage. If no text features are available in this coverage, an array of size 0 will be returned. The names are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the names of all text feature classes in this coverage.
    • getComplexFeatureClassesName

      public String[] getComplexFeatureClassesName()
      Returns an array containing the names of all complex feature classes in this coverage. If no complex features are available in this coverage, an array of size 0 will be returned. The names are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the names of all complex feature classes in this coverage.
    • getPointFeatureClassesDescription

      public String[] getPointFeatureClassesDescription()
      Returns an array containing the descriptions of all point feature classes in this coverage. If no point features are available in this coverage, an array of size 0 will be returned. The descriptions are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the descriptions of all point feature classes in this coverage.
    • getLineFeatureClassesDescription

      public String[] getLineFeatureClassesDescription()
      Returns an array containing the descriptions of all line feature classes in this coverage. If no line features are available in this coverage, an array of size 0 will be returned. The descriptions are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the descriptions of all line feature classes in this coverage.
    • getAreaFeatureClassesDescription

      public String[] getAreaFeatureClassesDescription()
      Returns an array containing the descriptions of all area feature classes in this coverage. If no area features are available in this coverage, an array of size 0 will be returned. The descriptions are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the descriptions of all area feature classes in this coverage.
    • getTextFeatureClassesDescription

      public String[] getTextFeatureClassesDescription()
      Returns an array containing the descriptions of all text feature classes in this coverage. If no text features are available in this coverage, an array of size 0 will be returned. The descriptions are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the descriptions of all text feature classes in this coverage.
    • getComplexFeatureClassesDescription

      public String[] getComplexFeatureClassesDescription()
      Returns an array containing the descriptions of all complex feature classes in this coverage. If no complex features are available in this coverage, an array of size 0 will be returned. The descriptions are ordered in the same order as in the FCS table.
      Returns:
      an array of String objects containing the descriptions of all complex feature classes in this coverage.
    • getTopologyLevel

      public short getTopologyLevel()
      Returns the topology level of this coverage.
      • 3: Full topology
      • 2: Planar graph
      • 1: Non-planar graph
      • 0: Boundary representation (spaghetti)

      MIL-STD-2407, p. 37 contains a more detailed description of all topological levels.

      Returns:
      the VPF level of topology of this TLcdVPFCoverage.
    • getDataQualityDescriptor

      public TLcdVPFDataQualityDescriptor getDataQualityDescriptor()
      Returns a description of the data quality of this coverage, or null if no data quality information is available for this coverage.
      Returns:
      the TLcdVPFDataQualityDescriptor describing the data quality of this coverage.
    • setDefaultFeatureClassDescriptions

      public void setDefaultFeatureClassDescriptions(Hashtable aName2DescriptionMap)
      Sets a mapping of (feature class name, feature class description) on this coverage, that is used if no valid description could be retrieved from the FCA table (because it doesn't exist or it doesn't contain an entry for the given feature class name). If this mapping is null and no FCA entry is available, the feature class names will also be used as descriptions.
      Parameters:
      aName2DescriptionMap - a Hashtable containing feature class names as keys and their corresponding feature class descriptions as values.
      See Also:
    • getDefaultFeatureClassDescriptions

      public Hashtable getDefaultFeatureClassDescriptions()
      Returns the default (feature class name, feature class description) mapping that is used for retrieving feature class descriptions, if no description is available in the FCA table.
      Returns:
      the default (feature class name, feature class description) mapping that is used for retrieving feature class descriptions.
      See Also:
    • initDefaultFeatureClassDescriptions

      protected void initDefaultFeatureClassDescriptions()
      Called when the default feature class description mapping is first needed. Implementations should create and fill a description Hashtable, and use the setDefaultFeatureClassDescriptions() method to set it on this coverage. The feature class names should be used as keys in the Hashtable, the corresponding descriptions as values. By default, the table is initialized with default (English) values for a small set of feature classes that occur frequently in reference libraries.
    • toString

      public String toString()
      Returns a brief textual description for this coverage. The exact details of the representation are unspecified and subject to change. Depending on the application, the getName() or getDescription() might be used as a good source of a textual description for this coverage.
      Overrides:
      toString in class Object
      Returns:
      a brief textual description for this coverage.
    • equals

      public boolean equals(Object o)
      Returns true if this VPF coverage is equal to the given object. Two VPF coverages are considered equal if the libraries to which they belong are equal, and their names are equal.
      Overrides:
      equals in class Object
      Parameters:
      o - the object to compare this coverage with.
      Returns:
      true if this object and o are equal, false otherwise.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • setClassTraceOn

      public static void setClassTraceOn(boolean aClassTraceOn)
      Deprecated.
      This method has been deprecated. It is recommended to use the standard Java logging framework directly.
      Enables tracing for all instances of this class. If the argument is true then all log messages are recorded, otherwise only the informative, warning and error messages are recorded.
      Parameters:
      aClassTraceOn - if true then all log messages are recorded, otherwise only the informative, warning and error messages are recorded.
    • setTraceOn

      public void setTraceOn(boolean aTraceOn)
      Deprecated.
      This method has been deprecated. It is recommended to use the standard Java logging framework directly.
      Enables tracing for this class instance. Calling this method with either true or false as argument automatically turns off tracing for all other class instances for which setTraceOn has not been called. If the argument is false then only the informative, warning and error log messages are recorded.
      Parameters:
      aTraceOn - if true then all log messages are recorded for this instance. If false, then only the informative, warning and error log messages are recorded.
    • isTraceOn

      public boolean isTraceOn()
      Deprecated.
      This method has been deprecated. It is recommended to use the standard Java logging framework directly.
      Returns true if tracing is enabled for this class.
      Returns:
      true if tracing is enabled for this class, false otherwise.
    • getName

      public String getName()
      Returns the short name of this entity, used as identifier in the VPF database. For example:
      • vmaplv0 for a database
      • eusproto for a library
      • trans for a coverage
      • roadl for a feature class
      Returns:
      the short name of this entity.
    • getDescription

      public String getDescription()
      Returns a brief textual description for this entity.
      Returns:
      a brief textual description for this entity.