org.universAAL.ontology.shape
Class Polygon

Package class diagram package Polygon
java.lang.Object
  extended by org.universAAL.middleware.rdf.Resource
      extended by org.universAAL.middleware.rdf.FinalizedResource
          extended by org.universAAL.middleware.owl.ManagedIndividual
              extended by org.universAAL.ontology.shape.Shape
                  extended by org.universAAL.ontology.shape.Shape3D
                      extended by org.universAAL.ontology.shape.Polygon
Direct Known Subclasses:
Triangle

public class Polygon
extends Shape3D

Ontological representation of a polygon in a tri-dimensional space. Methods included in this class are the mandatory ones for representing an ontological concept in Java classes for uAAL. Usually it includes getters and setters for most of its properties.

Author:
chwirth

Field Summary
static String MY_URI
           
static String PROP_VERTICES
           
 
Fields inherited from class org.universAAL.ontology.shape.Shape3D
PROP_2D_REPRESENTATION
 
Fields inherited from class org.universAAL.ontology.shape.Shape
PROP_BOUNDING_VOLUME, PROP_LOCAL_COORDINATE_SYSTEM, PROP_POINT_REPRESENTATION
 
Fields inherited from class org.universAAL.middleware.owl.ManagedIndividual
OWL_NAMESPACE, TYPE_OWL_INDIVIDUAL, TYPE_OWL_THING
 
Fields inherited from class org.universAAL.middleware.rdf.Resource
ANON_URI_PREFIX, blockAddingTypes, isXMLLiteral, ns_delim_index, PROP_RDF_FIRST, PROP_RDF_REST, PROP_RDF_TYPE, PROP_RDFS_COMMENT, PROP_RDFS_LABEL, PROP_SERIALIZATION_FULL, PROP_SERIALIZATION_OPTIONAL, PROP_SERIALIZATION_REDUCED, PROP_SERIALIZATION_UNDEFINED, PROP_uAAL_INVOLVED_HUMAN_USER, props, RDF_EMPTY_LIST, RDF_NAMESPACE, RDFS_NAMESPACE, TYPE_RDF_LIST, TYPE_RDFS_CLASS, uAAL_NAMESPACE_PREFIX, uAAL_SERVICE_NAMESPACE, uAAL_VOCABULARY_NAMESPACE, uri
 
Constructor Summary
Polygon()
          Creates a Polygon object
Polygon(Point[] verts)
           
Polygon(String uri)
          Creates a Polygon object
Polygon(String uri, Point[] verts)
          Creates a Polygon object.
 
Method Summary
 void castTo3D()
          ensures that all points have a valid z value
protected  void checkValid()
           
protected  Shape computeBoundingVolume()
          Implementation Note: Must compute and set bounding sphere or box as PROP_BOUNDING_VOLUME
 boolean contains(Point p)
          accuracy limited to 4 digits after the dot
 String getClassURI()
          Get the class URI for this ManagedIndividual.
 float getDistanceTo(Point other)
          Implementation Note: The points have to be transformed to a common coordinate system via CoordinateSystem.findCommonCoordinateSystem and getInHigherCoordinateSystem(commonSystem)
 Point getMidpoint()
          the center point of all vertices, assuming an even weights
 int getPropSerializationType(String propURI)
          Answers if the given property has to be considered when serializing this individual in a minimized way, and if not ignore-able, whether its value should be presented in its full form or can be reduced.
 Point[] getVertices()
           
 void setVertices(Point[] verts)
           
 
Methods inherited from class org.universAAL.ontology.shape.Shape3D
get2DRepresentation, remove2DRepresentation, set2DRepresentation
 
Methods inherited from class org.universAAL.ontology.shape.Shape
getBoundingVolume, getCenter, getDistanceByBoundingVolume, getLocalCoordinateSystem, getPointRepresentation, intersects, removeBoundingVolume, removePointRepresentation, setBoundingVolume, setLocalCoordinateSystem, setPointRepresentation
 
Methods inherited from class org.universAAL.middleware.owl.ManagedIndividual
checkCompatibility, checkMembership, copy, deepCopy, getClassRestrictionsOnProperty, getInstance, getNonAbstractSuperClasses, getNonabstractSuperClasses, getOntClassInfo, getTypeURI, isRegisteredClassURI, isWellFormed, setProperty, setPropertyPathFromOffset, toManagedIndividual
 
