Class FontExtrusion

java.lang.Object
javax.media.j3d.FontExtrusion

public class FontExtrusion extends Object
The FontExtrusion object is used to describe the extrusion path for a Font3D object. The extrusion path is used in conjunction with a Font2D object. The extrusion path defines the edge contour of 3D text. This contour is perpendicular to the face of the text. The extrusion has it's origin at the edge of the glyph with 1.0 being the height of the tallest glyph. Contour must be monotonic in x.

The shape of the extrusion path is, by default, a straight line from 0.0 to 0.2 (known as a straight bevel). The shape may be modified via the extrusionShape parameter, a Shape object that describes the 3D contour of a Font3D object.

User is responsible for data sanity and must make sure that extrusionShape does not cause intersection of adjacent glyphs or within single glyph. Else undefined output may be generated.

See Also:
  • Constructor Details

    • FontExtrusion

      public FontExtrusion()
      Constructs a FontExtrusion object with default parameters. The default parameters are as follows:
        extrusion shape : null
        tessellation tolerance : 0.01
      A null extrusion shape specifies that a straight line from 0.0 to 0.2 (straight bevel) is used.
      See Also:
    • FontExtrusion

      public FontExtrusion(Shape extrusionShape)
      Constructs a FontExtrusion object with the specified shape, using the default tessellation tolerance. The specified shape is used to construct the edge contour of a Font3D object. Each shape begins with an implicit point at 0.0. Contour must be monotonic in x.
      Parameters:
      extrusionShape - the shape object to use to generate the extrusion path. A null shape specifies that a straight line from 0.0 to 0.2 (straight bevel) is used.
      Throws:
      IllegalArgumentException - if multiple contours in extrusionShape, or contour is not monotonic or least x-value of a contour point is not 0.0f
      See Also:
    • FontExtrusion

      public FontExtrusion(Shape extrusionShape, double tessellationTolerance)
      Constructs a FontExtrusion object with the specified shape, using the specified tessellation tolerance. The specified shape is used to construct the edge contour of a Font3D object. Each shape begins with an implicit point at 0.0. Contour must be monotonic in x.
      Parameters:
      extrusionShape - the shape object to use to generate the extrusion path. A null shape specifies that a straight line from 0.0 to 0.2 (straight bevel) is used.
      tessellationTolerance - the tessellation tolerance value used in tessellating the extrusion shape. This corresponds to the flatness parameter in the java.awt.Shape.getPathIterator method.
      Throws:
      IllegalArgumentException - if multiple contours in extrusionShape, or contour is not monotonic or least x-value of a contour point is not 0.0f
      Since:
      Java 3D 1.2
      See Also:
  • Method Details

    • setExtrusionShape

      public void setExtrusionShape(Shape extrusionShape)
      Sets the FontExtrusion's shape parameter. This parameter is used to construct the 3D contour of a Font3D object.
      Parameters:
      extrusionShape - the shape object to use to generate the extrusion path. A null shape specifies that a straight line from 0.0 to 0.2 (straight bevel) is used.
      Throws:
      IllegalArgumentException - if multiple contours in extrusionShape, or contour is not monotonic or least x-value of a contour point is not 0.0f
      See Also:
    • getExtrusionShape

      public Shape getExtrusionShape()
      Gets the FontExtrusion's shape parameter. This parameter is used to construct the 3D contour of a Font3D object.
      Returns:
      extrusionShape the shape object used to generate the extrusion path
      See Also:
    • getTessellationTolerance

      public double getTessellationTolerance()
      Returns the tessellation tolerance with which this FontExtrusion was created.
      Returns:
      the tessellation tolerance used by this FontExtrusion
      Since:
      Java 3D 1.2