org.deegree_impl.model.geometry
Class GM_Aggregate_Impl

java.lang.Object
  extended byorg.deegree_impl.model.geometry.GM_Object_Impl
      extended byorg.deegree_impl.model.geometry.GM_Aggregate_Impl
All Implemented Interfaces:
GM_Aggregate, GM_Object, java.io.Serializable
Direct Known Subclasses:
GM_MultiPrimitive_Impl

abstract class GM_Aggregate_Impl
extends GM_Object_Impl
implements GM_Aggregate, java.io.Serializable

default implementierung of the GM_Aggregate interface ------------------------------------------------------------

Version:
8.6.2001
Author:
Andreas Poth href="mailto:poth@lat-lon.de"

Field Summary
protected  java.util.ArrayList aggregate
           
private static long serialVersionUID
          Use serialVersionUID for interoperability.
 
Fields inherited from class org.deegree_impl.model.geometry.GM_Object_Impl
boundary, centroid, convexHull, crs, empty, envelope, mute, valid
 
Constructor Summary
private GM_Aggregate_Impl()
          Creates a new GM_Aggregate_Impl object.
  GM_Aggregate_Impl(CS_CoordinateSystem crs)
          Creates a new GM_Aggregate_Impl object.
 
Method Summary
 void add(GM_Object gmo)
          adds an GM_Object to the aggregation
 boolean equals(java.lang.Object other)
          Compares the GM_Object to be equal to another GM_Object.
 GM_Object[] getAll()
          returns all GM_Objects as array
 java.util.Iterator getIterator()
          returns the aggregation as an iterator
 GM_Object getObjectAt(int index)
          returns the GM_Object at the submitted index. if index is larger then getSize() - 1 or smaller then 0 an exception will be thrown.
 int getSize()
          returns the number of GM_Object within the aggregation
 void insertObjectAt(GM_Object gmo, int index)
          inserts a GM_Object in the aggregation. all elements with an index equal or larger index will be moved. if index is larger then getSize() - 1 or smaller then 0 or gmo equals null an exception will be thrown.
 boolean intersects(GM_Object gmo)
          The Boolean valued operation "intersects" shall return TRUE if this GM_Object intersects another GM_Object.
 boolean isEmpty()
          returns true if no geometry stored within the collection.
 boolean isMember(GM_Object gmo)
          returns true if the submitted GM_Object is within the aggregation
 void merge(GM_Aggregate aggregate)
          merges this aggregation with another one
 void removeAll()
          removes all GM_Object from the aggregation.
 GM_Object removeObject(GM_Object gmo)
          removes the submitted GM_Object from the aggregation
 GM_Object removeObjectAt(int index)
          removes the GM_Object at the submitted index from the aggregation.
 void setCoordinateSystem(CS_CoordinateSystem crs)
          sets the spatial reference system
 void setObjectAt(GM_Object gmo, int index)
          sets the submitted GM_Object at the submitted index. the element at the position index will be removed. if index is larger then getSize() - 1 or smaller then 0 or gmo equals null an exception will be thrown.
 java.lang.String toString()
           
 void translate(double[] d)
          translate the point by the submitted values. the dz- value will be ignored.
 
Methods inherited from class org.deegree_impl.model.geometry.GM_Object_Impl
calculateParam, clone, contains, contains, difference, distance, getBoundary, getBuffer, getCentroid, getConvexHull, getCoordinateSystem, getEnvelope, intersection, isValid, isWithinDistance, setEmpty, setValid, union
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.deegree.model.geometry.GM_Object
contains, contains, difference, distance, getBoundary, getBuffer, getCentroid, getConvexHull, getCoordinateDimension, getCoordinateSystem, getDimension, getEnvelope, intersection, isWithinDistance, union
 

Field Detail

serialVersionUID

private static final long serialVersionUID
Use serialVersionUID for interoperability.

See Also:
Constant Field Values

aggregate

protected java.util.ArrayList aggregate
Constructor Detail

GM_Aggregate_Impl

public GM_Aggregate_Impl(CS_CoordinateSystem crs)
Creates a new GM_Aggregate_Impl object.

Parameters:
crs -

GM_Aggregate_Impl

private GM_Aggregate_Impl()
Creates a new GM_Aggregate_Impl object.

