com.bbn.openmap.layer.mif
Class MIFText

java.lang.Object
  extended by com.bbn.openmap.omGraphics.geom.BasicGeometry
      extended by com.bbn.openmap.omGraphics.OMGraphicAdapter
          extended by com.bbn.openmap.omGraphics.OMText
              extended by com.bbn.openmap.layer.mif.MIFText
All Implemented Interfaces:
MIFGraphic, OMGeometry, OMGraphic, OMGraphicConstants, java.io.Serializable, java.lang.Cloneable

public class MIFText
extends OMText
implements MIFGraphic, java.io.Serializable

Extension of OMText to provide basic support to ensure that the screen will not become cluttered This extension of OMText defines a property visibleScale. visibleScale is the OpenMap maximum scale at which the text will be rendered all scale values after the visibleScale value will result in the text to be rendered.

If visible scale is set to -1 the text will be rendered all all scale levels.

Author:
Simon Bowen
See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.bbn.openmap.omGraphics.OMText
ASCENT, ASCENT_DESCENT, ASCENT_LEADING, baseline, BASELINE_BOTTOM, BASELINE_MIDDLE, BASELINE_TOP, data, DEFAULT_FONT, DEFAULT_TEXT_MATTE_STROKE, f, fm, fmHeight, fontSizer, HEIGHT, justify, JUSTIFY_CENTER, JUSTIFY_LEFT, JUSTIFY_RIGHT, lat, lon, parsedData, point, polyBounds, pt, renderRotationAngle, rotationAngle, textMatteColor, textMatteStroke, useMaxWidthForBounds, widths
 
Fields inherited from class com.bbn.openmap.omGraphics.OMGraphicAdapter
declutterType, displayPaint, edgeMatchesFill, fillPaint, hasLabel, linePaint, matted, mattingPaint, renderType, selected, selectPaint, showEditablePalette, stroke, textureMask
 
Fields inherited from class com.bbn.openmap.omGraphics.geom.BasicGeometry
attributes, lineType, needToRegenerate, shape, visible
 
Fields inherited from interface com.bbn.openmap.omGraphics.OMGraphicConstants
ADD_GRAPHIC_MASK, APP_OBJECT, BASIC_STROKE, CHANGE_APPEARANCE, clear, DECIMAL_DEGREES, DECLUTTERTYPE_LINE, DECLUTTERTYPE_MOVE, DECLUTTERTYPE_NONE, DECLUTTERTYPE_SPACE, DEFAULT_ROTATIONANGLE, DELETE_GRAPHIC_MASK, DESELECT_GRAPHIC_MASK, DESELECTALL_GRAPHIC_MASK, GRAPHICTYPE_ARC, GRAPHICTYPE_BITMAP, GRAPHICTYPE_CIRCLE, GRAPHICTYPE_ELLIPSE, GRAPHICTYPE_GRAPHIC, GRAPHICTYPE_GRID, GRAPHICTYPE_LINE, GRAPHICTYPE_POINT, GRAPHICTYPE_POLY, GRAPHICTYPE_RASTER, GRAPHICTYPE_RECTANGLE, GRAPHICTYPE_TEXT, INDEX, INFOLINE, LABEL, LINETYPE_GREATCIRCLE, LINETYPE_RHUMB, LINETYPE_STRAIGHT, LINETYPE_UNKNOWN, LOWER_GRAPHIC_MASK, LOWER_TO_BOTTOM_GRAPHIC_MASK, NO_ROTATE, OMGRAPHIC_ELT, OMGRAPHIC_TYPE_ATTR, RADIANS, RAISE_GRAPHIC_MASK, RAISE_TO_TOP_GRAPHIC_MASK, REMOVABLE, RENDERTYPE_LATLON, RENDERTYPE_OFFSET, RENDERTYPE_UNKNOWN, RENDERTYPE_XY, SELECT_GRAPHIC_MASK, SORT_GRAPHICS_MASK, TOOLTIP, UPDATE_GRAPHIC_MASK, UPDATED
 
Constructor Summary
MIFText(float lat, float lon, java.lang.String txt, int justification, float visibleScale)
           
 
Method Summary
 boolean generate(Projection proj)
          Overriden from OMText so that we can handle a flag renderText to signal to the render method if the scale is appropriate to render the text or not.
 float getVisibleScale()
           
 void render(java.awt.Graphics g)
          Overriden from OMText so that we can handle a flag renderText to determine if the text should be rendered or not.
 void setVisibleScale(float visibleScale)
          Sets the scale at which the graphic becomes visible, if set to -1 the graphic is visible at all scale levels.
 
