public class FrameFactory extends Object
All shapes are drawn inside a bounding rectangle whose lower left corner is at the origin. Shapes with a leader use an offset point that indicate where the leader triangle should point at - it usually has a negative y since the leader connects at the bottom of the frame (at y = 0).
AbstractAnnotation| Constructor and Description | 
|---|
| FrameFactory() | 
| Modifier and Type | Method and Description | 
|---|---|
| static DoubleBuffer | createShapeBuffer(String shape,
                 double width,
                 double height,
                 int cornerRadius,
                 DoubleBuffer buffer)Create a vertex buffer for a shape with the specified width, height and corner radius. | 
| static DoubleBuffer | createShapeWithLeaderBuffer(String shape,
                           double width,
                           double height,
                           Point leaderOffset,
                           double leaderGapWidth,
                           int cornerRadius,
                           DoubleBuffer buffer)Create a vertex buffer for a shape with the specified width, height and corner radius. | 
| static void | drawBuffer(DrawContext dc,
          int mode,
          DoubleBuffer verts) | 
| static void | drawBuffer(DrawContext dc,
          int mode,
          int count,
          DoubleBuffer verts)Draw a vertex buffer in a given gl mode. | 
| static void | drawBuffer(DrawContext dc,
          int mode,
          int count,
          DoubleBuffer verts,
          DoubleBuffer coords)Draw a vertex buffer with texture coordinates in a given gl mode. | 
| static void | drawShape(DrawContext dc,
         String shape,
         double width,
         double height,
         int glMode,
         int cornerRadius)Draw a shape with the specified width and height, gl mode and corner radius. | 
| static void | drawShapeWithLeader(DrawContext dc,
                   String shape,
                   double width,
                   double height,
                   Point leaderOffset,
                   double leaderGapWidth,
                   int glMode,
                   int cornerRadius)Draw a shape with the specified width and height, gl mode and corner radius. | 
public static DoubleBuffer createShapeBuffer(String shape, double width, double height, int cornerRadius, DoubleBuffer buffer)
SHAPE_RECTANGLE - set to zero for square corners.shape - the shape - can be one of SHAPE_RECTANGLE or SHAPE_ELLIPSE.width - the width of the overall shape.height - the height of the shape.cornerRadius - the rounded corners radius. Set to zero for square corners.buffer - the buffer to store shape vertices, or null to allocate a new buffer.public static DoubleBuffer createShapeWithLeaderBuffer(String shape, double width, double height, Point leaderOffset, double leaderGapWidth, int cornerRadius, DoubleBuffer buffer)
SHAPE_RECTANGLE - set to
 zero for square corners.shape - the shape - can be one of SHAPE_RECTANGLE or SHAPE_ELLIPSE.width - the width of the overall shape.height - the height of the shape excluding the leader.leaderOffset - the coordinates of the point to which the leader leads.leaderGapWidth - the starting width of the leader shape.cornerRadius - the rounded corners radius. Set to zero for square corners.buffer - the buffer to store shape vertices, or null to allocate a new buffer.public static void drawBuffer(DrawContext dc, int mode, DoubleBuffer verts)
public static void drawBuffer(DrawContext dc, int mode, int count, DoubleBuffer verts)
GL.GL_TRIANGLE_FAN and GL.LINE_STRIP.dc - the current DrawContext.mode - the desired drawing GL mode.count - the number of vertices to draw.verts - the vertex buffer to draw.public static void drawBuffer(DrawContext dc, int mode, int count, DoubleBuffer verts, DoubleBuffer coords)
GL.GL_TRIANGLE_FAN and GL.LINE_STRIP.dc - the current DrawContext.mode - the desired drawing GL mode.count - the number of vertices to draw.verts - the vertex buffer to draw.coords - the buffer containing the shape texture coordinates.public static void drawShape(DrawContext dc, String shape, double width, double height, int glMode, int cornerRadius)
GL.GL_TRIANGLE_FAN and GL.LINE_STRIP. Corner radius only apply to
 SHAPE_RECTANGLE - set to zero for square corners.dc - the current DrawContext.shape - the shape - can be one of SHAPE_RECTANGLE or SHAPE_ELLIPSE.width - the width of the overall shape.height - the height of the shape.glMode - the GL mode - can be one of GL.GL_TRIANGLE_FAN and GL.LINE_STRIP.cornerRadius - the rounded corners radius. Set to zero for square corners.public static void drawShapeWithLeader(DrawContext dc, String shape, double width, double height, Point leaderOffset, double leaderGapWidth, int glMode, int cornerRadius)
GL.GL_TRIANGLE_FAN and
 GL.LINE_STRIP. Corner radius only apply to SHAPE_RECTANGLE - set to zero for square
 corners.dc - the current DrawContext.shape - the shape - can be one of SHAPE_RECTANGLE or SHAPE_ELLIPSE.width - the width of the overall shape.height - the height of the shape excluding the leader.leaderOffset - the coordinates of the point to which the leader leads.leaderGapWidth - the starting width of the leader shape.glMode - the GL mode - can be one of GL.GL_TRIANGLE_FAN and
                       GL.LINE_STRIP.cornerRadius - the rounded corners radius. Set to zero for square corners.