public class TLcdAPP6ANode
extends java.lang.Object
getRoot(com.luciad.symbology.app6a.model.ELcdAPP6Standard)
to access the root, and getChildren()
to list its children.
A hierarchy code can be retrieved
from and applied
to
any ILcdAPP6ACoded
instance, unless it does not have a visual representation
.getRoot(com.luciad.symbology.app6a.model.ELcdAPP6Standard)
Modifier and Type | Method and Description |
---|---|
void |
applyOn(ILcdEditableAPP6ACoded aObject)
Adapts the given object so that it belongs to the given hierarchy node.
|
void |
applyTemplateShape(ILcdModelReference aReference,
double aX,
double aY,
double aSize,
ILcd2DEditablePointList aListSFCT)
Applies a suitable shape for this symbology node, at the given location and of the provided size.
|
boolean |
equals(java.lang.Object o) |
static TLcdAPP6ANode |
get(java.lang.String aSIDC,
ELcdAPP6Standard aStandard)
Returns the hierarchy node for the given SIDC and standard.
|
java.util.List<TLcdAPP6ANode> |
getChildren()
Returns a list of the node's children.
|
java.lang.String |
getCodeMask()
Returns a code identifier that corresponds to this node.
Even if the node maps to a symbol with a visual representation, the identifier may or may not be directly usable as an APP-6 symbol code (SIDC). |
java.lang.String |
getName()
Returns a human readable name for this symbol or folder.
|
TLcdAPP6ANode |
getParent()
Returns the parent of this tree node.
|
static TLcdAPP6ANode |
getRoot(ELcdAPP6Standard aStandard)
Returns a node with a hierarchic structure of all symbols of the given standard.
|
ELcdAPP6Standard |
getStandard()
Returns the symbology standard of this tree.
|
int |
hashCode() |
boolean |
isFolderOnly()
Returns true if the node does not represent a symbol, but rather a folder of symbols.
|
java.lang.String |
toString() |
public static TLcdAPP6ANode getRoot(ELcdAPP6Standard aStandard)
aStandard
- the symbology standardpublic static TLcdAPP6ANode get(java.lang.String aSIDC, ELcdAPP6Standard aStandard)
aSIDC
- the SIDCaStandard
- the standardpublic void applyOn(ILcdEditableAPP6ACoded aObject)
aObject
- the symbol to adaptpublic void applyTemplateShape(ILcdModelReference aReference, double aX, double aY, double aSize, ILcd2DEditablePointList aListSFCT)
Applies a suitable shape for this symbology node, at the given location and of the provided size. This method can be used to create a template object (for example used in association with the create controller) or as a convenience for programmatically creating shapes. The template geometry coordinates are derived from the symbol, not the geometry type of the given pointlist. For example: if the symbol represents a polygon, the template geometry will reflect this.
Example:
TLcdGeodeticReference reference = ...; String code = "GUTPR---------X"; TLcdAPP6ANode node = TLcdAPP6ANode.get(code, ELcdAPP6Standard.APP_6A); TLcdEditableAPP6AObject symbol = new TLcdEditableAPP6AObject(); node.applyOn(symbol); // set up the geometry at (0,0) with an approximate size of 2 degrees node.applyTemplateShape(reference, 0, 0, 2, symbol);
aReference
- the coordinate reference of the shapeaX
- x coordinate where the template will be createdaY
- y coordinate where the template will be createdaSize
- the approximate size of the final template.
This is applied to the coordinates in the shape's reference system.
In other words, if the size is 1, the width and height of the geometry will be around 1 model unit
(e.g. degree, meter), depending on the shape.aListSFCT
- A shape that can represent a military symbol.java.lang.IllegalArgumentException
- If this node does not have a code (i.e. the node sits high in the hierarchy, grouping several nodes).public ELcdAPP6Standard getStandard()
public java.lang.String getCodeMask()
ILcdEditableAPP6ACoded
object,
but rather using the applyOn
method.isFolderOnly()
,
ILcdAPP6ACoded.getAPP6ACode()
,
applyOn(ILcdEditableAPP6ACoded)
public boolean isFolderOnly()
public java.util.List<TLcdAPP6ANode> getChildren()
public TLcdAPP6ANode getParent()
null
if this tree node is
the root node.null
.public java.lang.String getName()
public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object