NAME¶
PolygonComp, PolygonView, PSPolygon - polygon component subject, view, and
PostScript external representation
SYNOPSIS¶
#include <Unidraw/Components/polygon.h>
DESCRIPTION¶
PolygonComp is a VerticesComp that defines a polygon. It uses an SF_Polygon
graphic to store its graphical attributes. PolygonView is a VerticesView for
displaying the polygon. PSPolygon is a PSVertices that externalizes the
subject's information in PostScript form.
POLYGONCOMP PUBLIC OPERATIONS¶
- PolygonComp(SF_Polygon* = nil)
- The constructor takes an optional stroked-filled polygon
graphic that defines the attributes of the polygon.
- SF_Polygon* GetPolygon()
- Return the Polygon graphic that defines the polygon's
attributes. GetPolygon is simply a more specific form of the GetGraphic
operation.
POLYGONVIEW PUBLIC OPERATIONS¶
- PolygonView(PolygonComp* = nil)
- Create an PolygonView, optionally supplying the
subject.
- virtual Manipulator* CreateManipulator(
- Viewer*, Event&, Transformer*, Tool*
- )
- virtual void InterpretManipulator(Manipulator*)
- PolygonView redefines its response to manipulation with a
GraphicCompTool. The user clicks the left mouse button to specify each
vertex and clicks with the middle mouse button to specify the final
vertex. Vertex positioning will be constrained by gravity, if any.
PolygonView also defines a response to the ReshapeTool, allowing the user
to click on one of its vertices to reposition it. The subject is actually
replaced (via ReplaceCmd) with a new PolygonComp subject reflecting the
repositioned vertex. Repositioning will be influenced by gravity.
- PolygonComp* GetPolygonComp()
- Return the subject.
PSPOLYGON PUBLIC OPERATIONS¶
- PSPolygon(PolygonComp* = nil)
- Construct a PostScript external representation of the given
subject, if any.
PSPOLYGON PROTECTED OPERATIONS¶
- virtual const char* Name()
- PSPolygon identifies itself as "Poly" in the
PostScript output.
SEE ALSO¶
Event(3I), GraphicComp(3U), GraphicCompTool(3U), GraphicView(3U), Grid(3U),
PatternCmd(3U), PostScriptView(3U), ReshapeTool(3U), Rubband(3I),
Transformer(3I), VerticesComp(3U), Viewer(3U), align(3U), edit(3U),
polygons(3U)