Class NFEFeatureElement
- java.lang.Object
-
- oracle.spatial.network.nfe.model.NFEBasicModelObject
-
- oracle.spatial.network.nfe.model.feature.NFEFeatureElement
-
- All Implemented Interfaces:
NFEModelObject
- Direct Known Subclasses:
NFEBasicFeatureElement
public abstract class NFEFeatureElement extends NFEBasicModelObject
Base class for representing a feature element. Feature elements are contained in features. A feature element only may belong to one feature. The way used to differentiate a feature element is the key property. A feature element always lays over a network element. The type of the feature element determines if it can lay over a node or a link.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
KEY_VAL_SEPARATOR
static java.lang.String
PROP_END_PERCENTAGE
static java.lang.String
PROP_FEATURE
static java.lang.String
PROP_KEY
static java.lang.String
PROP_NETWORK_ELEMENT
static java.lang.String
PROP_SEQUENCE
static java.lang.String
PROP_START_PERCENTAGE
static java.lang.String
PROP_TYPE
static java.lang.String
UNKNOWN_KEY_VAL
-
Fields inherited from interface oracle.spatial.network.nfe.model.NFEModelObject
EFLAG_EXISTING, EFLAG_REMOVED
-
-
Constructor Summary
Constructors Constructor Description NFEFeatureElement()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract NFEFeatureElement
createCopy()
Returns object copy.static java.lang.String
createKey(long featLayerId, long featureId, long netElemId, long sequence)
abstract double
getEndPercentage()
Gets the line feature element's end point relative to its link's length.abstract NFEFeature
getFeature()
Gets the feature element's featureabstract NFEFeatureLayer
getFeatureLayer()
Gets the feature element's feature layer.abstract java.lang.String
getKey()
Gets the feature element's key which is used to uniquely identify a feature element in an NFEModelabstract NFENetworkElement
getNetworkElement()
Gets the network element where the feature element residesabstract long
getSequence()
Gets the feature element's sequence numberabstract double
getStartPercentage()
Gets the position of the feature element's relative to its link's length.abstract FeatureElement.FeatureElementType
getType()
Gest the type of the feature element.protected void
notifyPropertyChanged(java.lang.String property, java.lang.Object previousValue)
abstract void
setEndPercentage(double endPercentage)
Sets the line feature element's end point relative to its link's length.abstract void
setFeature(NFEFeature feature)
Sets the feature which contains the feature elementabstract void
setNetworkElement(NFENetworkElement networkElement)
Sets the network element where the feature element residesabstract void
setSequence(long sequence)
Sets the feature element's sequence numberabstract void
setStartPercentage(double startPercentage)
Sets the feature element's position relative to its link's length.abstract void
setType(FeatureElement.FeatureElementType type)
Sets the type of the feature element.-
Methods inherited from class oracle.spatial.network.nfe.model.NFEBasicModelObject
addEditionFlag, containsEditionFlag, getEditionFlags, removeEditionFlag, setEditionFlags
-
-
-
-
Field Detail
-
UNKNOWN_KEY_VAL
public static final java.lang.String UNKNOWN_KEY_VAL
- See Also:
- Constant Field Values
-
KEY_VAL_SEPARATOR
public static final java.lang.String KEY_VAL_SEPARATOR
- See Also:
- Constant Field Values
-
PROP_TYPE
public static final java.lang.String PROP_TYPE
- See Also:
- Constant Field Values
-
PROP_KEY
public static final java.lang.String PROP_KEY
- See Also:
- Constant Field Values
-
PROP_START_PERCENTAGE
public static final java.lang.String PROP_START_PERCENTAGE
- See Also:
- Constant Field Values
-
PROP_END_PERCENTAGE
public static final java.lang.String PROP_END_PERCENTAGE
- See Also:
- Constant Field Values
-
PROP_NETWORK_ELEMENT
public static final java.lang.String PROP_NETWORK_ELEMENT
- See Also:
- Constant Field Values
-
PROP_FEATURE
public static final java.lang.String PROP_FEATURE
- See Also:
- Constant Field Values
-
PROP_SEQUENCE
public static final java.lang.String PROP_SEQUENCE
- See Also:
- Constant Field Values
-
-
Method Detail
-
getKey
public abstract java.lang.String getKey()
Gets the feature element's key which is used to uniquely identify a feature element in an NFEModel- Returns:
- a feature element's key
-
setFeature
public abstract void setFeature(NFEFeature feature)
Sets the feature which contains the feature element- Parameters:
feature
- a feature instance
-
getFeature
public abstract NFEFeature getFeature()
Gets the feature element's feature- Returns:
- a feature instance
-
getFeatureLayer
public abstract NFEFeatureLayer getFeatureLayer()
Gets the feature element's feature layer. It is a shorthand for NFEFeatureElement.getFeature().getFeatureLayer()- Returns:
- a feature layer instance
-
setNetworkElement
public abstract void setNetworkElement(NFENetworkElement networkElement)
Sets the network element where the feature element resides- Parameters:
networkElement
- a network element instance (node or link)
-
getNetworkElement
public abstract NFENetworkElement getNetworkElement()
Gets the network element where the feature element resides- Returns:
- a network element instance (node or link)
-
setType
public abstract void setType(FeatureElement.FeatureElementType type)
Sets the type of the feature element. This type determines if the element can be placed over a link or node.- Parameters:
type
- a feature element type
-
getType
public abstract FeatureElement.FeatureElementType getType()
Gest the type of the feature element.- Returns:
- a feature element type
-
setStartPercentage
public abstract void setStartPercentage(double startPercentage)
Sets the feature element's position relative to its link's length. For line feature elements this value sets the start of the line. This property is not used when a feature element is set over a node- Parameters:
startPercentage
- a value between 0 and 1
-
getStartPercentage
public abstract double getStartPercentage()
Gets the position of the feature element's relative to its link's length. This property is not used when a feature element is set over a node- Returns:
- a value between 0 and 1
-
setEndPercentage
public abstract void setEndPercentage(double endPercentage)
Sets the line feature element's end point relative to its link's length. This property is not used for point feature elements.- Parameters:
endPercentage
- a value between 0 and 1
-
getEndPercentage
public abstract double getEndPercentage()
Gets the line feature element's end point relative to its link's length. This property is not used for point feature elements.- Returns:
- a value between 0 and 1
-
setSequence
public abstract void setSequence(long sequence)
Sets the feature element's sequence number- Parameters:
sequence
- the feature element's sequence
-
getSequence
public abstract long getSequence()
Gets the feature element's sequence number- Returns:
- the feature element's sequence
-
createCopy
public abstract NFEFeatureElement createCopy()
Returns object copy.- Returns:
- object copy
-
notifyPropertyChanged
protected void notifyPropertyChanged(java.lang.String property, java.lang.Object previousValue)
-
createKey
public static java.lang.String createKey(long featLayerId, long featureId, long netElemId, long sequence)
-
-