Methods inherited from class org.universAAL.middleware.rdf.FinalizedResource
addType, getLocalName, getNamespace, getProperty, getPropertyURIs, getType, getTypes, getURI, hasQualifiedName, isAnon, numberOfProperties
 
Methods inherited from class org.universAAL.middleware.rdf.Resource
addMultiLangProp, asList, asList, asRDFList, changeProperty, equals, generateAnonURI, getDefaultLang, getFilename, getMultiLangProp, getOrConstructLabel, getResource, getResourceComment, getResourceLabel, getStaticFieldValue, hashCode, hasProperty, isAnon, isBlockingAddingTypes, isClosedCollection, isQualifiedName, literal, representsQualifiedURI, serializesAsXMLLiteral, setPropertyPath, setPropertyPath, setResourceComment, setResourceLabel, toString, toStringRecursive, toStringRecursive, unliteral
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

MY_URI

public static final String MY_URI
See Also:
Constant Field Values

PROP_VERTICES

public static final String PROP_VERTICES
See Also:
Constant Field Values
Constructor Detail

Polygon

public Polygon(String uri)
Creates a Polygon object

Parameters:
uri - the object URI

Polygon

public Polygon()
Creates a Polygon object


Polygon

public Polygon(String uri,
               Point[] verts)
Creates a Polygon object. All vertices have to be in the same coordinate system

Parameters:
uri - this value can also be a null object
verts - an array of all vertices in counter clockwise order

Polygon

public Polygon(Point[] verts)
Method Detail

getClassURI

public String getClassURI()
Description copied from class: ManagedIndividual
Get the class URI for this ManagedIndividual. All non-abstract subclasses MUST overwrite this method!

Overrides:
getClassURI in class Shape3D
Returns:
The class URI.

getVertices

public Point[] getVertices()

setVertices

public void setVertices(Point[] verts)

getPropSerializationType

public int getPropSerializationType(String propURI)
Description copied from class: ManagedIndividual
Answers if the given property has to be considered when serializing this individual in a minimized way, and if not ignore-able, whether its value should be presented in its full form or can be reduced. The return value must be one of Resource.PROP_SERIALIZATION_OPTIONAL, Resource.PROP_SERIALIZATION_REDUCED, or Resource.PROP_SERIALIZATION_FULL. It can be assumed that the given property is one of those returned by FinalizedResource.getPropertyURIs(). Decision criterion should be if the value of this property is absolutely necessary when this resource is being sent to a remote node. If the subclass rates it as unlikely that the receiver side would need this info, the answer should be PROP_SERIALIZATION_OPTIONAL in favor of lower communication traffic and higher performance even at risk of a possible additional query on the receiver side for fetching this info. With the same rationale, if a property should be included in the process of serialization, it is preferable to include it in a reduced form; in this case the return value should be PROP_SERIALIZATION_REDUCED, otherwise PROP_SERIALIZATION_FULL can be returned.

Overrides:
getPropSerializationType in class Shape3D

getDistanceTo

public float getDistanceTo(Point other)
Description copied from class: Shape
Implementation Note: The points have to be transformed to a common coordinate system via CoordinateSystem.findCommonCoordinateSystem and getInHigherCoordinateSystem(commonSystem)

Specified by:
getDistanceTo in class Shape
Returns:
the distance as positiv value or Point.NO_COMPUTABLE_DISTANCE or Point.INTERSECTING

getMidpoint

public Point getMidpoint()
the center point of all vertices, assuming an even weights

Returns:
the midpoint

checkValid

protected void checkValid()

castTo3D

public void castTo3D()
ensures that all points have a valid z value


computeBoundingVolume

protected Shape computeBoundingVolume()
Description copied from class: Shape
Implementation Note: Must compute and set bounding sphere or box as PROP_BOUNDING_VOLUME

Specified by:
computeBoundingVolume in class Shape
Returns:
the bounding volume

contains

public boolean contains(Point p)
accuracy limited to 4 digits after the dot

Specified by:
contains in class Shape
Returns:


Copyright © 2014 universAAL Consortium. All Rights Reserved.