|
SGT Home | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Object
|
+--java.awt.Component
|
+--gov.noaa.pmel.sgt.Layer
A Layer contains a single Graph object
and multiple LayerChild objects.
There can be many Layer objects associated with each
Pane object and
the Layer objects can share Transform
and Axis objects, but are not
required to. The Layer is also where keys
related to Color, Vectors, and
Lines are attached. The can be at most one key of each type attached to a
Layer.
The Layer object transforms physical coordinates
to device coordinates. All objects that attach to a
Layer use physical coordinates.
The exception to this is the Graph object
(and its children), since these objects transform user
coordinates to physical coordinates.
The following is a simple example of using the Pane,
Layer, and SGLabel objects
together. In this example, the Pane and
Layer objects are created such that,
in the absence of any resizing, 100 pixels is equal to 1.0
physical units. Two labels are created, the first contains
the current time and is located in the bottom left of
the Layer. The second label is a title that is
positioned near the top and centered.
Pane pane;
Layer layer;
SGLabel title;
SGLabel label;
GeoDate stime;
...
//
// Instantiate Pane, Layer, and GeoDate objects.
//
pane = new Pane("test pane", new Dimension(400, 300));
pane.setLayout(new StackedLayout());
layer = new Layer("Test Layer", new Dimension2D(4.0, 3.0));
stime = new GeoDate();
//
// Instatiate an SGLabel object as label, set its text to the
// current time and position it near the lower-left corner
// of the layer.
//
label = new SGLabel("test", stime.toString(), new Point2D.Double(0.05, 0.05));
//
// Set properties for label.
//
label.setAlign(SGLabel.BOTTOM, SGLabel.LEFT);
label.setColor(Color.magenta);
label.setHeightP(0.15);
label.setFont(new Font("Dialog", Font.PLAIN, 10));
//
// Add label to layer.
//
layer.addChild(label);
//
// Instatiate an SGLabel object as title, set its text and position
// it near the top of the layer and centered. Set the properties
// for title.
//
title = new SGLabel("title", "SciGraph Test!", new Point2D.Double(2.125, 2.9));
title.setAlign(SGLabel.TOP, SGLabel.CENTER);
title.setHeightP(0.25);
title.setFont(new Font("Helvetica", Font.BOLD, 14));
//
// Add title to layer and add layer to pane.
//
layer.addChild(title);
pane.add(layer);
Pane,
Graph,
ColorKey,
SGLabel,
LineKey,
GeoDate, Serialized Form| Fields inherited from class java.awt.Component |
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
| Fields inherited from interface java.awt.image.ImageObserver |
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| Constructor Summary | |
Layer()
Default constructor for Layer. |
|
Layer(java.lang.String id)
Create a Layer object. |
|
Layer(java.lang.String id,
Dimension2D psize)
Create a Layer object. |
|
| Method Summary | |
void |
addChild(LayerChild child)
Add a LayerChild to the Layer. |
java.util.Enumeration |
childElements()
Create a Enumeration for the
LayerChild's associated with the Layer. |
Layer |
copy()
Copy the Layer and its attached classes. |
Rectangle2D.Double |
getBoundsP()
Get the Layer bounds in physical coordinates. |
LayerChild |
getChild(java.lang.String labid)
Get a child associated with the Layer. |
Graph |
getGraph()
Get the Graph attached to the layer. |
java.lang.String |
getId()
Get the Layer identifier. |
AbstractPane |
getPane()
Get the Pane the Layer is associated
with. |
Dimension2D |
getSizeP()
Get the Layer size in physical coordinates. |
double |
getXDtoP(int xd)
Transform device units to physical for the x direction. |
int |
getXPtoD(double xp)
Transform physical units to device for x coordinate. |
double |
getYDtoP(int yd)
Transform device units to physical for the y direction. |
int |
getYPtoD(double yp)
Transform physcial units to device for y coordinate. |
boolean |
isChildAttached(LayerChild child)
Tests if a LayerChild is attached to the
Layer. |
boolean |
isDataInLayer(java.lang.String id)
Checks to see if a data id matches that data attached to the Graph. |
void |
modified(java.lang.String mess)
Used internally by sgt. |
void |
removeAllChildren()
Remove all LayerChild objects from the Layer. |
void |
removeChild(LayerChild child)
Remove a LayerChild object from the Layer. |
void |
removeChild(java.lang.String labid)
Remove a LayerChild object from the Layer. |
void |
setBounds(int x,
int y,
int w,
int h)
Set the bounds of the Layer in device units. |
void |
setBounds(java.awt.Rectangle bnds)
Set the bounds of the Layer in device units. |
boolean |
setGraph(Graph gr)
Associate a graph with the layer. |
void |
setId(java.lang.String id)
Set the Layer identifier. |
void |
setLocation(int x,
int y)
Set the location of the Layer in device units. |
void |
setLocation(java.awt.Point pt)
Set the location of the Layer in device units. |
void |
setSize(java.awt.Dimension sze)
Set the size of the Layer in device units. |
void |
setSize(int w,
int h)
Set the size of the Layer in device units. |
void |
setSizeP(Dimension2D psize)
Set the size of the Layer in physical coordinates. |
java.lang.String |
toString()
Get a String representation of the
Layer. |
| Methods inherited from class java.awt.Component |
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, deliverEvent, disable, dispatchEvent, doLayout, enable, enable, enableInputMethods, getAccessibleContext, getAlignmentX, getAlignmentY, getBackground, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getInputContext, getInputMethodRequests, getListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getName, getParent, getPeer, getPreferredSize, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isDisplayable, isDoubleBuffered, isEnabled, isFocusTraversable, isLightweight, isOpaque, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFont, setForeground, setLocale, setName, setVisible, show, show, size, transferFocus, update, validate |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
public Layer(java.lang.String id)
Layer object.
The Layer is created with a default
width and height equal to 1.0.id - identifier for Layer
public Layer(java.lang.String id,
Dimension2D psize)
Layer object.
The Layer is created with the specified
dimensions and identifier.id - identifier for Layerpsize - The physical dimensions of the Layerpublic Layer()
Layer.
The Layer is created with an
empty identifier and a width and height equal to 1.0f.| Method Detail |
public void setSize(java.awt.Dimension sze)
Layer in device units.setSize in class java.awt.Componentsze - dimension of the Layer
public void setSize(int w,
int h)
Layer in device units.setSize in class java.awt.Componentw - width of the Layerh - height of the Layerpublic void setLocation(java.awt.Point pt)
Layer in device units.setLocation in class java.awt.Componentpt - location of the Layer
public void setLocation(int x,
int y)
Layer in device units.setLocation in class java.awt.Componentx - horizontal location of the Layery - vertical location of the Layer
public void setBounds(int x,
int y,
int w,
int h)
Layer in device units.setBounds in class java.awt.Componentx - horizontal location of the Layery - vertical location of the Layerw - width of the Layerh - height of the Layerpublic void setBounds(java.awt.Rectangle bnds)
Layer in device units.setBounds in class java.awt.Componentbnds - bounds of the Layerpublic int getXPtoD(double xp)
public int getYPtoD(double yp)
public double getXDtoP(int xd)
xd - device x coordinatepublic double getYDtoP(int yd)
yd - device y coordinatepublic Layer copy()
Layer and its attached classes.public boolean setGraph(Graph gr)
Graphpublic Graph getGraph()
Graph attached to the layer.Graph.public void addChild(LayerChild child)
LayerChild to the Layer.
Each Layer can contain as many children as needed.child - A LayerChildSGLabel,
LineKey,
ColorKey,
Ruler
public void removeChild(LayerChild child)
throws ChildNotFoundException
LayerChild object from the Layer.child - A ChildLayer object associated with the LayerChildNotFoundException - The child is not associated with the LayerSGLabel,
LineKey,
ColorKey,
Ruler
public void removeChild(java.lang.String labid)
throws ChildNotFoundException
LayerChild object from the Layer.id - An identifier for a LayerChild associated with the LayerChildNotFoundException - The child is not associated with the LayerSGLabel,
LineKey,
ColorKey,
Rulerpublic boolean isChildAttached(LayerChild child)
LayerChild is attached to the
Layer.public void removeAllChildren()
LayerChild objects from the Layer.
public LayerChild getChild(java.lang.String labid)
throws ChildNotFoundException
Layer.labid - A LayerChild object identifierChildNotFoundException - The child is not associated with the LayerSGLabel,
LineKey,
ColorKey,
Rulerpublic java.util.Enumeration childElements()
Enumeration for the
LayerChild's associated with the Layer.Enumeration for the LayerChild objects.Enumeration,
SGLabel,
LineKey,
ColorKey,
Rulerpublic void setSizeP(Dimension2D psize)
Layer in physical coordinates.psize - The physical size of the Layer.public Dimension2D getSizeP()
Layer size in physical coordinates.
This returns the physical coordinate size
of the Layer.Dimension2D containing the physical size of the Layer.Dimension2Dpublic Rectangle2D.Double getBoundsP()
Layer bounds in physical coordinates.
The origin of the bounding rectangle,
for a Layer, is always (0,0).Rectangle2D.Double containing the physical bounds of the Layer.Rectangle2D.Doublepublic java.lang.String getId()
Layer identifier.public void setId(java.lang.String id)
Layer identifier.id - identifierpublic AbstractPane getPane()
Pane the Layer is associated
with.Panepublic void modified(java.lang.String mess)
public java.lang.String toString()
String representation of the
Layer.toString in class java.awt.ComponentString representationpublic boolean isDataInLayer(java.lang.String id)
Graph.
|
SGT Home | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||