Ace::Graphics::GlyphFactory(3pm)

NAME
Ace::Graphics::GlyphFactory - Create Ace::Graphics::Glyphs

SYNOPSIS
  use Ace::Graphics::GlyphFactory;

  my $factory = Ace::Graphics::GlyphFactory($glyph_name,@options);

DESCRIPTION
The Ace::Graphics::GlyphFactory class is used internally by Ace::Graphics::Track and Ace::Graphics::Glyph to hold the options pertaining to a set of related glyphs and creating them on demand. This class is not ordinarily useful to the end-developer.

METHODS
This section describes the class and object methods for Ace::Graphics::GlyphFactory.

  CONSTRUCTORS
There is only one constructor, the new() method. It is ordinarily called by Ace::Graphics::Track, in the make_factory() subroutine.

$factory = Ace::Graphics::GlyphFactory->new($glyph_name,@options)
    The new() method creates a new factory object. The object will create glyphs of type $glyph_name, and using the options specified in @options. Generic options are described in Ace::Graphics::Panel, and specific options are described in each of the Ace::Graphics::Glyph::* manual pages.

  OBJECT METHODS
Once a track is created, the following methods can be invoked:

$glyph = $factory->glyph($feature)
    Given a sequence feature, creates an Ace::Graphics::Glyph object to display it. The various attributes of the glyph are set from the options provided at factory creation time.

$option = $factory->option($option_name [,$new_option])
    Given an option name, returns its value. If a second argument is provided, sets the option to the new value and returns its previous one.

$index = $factory->fgcolor
    Returns the desired foreground color for the glyphs in the form of an GD::Image color index. This may be the one of the special colors gdBrushed and gdStyled. This is only useful while the enclosing Ace::Graphics::Panel object is rendering the object. In other contexts it returns undef.

$scale = $factory->scale([$scale])
    Get or set the scale, in pixels/bp, for the glyph. This is ordinarily set by the Ace::Graphics::Track object just prior to rendering, and called by each glyphs' map_pt() method when performing the rendering.

$color = $factory->bgcolor([$color])
    Get or set the background color for the glyphs.

$color = $factory->fillcolor([$color])
    Get or set the fill color for the glyphs.

$font = $factory->font([$font])
    Get or set the font to use for rendering the glyph.

$color = $factory->fontcolor
    Get the color for the font (to set it, use fgcolor()). This is subtly different from fgcolor() itself, because it will never return a styled color, such as gdBrushed.

$panel = $factory->panel([$panel])
    Get or set the panel that contains the GD::Image object used by this factory.

$index = $factory->translate($color)
@rgb = $factory->rgb($index)
    These are convenience procedures that are passed through to the enclosing Panel object and have the same effect as the like-named methods in that class. See Ace::Graphics::Panel.

BUGS
Please report them.

SEE ALSO
Ace::Sequence, Ace::Sequence::Feature, Ace::Graphics::Panel, Ace::Graphics::Track, Ace::Graphics::Glyph

AUTHOR
Lincoln Stein <lstein@cshl.org>.

Copyright (c) 2001 Cold Spring Harbor Laboratory

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See DISCLAIMER.txt for disclaimers of warranty.