Method Detail

getSize

public int getSize()
returns the number of GM_Object within the aggregation

Specified by:
getSize in interface GM_Aggregate

merge

public void merge(GM_Aggregate aggregate)
           throws GM_Exception
merges this aggregation with another one

Specified by:
merge in interface GM_Aggregate
Throws:
GM_Exception - a GM_Exception will be thrown if the submitted isn't the same type as the recieving one.

add

public void add(GM_Object gmo)
adds an GM_Object to the aggregation

Specified by:
add in interface GM_Aggregate

insertObjectAt

public void insertObjectAt(GM_Object gmo,
                           int index)
                    throws GM_Exception
inserts a GM_Object in the aggregation. all elements with an index equal or larger index will be moved. if index is larger then getSize() - 1 or smaller then 0 or gmo equals null an exception will be thrown.

Specified by:
insertObjectAt in interface GM_Aggregate
Parameters:
gmo - GM_Object to insert.
index - position where to insert the new GM_Object
Throws:
GM_Exception

setObjectAt

public void setObjectAt(GM_Object gmo,
                        int index)
                 throws GM_Exception
sets the submitted GM_Object at the submitted index. the element at the position index will be removed. if index is larger then getSize() - 1 or smaller then 0 or gmo equals null an exception will be thrown.

Specified by:
setObjectAt in interface GM_Aggregate
Parameters:
gmo - GM_Object to set.
index - position where to set the new GM_Object
Throws:
GM_Exception

removeObject

public GM_Object removeObject(GM_Object gmo)
removes the submitted GM_Object from the aggregation

Specified by:
removeObject in interface GM_Aggregate
Returns:
the removed GM_Object

removeObjectAt

public GM_Object removeObjectAt(int index)
                         throws GM_Exception
removes the GM_Object at the submitted index from the aggregation. if index is larger then getSize() - 1 or smaller then 0 an exception will be thrown.

Specified by:
removeObjectAt in interface GM_Aggregate
Returns:
the removed GM_Object
Throws:
GM_Exception

removeAll

public void removeAll()
removes all GM_Object from the aggregation.

Specified by:
removeAll in interface GM_Aggregate

getObjectAt

public GM_Object getObjectAt(int index)
returns the GM_Object at the submitted index. if index is larger then getSize() - 1 or smaller then 0 an exception will be thrown.

Specified by:
getObjectAt in interface GM_Aggregate

getAll

public GM_Object[] getAll()
returns all GM_Objects as array

Specified by:
getAll in interface GM_Aggregate

isMember

public boolean isMember(GM_Object gmo)
returns true if the submitted GM_Object is within the aggregation

Specified by:
isMember in interface GM_Aggregate

getIterator

public java.util.Iterator getIterator()
returns the aggregation as an iterator

Specified by:
getIterator in interface GM_Aggregate

isEmpty

public boolean isEmpty()
returns true if no geometry stored within the collection.

Specified by:
isEmpty in interface GM_Object
Overrides:
isEmpty in class GM_Object_Impl

setCoordinateSystem

public void setCoordinateSystem(CS_CoordinateSystem crs)
sets the spatial reference system

Overrides:
setCoordinateSystem in class GM_Object_Impl
Parameters:
crs - new spatial reference system

translate

public void translate(double[] d)
translate the point by the submitted values. the dz- value will be ignored.

Specified by:
translate in interface GM_Object
Overrides:
translate in class GM_Object_Impl

equals

public boolean equals(java.lang.Object other)
Description copied from class: GM_Object_Impl
Compares the GM_Object to be equal to another GM_Object.

Overrides:
equals in class GM_Object_Impl
Parameters:
other -
Returns:

intersects

public boolean intersects(GM_Object gmo)
The Boolean valued operation "intersects" shall return TRUE if this GM_Object intersects another GM_Object. Within a GM_Complex, the GM_Primitives do not intersect one another. In general, topologically structured data uses shared geometric objects to capture intersection information.

Specified by:
intersects in interface GM_Object
Overrides:
intersects in class GM_Object_Impl
Parameters:
gmo - the GM_Object to intersect with
Returns:
true if the objects intersects, else false

toString

public java.lang.String toString()
Overrides:
toString in class GM_Object_Impl
Returns: