public abstract class Shape extends ManagedIndividual
Modifier and Type | Field and Description |
---|---|
static String |
MY_URI |
static String |
PROP_BOUNDING_VOLUME |
static String |
PROP_LOCAL_COORDINATE_SYSTEM |
static String |
PROP_POINT_REPRESENTATION |
OWL_NAMESPACE, TYPE_OWL_INDIVIDUAL, TYPE_OWL_THING
ANON_URI_PREFIX, blockAddingTypes, isXMLLiteral, NAMESPACE_PREFIX, ns_delim_index, PROP_INVOLVED_HUMAN_USER, 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, props, RDF_EMPTY_LIST, RDF_NAMESPACE, RDFS_NAMESPACE, SERVICE_NAMESPACE, TYPE_RDF_LIST, TYPE_RDFS_CLASS, uri, VOCABULARY_NAMESPACE
Constructor and Description |
---|
Shape()
Creates a Shape object
|
Shape(CoordinateSystem system)
Creates a Shape object
|
Shape(Point pointRep,
CoordinateSystem system)
Creates a Shape object
|
Shape(String uri)
Creates a Shape object
|
Shape(String uri,
CoordinateSystem system)
Creates a Shape object
|
Shape(String uri,
Point pointRep,
CoordinateSystem system)
Creates a Shape object
|
Modifier and Type | Method and Description |
---|---|
protected abstract Shape |
computeBoundingVolume()
Implementation Note: Must compute and set bounding sphere or box as
PROP_BOUNDING_VOLUME
|
abstract boolean |
contains(Point p)
returns if the given point is within the shape
|
Shape |
getBoundingVolume()
Returns the bounding volume of this Shape3D.
|
Point |
getCenter()
returns the centerpoint of the object
|
String |
getClassURI()
Get the class URI for this ManagedIndividual.
|
float |
getDistanceByBoundingVolume(Shape shape) |
abstract float |
getDistanceTo(Point p)
Implementation Note: The points have to be transformed to a common
coordinate system via CoordinateSystem.findCommonCoordinateSystem and
getInHigherCoordinateSystem(commonSystem)
|
CoordinateSystem |
getLocalCoordinateSystem() |
Point |
getPointRepresentation()
if no explicit point representation was set, the center of the shape is
returned
|
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.
|
boolean |
intersects(Point base,
Point dir)
Calculates the intersection of an ray with the bounding volume of the
shape
|
void |
removeBoundingVolume() |
void |
removePointRepresentation() |
void |
setBoundingVolume(Shape shape)
Sets an explicit bounding volume, disabling the automated bounding volume
calculation If an other Shape than a Sphere or Box should be used, the
ray intersection method in Shape has to be extended
|
void |
setLocalCoordinateSystem(CoordinateSystem system) |
void |
setPointRepresentation(Point point) |
checkCompatibility, checkMembership, copy, deepCopy, getClassRestrictionsOnProperty, getInstance, getNonAbstractSuperClasses, getNonabstractSuperClasses, getOntClassInfo, getTypeURI, isRegisteredClassURI, isWellFormed, setProperty, setPropertyPathFromOffset, toManagedIndividual
addType, getLocalName, getNamespace, getProperty, getPropertyURIs, getType, getTypes, getURI, hasQualifiedName, isAnon, numberOfProperties
addMultiLangProp, asList, asList, asRDFList, changeProperty, equals, generateAnonURI, getDefaultLang, getFilename, getMultiLangProp, getOrConstructLabel, getOrConstructLabel, getResource, getResourceComment, getResourceLabel, getResourceLabel, getStaticFieldValue, hashCode, hasProperty, isAnon, isBlockingAddingTypes, isClosedCollection, isQualifiedName, literal, representsQualifiedURI, serializesAsXMLLiteral, setPropertyPath, setPropertyPath, setResourceComment, setResourceLabel, toString, toStringRecursive, toStringRecursive, unliteral
public static final String MY_URI
public static final String PROP_POINT_REPRESENTATION
public static final String PROP_LOCAL_COORDINATE_SYSTEM
public static final String PROP_BOUNDING_VOLUME
public Shape(String uri)
uri
- the object URIpublic Shape()
public Shape(String uri, Point pointRep, CoordinateSystem system)
uri
- this value can also be a null objectpointRep
- a (optional) single point Represenationsystem
- The local coordinate system, normally a OriginedMetricpublic Shape(Point pointRep, CoordinateSystem system)
pointRep
- a (optional) single point Represenationsystem
- The local coordinate system, normally a OriginedMetricpublic Shape(String uri, CoordinateSystem system)
uri
- the universal identifiersystem
- The local coordinate system, normally a OriginedMetricpublic Shape(CoordinateSystem system)
system
- The local coordinate system, normally a OriginedMetricpublic String getClassURI()
ManagedIndividual
getClassURI
in class ManagedIndividual
public Point getPointRepresentation()
public Point getCenter()
public float getDistanceByBoundingVolume(Shape shape)
shape
- public abstract float getDistanceTo(Point p)
p
- public void setPointRepresentation(Point point)
public void removePointRepresentation()
public int getPropSerializationType(String propURI)
ManagedIndividual
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.getPropSerializationType
in class ManagedIndividual
public void setLocalCoordinateSystem(CoordinateSystem system)
public CoordinateSystem getLocalCoordinateSystem()
public Shape getBoundingVolume()
protected abstract Shape computeBoundingVolume()
public void setBoundingVolume(Shape shape)
shape
- FHSphere or a Boxpublic void removeBoundingVolume()
public boolean intersects(Point base, Point dir)
base
- the base of the raydir
- the direction vector of the raypublic abstract boolean contains(Point p)
p
- Copyright © 2018 universAAL Consortium. All rights reserved.