kaos.spatial
Interface SpatialDatabase

All Known Implementing Classes:
LocalSpatialDB, SpatialDB, SpatialReasoner

public interface SpatialDatabase

This interface defines methods allowing for manipulation of spatial database information.


Method Summary
 void deregisterSpatialObject(java.lang.String objectID)
          Deregister object identified by the given objectID and its spatial properties in the SpatialReasoner.
 java.util.Vector findUsingAlternativeName(java.lang.String objectAlternativeName)
          This method finds the spatial objects with the given alternative name
 java.util.Vector<SpatialObject> getAllSpatialObjects()
          This method allows to obtain a vector of all registered spatial object.
 java.util.Vector getAlternativeNames(java.lang.String objectID)
          This method get the alternative names of the spatial object.
 java.util.Vector<Location3D> getBoundingPoints(java.lang.String objectID)
          This method allows to obtain a vector of locations of the corners of the area bounding the object.
 Location3D getObjectLocation(java.lang.String objectID)
          This method allows to obtain location of a known spatial object.
 java.util.Set getObjectOntologicalTypes(java.lang.String objectID)
          This method allows to obtain location of a known spatial object.
 Orientation3D getObjectOrientation(java.lang.String objectID)
          This method allows to obtain orientation of a known spatial object.
 Block3D getOccupiedSpace(java.lang.String objectID)
          This method allows to obtain aproximation of the occupied space of a known spatial object.
 SpatialObject getSpatialObject(java.lang.String objectID)
          This method allows to obtain spatial object.
 void registerSpatialObject(java.lang.String objectID, java.util.Set objectOntologyTypes, Location3D objectLocation, Orientation3D objectOrientation, Block3D objectOccupedSpace)
          This method allows to add information about a new spatial object.
 void registerSpatialObject(java.lang.String objectID, java.util.Set objectOntologyType, Orientation3D objectOrientation, java.util.Vector<Location3D> boundingPoints)
          This method allows to add information about a new spatial object.
 void setAlternativeName(java.lang.String objectID, java.lang.String objectAlternativeName)
          This method set the alternative name of the spatial object.
 void updateSpatialObject(java.lang.String objectID, Location3D objectLocation, Orientation3D objectOrientation, Block3D objectOccupedSpace)
          This method allows to modify information about a known spatial object.
 void updateSpatialObject(java.lang.String objectID, Orientation3D objectOrientation, java.util.Vector<Location3D> boundingPoints)
          This method allows to modify information about a known spatial object.
 

Method Detail

registerSpatialObject

void registerSpatialObject(java.lang.String objectID,
                           java.util.Set objectOntologyTypes,
                           Location3D objectLocation,
                           Orientation3D objectOrientation,
                           Block3D objectOccupedSpace)
                           throws AlreadyRegisteredException
This method allows to add information about a new spatial object. The description about the object contains information about its: ontological type (e.g. Robot, Craft, Area. etc.), location as 3 coordinates (xyz), orientation as 3 radiuses (from xyz axis) and the minimal space block occupied by the object

Parameters:
objectID - - id of the registered object
objectOntologyType - - set of string representing URI in the OWL ontology file to the definition of the object class
objectLocation - - initial location of the object represnted as @see Location3D
objectOrientation - - initial orientation of the object represnted as @see Orientation3D
objectOccupedSpace - - initial space occupied by the object represnted as @see Block3D
Throws:
AlreadyRegisteredException - when the object is already registered in the spatial database

registerSpatialObject

void registerSpatialObject(java.lang.String objectID,
                           java.util.Set objectOntologyType,
                           Orientation3D objectOrientation,
                           java.util.Vector<Location3D> boundingPoints)
                           throws AlreadyRegisteredException
This method allows to add information about a new spatial object. The description about the object contains information about its: ontological type (e.g. Robot, Craft, Area. etc.), location as 3 coordinates (xyz), orientation as 3 radiuses (from xyz axis) and the minimal space block occupied by the object

Parameters:
objectID - - id of the registered object
objectOntologyType - - set of string representing URI in the OWL ontology file to the definition of the object class
objectOrientation - - initial orientation of the object represnted as @see Orientation3D
boundingPoints - - vector with locations of the corners of the area bounding the object
Throws:
AlreadyRegisteredException - when the object is already registered in the spatial database

deregisterSpatialObject

void deregisterSpatialObject(java.lang.String objectID)
                             throws NotRegisteredException
Deregister object identified by the given objectID and its spatial properties in the SpatialReasoner.

Parameters:
objectID - String uniquely identifying registering object in the SpatialReasoner.
Throws:
NotRegisteredException - if the registering object has not been registered in the SpatialReasoner.

