この妙日本語訳はエキサイト翻訳:英語翻訳を利用しつつ、のーみそコネコネして作成しました。
GD::Arrowモジュールのバージョンは0.01です。
目次
名前
GD::Arrow – GDを利用して矢印を描画する
概略
use GD; use GD::Arrow; my $width = 8; my ($x1, $y1) = (100, 10); my ($x2, $y2) = (100, 190); my ($x3, $y3) = (10, 30); my ($x4, $y4) = (190, 75); my $arrow = GD::Arrow::Full->new( -X1 => $x1, -Y1 => $y1, -X2 => $x2, -Y2 => $y2, -WIDTH => $width, ); my $image = GD::Image->new(200, 200); my $white = $image->colorAllocate(255, 255, 255); my $black = $image->colorAllocate(0, 0, 0); my $blue = $image->colorAllocate(0, 0, 255); my $yellow = $image->colorAllocate(255, 255, 0); $image->transparent($white); $image->filledPolygon($arrow,$blue); $image->polygon($arrow,$black); my $half_arrow_1 = GD::Arrow::LeftHalf->new( -X1 => $x3, -Y1 => $y3, -X2 => $x4, -Y2 => $y4, -WIDTH => $width, ); my $half_arrow_2 = GD::Arrow::LeftHalf->new( -X1 => $x4, -Y1 => $y4, -X2 => $x3, -Y2 => $y3, -WIDTH => $width ); $image->filledPolygon($half_arrow_1,$blue); $image->polygon($half_arrow_1,$black); $image->filledPolygon($half_arrow_2,$yellow); $image->polygon($half_arrow_2,$black); open IMAGE, "> image.png" or die $!; binmode(IMAGE, ":raw"); print IMAGE $image->png; close IMAGE; exit(0);
説明
これは2点の間に矢を描くのに使用される、GD::polygonのサブクラスです。 GD::Arrow::Full 2点の間に完全な矢を描きます。 |\ +----------------------+ \ (X2, Y2) * * (X1, Y1) +----------------------+ / |/ GD::Arrow::RightHalf 2点の間に半分の矢を描きます。 (X2, Y2) *-------------------------* (X1, Y1) +----------------------+ / |/ GD::Arrow::LeftHalf 2点の間に半分の矢を描きます。 |\ +----------------------+ \ (X2, Y2) *-------------------------* (X1, Y1)
参照
GD::Polygon
クレジット
The equations used to determine the critical verticies to represent a GD::Arrow
2点からGD::Arrowのために使用される方程式は、オノヒデキのmakefeedmapソフトウェアに基づいています。
Makefeedmapは、http://www.ono.org/software/makefeedmap/で参照することができます。
作者
Todd Caine, <todd@pobox.com>
著作とライセンス
Copyright 2004 by Todd Caine
このライブラリはフリーソフトウェアです。
Perlと同じ条件で再配布、または変更することが出来ます。
更新履歴
- 2008-04-03
- サイト移動に伴うHTMLの修正(旧URI:[廃止])
- 2006-06-13
- 公開