JGraph X 1.4.0.9

## com.mxgraph.shape
Class mxCurveLabelShape

    java.lang.Object
      com.mxgraph.shape.mxCurveLabelShape

All Implemented Interfaces:
  mxITextShape

    public class mxCurveLabelShape

extends java.lang.Object
implements mxITextShape

Draws the edge label along a curve derived from the curve describing the edge's path

Nested Class Summary
`class` `mxCurveLabelShape.LabelGlyphCache` Utility class to describe the characteristics of each glyph of a branch branch label.
`class` `mxCurveLabelShape.LabelPosition` Utility class that stores details of how the label is positioned on the curve

Field Summary
`protected mxCurve` `curve` Cache of the points between which drawing straight lines views as a curve
`static double` `LABEL_BUFFER` Buffer at both ends of the label
`protected mxRectangle` `labelBounds` Cache of the bounds of the label
`protected mxCurveLabelShape.LabelGlyphCache[]` `labelGlyphs` Cache of information describing characteristics relating to drawing each glyph of this label
`protected mxCurveLabelShape.LabelPosition` `labelPosition` ADT to encapsulate label positioning information
`protected double` `labelSize` Cache of the total length of the branch label
`protected java.awt.Font` `lastFont` Cache of the label font
`protected java.util.List<mxPoint>` `lastPoints` Cache of the last set of guide points that this label was calculated for
`protected java.lang.String` `lastValue` Cache of the label text
`protected boolean` `rotationEnabled`
`protected mxCellState` `state` Cache the state associated with this shape

Constructor Summary
`mxCurveLabelShape(mxCellState state, mxCurve value)`

Method Summary
`protected void` `calculationLabelPosition(java.util.Map<java.lang.String,java.lang.Object> style, java.lang.String label)` Hook method to override how the label is positioned on the curve
`mxCurve` `getCurve()`
`boolean` `getRotationEnabled()`
`boolean` `intersectsRect(mxRectangle rect)` Returns whether or not the rectangle passed in hits any part of this curve.
`void` `paintShape(mxGraphics2DCanvas canvas, java.lang.String text, mxCellState state, java.util.Map<java.lang.String,java.lang.Object> style)`
`protected void` `postprocessGlyph(mxCurve curve, int j, double currentPos)` Hook for sub-classers to perform additional processing on each glyph
`void` `setCurve(mxCurve curve)`
`void` `setRotationEnabled(boolean value)`
`mxRectangle` `updateLabelBounds(java.lang.String label, java.util.Map<java.lang.String,java.lang.Object> style)` Updates the cached position and size of each glyph in the edge label.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### lastValue

    protected java.lang.String lastValue

  Cache of the label text

### lastFont

    protected java.awt.Font lastFont

  Cache of the label font

### lastPoints

    protected java.util.List<mxPoint> lastPoints

  Cache of the last set of guide points that this label was calculated for

### curve

    protected mxCurve curve

  Cache of the points between which drawing straight lines views as a curve

### state

    protected mxCellState state

  Cache the state associated with this shape

### labelGlyphs

    protected mxCurveLabelShape.LabelGlyphCache[] labelGlyphs

  Cache of information describing characteristics relating to drawing each glyph of this label

### labelSize

    protected double labelSize

  Cache of the total length of the branch label

### labelBounds

    protected mxRectangle labelBounds

  Cache of the bounds of the label

### labelPosition

    protected mxCurveLabelShape.LabelPosition labelPosition

  ADT to encapsulate label positioning information

### LABEL_BUFFER

    public static double LABEL_BUFFER

  Buffer at both ends of the label

### rotationEnabled

    protected boolean rotationEnabled

Constructor Detail

### mxCurveLabelShape

    public mxCurveLabelShape(mxCellState state,
                             mxCurve value)

Method Detail

### getRotationEnabled

    public boolean getRotationEnabled()

### setRotationEnabled

    public void setRotationEnabled(boolean value)

### paintShape

    public void paintShape(mxGraphics2DCanvas canvas,
                           java.lang.String text,
                           mxCellState state,
                           java.util.Map<java.lang.String,java.lang.Object> style)

  Specified by:
    `paintShape` in interface `mxITextShape`

### updateLabelBounds

    public mxRectangle updateLabelBounds(java.lang.String label,
                                         java.util.Map<java.lang.String,java.lang.Object> style)

  Updates the cached position and size of each glyph in the edge label.

  Parameters:
    `label` - the entire string of the label.
    `style` - the edge style

### postprocessGlyph

    protected void postprocessGlyph(mxCurve curve,
                                    int j,
                                    double currentPos)

  Hook for sub-classers to perform additional processing on each glyph

  Parameters:
    `j` - the index of the label
    `currentPos` - the distance along the label curve the glyph is

### intersectsRect

    public boolean intersectsRect(mxRectangle rect)

  Returns whether or not the rectangle passed in hits any part of this curve.

  Parameters:
    `rect` - the rectangle to detect for a hit
  Returns:
    whether or not the rectangle hits this curve

### calculationLabelPosition

    protected void calculationLabelPosition(java.util.Map<java.lang.String,java.lang.Object> style,
                                            java.lang.String label)

  Hook method to override how the label is positioned on the curve

  Parameters:
    `style` - the style of the curve
    `label` - the string label to be displayed on the curve

### getCurve

    public mxCurve getCurve()

  Returns:
    the curve

### setCurve

    public void setCurve(mxCurve curve)

  Parameters:
    `curve` - the curve to set

JGraph X 1.4.0.9

Copyright (c) 2010 Gaudenz Alder. All rights reserved.