## com.bbn.openmap.layer.mif
Class MIFText

    java.lang.Object
      com.bbn.openmap.omGraphics.geom.BasicGeometry
          com.bbn.openmap.omGraphics.OMGraphic
              com.bbn.openmap.omGraphics.OMText
                  com.bbn.openmap.layer.mif.MIFText

All Implemented Interfaces:
  java.lang.Cloneable, MIFGraphic, OMGeometry, OMGraphicConstants, java.io.Serializable

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, hackProj, HEIGHT, justify, JUSTIFY_CENTER, JUSTIFY_LEFT, JUSTIFY_RIGHT, lat, lon, parsedData, point, polyBounds, pt, rotationAngle, textMatteColor, textMatteStroke, useMaxWidthForBounds, widths`

Fields inherited from class com.bbn.openmap.omGraphics.OMGraphic
`declutterType, displayPaint, edgeMatchesFill, fillPaint, hasLabel, linePaint, matted, mattingPaint, renderType, selected, selectPaint, showEditablePalette, stroke, textureMask`

Fields inherited from class com.bbn.openmap.omGraphics.geom.BasicGeometry
`APP_OBJECT_KEY, appObject, ATT_MAP_KEY, lineType, needToRegenerate, shape, visible`

Fields inherited from interface com.bbn.openmap.omGraphics.OMGraphicConstants

`ADD_GRAPHIC_MASK, 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, INFOLINE, LABEL, LINETYPE_GREATCIRCLE, LINETYPE_RHUMB, LINETYPE_STRAIGHT, LINETYPE_UNKNOWN, LOWER_GRAPHIC_MASK, LOWER_TO_BOTTOM_GRAPHIC_MASK, 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`

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 appropiate 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 viaible at all scale levels.

Methods inherited from class com.bbn.openmap.omGraphics.OMText

`computeBounds, computeStringWidths, countChar, distance, fontToXFont, getBaseline, getData, getFMHeight, getFont, getFontSizer, getJustify, getLat, getLon, getMapLocation, getPolyBounds, getRotationAngle, getShowBounds, getTextMatteColor, getTextMatteStroke, getTheta, getUseMaxWidthForBounds, getX, getY, hasLineTypeChoice, parseData, prepareForRender, rebuildFont, renderString, setBaseline, setData, setFMHeight, setFont, setFont, setFontSizer, setJustify, setLat, setLon, setMapLocation, setRotationAngle, setScaledFont, setShowBounds, setTextMatteColor, setTextMatteStroke, setTheta, setUseMaxWidthForBounds, setX, setY`

Methods inherited from class com.bbn.openmap.omGraphics.OMGraphic

`clone, deselect, getDeclutterType, getDescription, getDescription, getDisplayColor, getDisplayPaint, getEdgeMatchesFill, getFillColor, getFillPaint, getHasLabel, getLineColor, getLinePaint, getMattingPaint, getRenderType, getSelectColor, getSelectPaint, getShowEditablePalette, getStroke, getTextureMask, initLabelingDuringGenerate, isClear, isMatted, isSelected, normalizeDistanceForLineWidth, regenerate, renderLabel, select, setDeclutterType, setEdgeMatchesFill, setFillColor, setFillPaint, setGraphicsColor, setGraphicsForEdge, setGraphicsForFill, setHasLabel, setLabelLocation, setLabelLocation, setLabelLocation, setLineColor, setLinePaint, setMatted, setMattingPaint, setRenderType, setSelectColor, setSelected, setSelectPaint, setShape, setShowEditablePalette, setStroke, setTextureMask, shouldRenderEdge, shouldRenderFill`

Methods inherited from class com.bbn.openmap.omGraphics.geom.BasicGeometry

`_distance, appendShapeEdge, appendShapeEdge, appendShapeEdge, appendShapeEdge, checkAttributeMap, checkAttributeMap, clearAttributes, contains, createAttributeMap, createBoxShape, createShape, createShape, describeShapeDetail, describeShapeDetail, distanceToEdge, draw, fill, getAppObject, getAppObject, getAttribute, getAttributeMap, getAttributes, getLineType, getNeedToRegenerate, getShape, isRenderable, isVisible, putAttribute, removeAttribute, replaceAppObjectWithAttributeMap, setAppObject, setAppObject, setAttributes, setLineType, setNeedToRegenerate, 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.OMGeometry
`clearAttributes, contains, draw, fill, getAppObject, getAttribute, getAttributes, getLineType, getNeedToRegenerate, getShape, isRenderable, isVisible, putAttribute, removeAttribute, setAppObject, setAttributes, setLineType, setNeedToRegenerate, 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 viaible 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 appropiate 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.

  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