updateSpatialObject

void updateSpatialObject(java.lang.String objectID,
                         Location3D objectLocation,
                         Orientation3D objectOrientation,
                         Block3D objectOccupedSpace)
                         throws NotRegisteredException
This method allows to modify information about a known spatial object. The value null of a particular parameter is interpreted as information that the corresponding spatial property of the object has not changed.

Parameters:
objectID - - id of the updated object
objectLocation - - new location of the object represnted as @see Location3D
objectOrientation - - new orientation of the object represnted as @see Orientation3D
objectOccupedSpace - - new space occupied by the object represnted as @see Block3D
Throws:
NotRegisteredException - when the object is not registered in the spatial database

updateSpatialObject

void updateSpatialObject(java.lang.String objectID,
                         Orientation3D objectOrientation,
                         java.util.Vector<Location3D> boundingPoints)
                         throws NotRegisteredException
This method allows to modify information about a known spatial object. The value null of a particular parameter is interpreted as information that the corresponding spatial property of the object has not changed.

Parameters:
objectID - - id of the updated object
objectLocation - - new location of the object represnted as @see Location3D
objectOrientation - - new orientation of the object represnted as @see Orientation3D
boundingPoints - - vector with locations of the corners of the area bounding the object
Throws:
NotRegisteredException - when the object is not registered in the spatial database

setAlternativeName

void setAlternativeName(java.lang.String objectID,
                        java.lang.String objectAlternativeName)
                        throws NotRegisteredException
This method set the alternative name of the spatial object.

Parameters:
objectID - - id of the updated object
objectAlternativeName - - the alternative name of the object
Throws:
NotRegisteredException - when the object is not registered in the spatial database

getAlternativeNames

java.util.Vector getAlternativeNames(java.lang.String objectID)
                                     throws NotRegisteredException
This method get the alternative names of the spatial object.

Parameters:
objectID - - id of the updated object return Vector - the alternative names of the object
Throws:
NotRegisteredException - when the object is not registered in the spatial database

getSpatialObject

SpatialObject getSpatialObject(java.lang.String objectID)
                               throws NotRegisteredException
This method allows to obtain spatial object.

Parameters:
objectID - - id of the object
Returns:
SpatialObject - spatial oject with the given id
Throws:
NotRegisteredException - when the object is not registered in the spatial database

getAllSpatialObjects

java.util.Vector<SpatialObject> getAllSpatialObjects()
This method allows to obtain a vector of all registered spatial object.

Returns:
Vector - spatial oject with the given id

getObjectOntologicalTypes

java.util.Set getObjectOntologicalTypes(java.lang.String objectID)
                                        throws NotRegisteredException
This method allows to obtain location of a known spatial object.

Parameters:
objectID - - id of the object
Returns:
Set - set of strings reprsenting URI in the OWL ontology file to the definition of the object class
Throws:
NotRegisteredException - when the object is not registered in the spatial database

getObjectLocation

Location3D getObjectLocation(java.lang.String objectID)
                             throws NotRegisteredException
This method allows to obtain location of a known spatial object.

Parameters:
objectID - - id of the object return @see Location3D - object containg location coordinates as xyz
Throws:
NotRegisteredException - when the object is not registered in the spatial database

getObjectOrientation

Orientation3D getObjectOrientation(java.lang.String objectID)
                                   throws NotRegisteredException
This method allows to obtain orientation of a known spatial object.

Parameters:
objectID - - id of the object return @see Orientation3D - object containg orientation as xyz radiuses
Throws:
NotRegisteredException - when the object is not registered in the spatial database

getOccupiedSpace

Block3D getOccupiedSpace(java.lang.String objectID)
                         throws NotRegisteredException
This method allows to obtain aproximation of the occupied space of a known spatial object.

Parameters:
objectID - - id of the object return @see Block3D - object containg inforationas about an occupied space as a 3d block
Throws:
NotRegisteredException - when the object is not registered in the spatial database

getBoundingPoints

java.util.Vector<Location3D> getBoundingPoints(java.lang.String objectID)
                                               throws NotRegisteredException
This method allows to obtain a vector of locations of the corners of the area bounding the object.

Parameters:
objectID - - id of the object return @see Block3D - object containg inforationas about an occupied space as a 3d block
Throws:
NotRegisteredException - when the object is not registered in the spatial database

findUsingAlternativeName

java.util.Vector findUsingAlternativeName(java.lang.String objectAlternativeName)
                                          throws NotRegisteredException
This method finds the spatial objects with the given alternative name

Parameters:
objectAlternativeName - - the alternative name of the object return Vector - id of the found object
Throws:
NotRegisteredException - when the object is not registered in the spatial database