com.esri.core.geometry
Class VertexDescription

java.lang.Object
  extended by com.esri.core.geometry.VertexDescription

public class VertexDescription
extends Object

Describes the vertex format of a Geometry. Geometry objects store vertices. The vertex is a multi attribute entity. It has mandatory X, Y coordinates. In addition it may have Z, M, ID, and other user specified attributes. Geometries point to VertexDescription instances. If the two Geometries have same set of attributes, they point to the same VertexDescription instance.
To create a new VertexDescription use the VertexDescriptionDesigner class.
The VertexDescription allows to add new attribute types easily (see ID2).
The attributes are stored sorted by Semantics value.
Note: You could also think of the VertexDescription as a schema of a database table. You may look the vertices of a Geometry as if they are stored in a database table, and the VertexDescription defines the fields of the table.


Nested Class Summary
static interface VertexDescription.Semantics
          Describes the attribute and, in case of predefined attributes, provides a hint of the attribute use.
 
Method Summary
 boolean equals(Object _other)
           
 int getAttributeCount()
          Returns the attribute count of this description.
 int getAttributeIndex(int semantics)
          Returns the index the given attribute in the vertex description.
static int getComponentCount(int semantics)
          Returns the number of the components of the given semantics.
static double getDefaultValue(int semantics)
          Returns default value for each ordinate of the vertex attribute with given semantics.
 int getSemantics(int attributeIndex)
          Returns the semantics of the given attribute.
 int getTotalComponentCount()
          Returns the total component count.
 boolean hasAttribute(int semantics)
          Returns True if the attribute with the given name and given set exists.
 int hashCode()
           
 boolean hasID()
          Returns True, if the vertex has ID attribute.
 boolean hasM()
          Returns True, if the vertex has M attribute.
 boolean hasZ()
          Returns True, if the vertex has Z attribute.
static boolean isDefaultValue(int semantics, double v)
          Checks if the given value is the default one.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getAttributeCount

public final int getAttributeCount()
Returns the attribute count of this description. The value is always greater or equal to 1. The first attribute is always a POSITION.


getSemantics

public final int getSemantics(int attributeIndex)
Returns the semantics of the given attribute.

Parameters:
attributeIndex - The index of the attribute in the description. Max value is GetAttributeCount() - 1.

getAttributeIndex

public final int getAttributeIndex(int semantics)
Returns the index the given attribute in the vertex description.

Parameters:
semantics -
Returns:
Returns the attribute index or -1 of the attribute does not exist

getComponentCount

public static int getComponentCount(int semantics)
Returns the number of the components of the given semantics. For example, it returns 2 for the POSITION.

Parameters:
semantics - The semantics of the attribute.

hasAttribute

public boolean hasAttribute(int semantics)
Returns True if the attribute with the given name and given set exists.

Parameters:
semantics - The semantics of the attribute.

hasZ

public boolean hasZ()
Returns True, if the vertex has Z attribute.


hasM

public boolean hasM()
Returns True, if the vertex has M attribute.


hasID

public boolean hasID()
Returns True, if the vertex has ID attribute.


getDefaultValue

public static double getDefaultValue(int semantics)
Returns default value for each ordinate of the vertex attribute with given semantics.


getTotalComponentCount

public int getTotalComponentCount()
Returns the total component count.


isDefaultValue

public static boolean isDefaultValue(int semantics,
                                     double v)
Checks if the given value is the default one. The simple equality test with GetDefaultValue does not work due to the use of NaNs as default value for some parameters.


equals

public boolean equals(Object _other)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object


Copyright © 2013. All Rights Reserved.