NAME
Math::Geometry::Construction::Point - a free user-defined point
VERSION
Version 0.010
SYNOPSIS
my $p1 = $construction->add_point('x' => 100, 'y' => 150);
my $p2 = $construction->add_point('x' => 50, 'y' => 90,
hidden => 1);
my $p3 = $construction->add_point('x' => 70, 'y' => 130,
style => {stroke => 'red'},
label => 'A',
label_offset_x => 5,
label_offset_y => -5);
DESCRIPTION
An instance of this class represents a user defined free point, as opposed to a derived point, e.g. an intersection point. An instance of this class got its position directly from the user. It is created by using the add_point method of Math::Geometry::Construction.
INTERFACE
Public Attributes
position
Holds a Math::VectorReal object with the position of the point. The z position is expected to be 0. As initialization argument to the constructor, you can also give an array reference instead of a Math::VectorReal object. The object is then created by the constructor. The z value is optional.
Example:
$construction->add_point(position => [1, 4]);
Note that the conversion of a array reference is only done at construction time (at least currently). If you want to change the position later you have to provide a Math::VectorReal object.
size
A point is currently always drawn as a circle. This might become more flexible in the future. size determines the size of the point in the output. For a circle it is its diameter. This parameter is currently undef by default, because the output falls back to radius (see below). When radius is removed, size will default to 6.
radius
This attribute is deprecated and might be removed in a future version. If size is not set then this attribute determines the radius of the output circle. Defaults to 3.
General Output Attributes
See Math::Geometry::Construction::Output.
Methods
draw
Called by the Construction object during output generation. Currently draws a circle of diameter size, but this might become more flexible in the future.
id_template
Class method returning $ID_TEMPLATE, which defaults to 'P%09d'.
DIAGNOSTICS
Exceptions
Warnings
BUGS AND LIMITATIONS
No bugs have been reported. Please report all bugs directly to the author.
AUTHOR
Lutz Gehlen, <perl at lutzgehlen.de>
LICENSE AND COPYRIGHT
Copyright 2011 Lutz Gehlen.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.