Methods inherited from class com.bbn.openmap.omGraphics.OMText
computeBounds, computeStringWidths, countChar, distance, evaluateRotationAngle, fontToXFont, getBaseline, getData, getFMHeight, getFont, getFontSizer, getJustify, getLat, getLineWidths, getLon, getMapLocation, getMaxLineWidth, getPolyBounds, getRotationAngle, getTextMatteColor, getTextMatteStroke, getUseMaxWidthForBounds, getX, getY, hasLineTypeChoice, parseData, prepareForRender, rebuildFont, renderString, restore, setBaseline, setData, setFMHeight, setFont, setFont, setFontSizer, setJustify, setLat, setLon, setMapLocation, setRotationAngle, setScaledFont, setTextMatteColor, setTextMatteStroke, setUseMaxWidthForBounds, setX, setY
 
Methods inherited from class com.bbn.openmap.omGraphics.OMGraphicAdapter
clone, deselect, getDeclutterType, getDisplayColor, getDisplayPaint, getEdgeMatchesFill, getFillColor, getFillPaint, getHasLabel, getLineColor, getLinePaint, getMattingPaint, getRenderType, getSelectColor, getSelectPaint, getShowEditablePalette, getStroke, getTextureMask, initLabelingDuringGenerate, isClear, isMatted, isSelected, normalizeDistanceForLineWidth, readStroke, readTextureMask, regenerate, renderLabel, renderShape, select, setDeclutterType, setEdgeMatchesFill, setFillColor, setFillPaint, setGraphicsColor, setGraphicsForEdge, setGraphicsForFill, setHasLabel, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLabelLocation, setLineColor, setLinePaint, setMatted, setMattingPaint, setRenderType, setSelectColor, setSelected, setSelectPaint, setShowEditablePalette, setStroke, setTextureMask, shouldRenderEdge, shouldRenderFill, writeStroke, writeTextureMask
 
Methods inherited from class com.bbn.openmap.omGraphics.geom.BasicGeometry
_distance, appendShapeEdge, appendShapeEdge, appendShapeEdge, appendShapeEdge, clearAttributes, contains, createAttributeMap, createBoxShape, createShape, createShape, describeShapeDetail, describeShapeDetail, distanceToEdge, distanceToEdge, draw, draw, fill, fill, getAppObject, getAttribute, getAttributes, getDescription, getLineType, getNeedToRegenerate, getShape, isRenderable, isRenderable, isVisible, putAttribute, removeAttribute, setAppObject, setAttributes, setLineType, setNeedToRegenerate, setShape, setVisible
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.bbn.openmap.omGraphics.OMGraphic
clone, deselect, getDeclutterType, getDisplayColor, getDisplayPaint, getFillColor, getFillPaint, getLineColor, getLinePaint, getMattingPaint, getRenderType, getSelectColor, getSelectPaint, getShowEditablePalette, getStroke, getTextureMask, isMatted, isSelected, normalizeDistanceForLineWidth, regenerate, renderLabel, select, setDeclutterType, setFillPaint, setGraphicsColor, setGraphicsForEdge, setGraphicsForFill, setLabelLocation, setLabelLocation, setLabelLocation, setLinePaint, setMatted, setMattingPaint, setRenderType, setSelected, setSelectPaint, setShowEditablePalette, setStroke, setTextureMask, shouldRenderEdge, shouldRenderFill
 
Methods inherited from interface com.bbn.openmap.omGraphics.OMGeometry
clearAttributes, contains, distanceToEdge, draw, draw, fill, fill, getAppObject, getAttribute, getAttributes, getDescription, getLineType, getNeedToRegenerate, getShape, isRenderable, isRenderable, isVisible, putAttribute, removeAttribute, setAppObject, setAttributes, setLineType, setNeedToRegenerate, setShape, setVisible
 

Constructor Detail

MIFText

public MIFText(float lat,
               float lon,
               java.lang.String txt,
               int justification,
               float visibleScale)
Parameters:
lat - the latitude to display the text string
lon - the longitude to display the text string
txt - the text string to display
justification - from OMText e.g. OMText.JUSTIFY_CENTER
visibleScale - if visible scale is set to -1 the text will be rendered all all scale levels.
Method Detail

setVisibleScale

public void setVisibleScale(float visibleScale)
Sets the scale at which the graphic becomes visible, if set to -1 the graphic is visible at all scale levels.

Specified by:
setVisibleScale in interface MIFGraphic
Parameters:
visibleScale -

getVisibleScale

public float getVisibleScale()
Specified by:
getVisibleScale in interface MIFGraphic

generate

public boolean generate(Projection proj)
Overriden from OMText so that we can handle a flag renderText to signal to the render method if the scale is appropriate to render the text or not.

Specified by:
generate in interface OMGeometry
Overrides:
generate in class OMText
Parameters:
proj - the projection of the window.
Returns:
true if the placement of the string on the window is valid.
See Also:
OMText.pt

render

public void render(java.awt.Graphics g)
Overriden from OMText so that we can handle a flag renderText to determine if the text should be rendered or not.

Specified by:
render in interface OMGeometry
Overrides:
render in class OMText
Parameters:
g - the java.awt.Graphics to put the string on.
See Also:
OMText.fm


Copyright (C) BBNT Solutions LLC; See http://openmap.bbn.com/ for details