名前¶
Games::Go::SGF - Parse and dissect Standard Go Format files
Games::Go::SGF - SGFファイルの解析と分析
概要¶
use Games::Go::SGF;
my $sgf = new Games::Go::SGF($sgfdata);
print "Game played on ".$sgf->date."\n";
print $sgf->white. " (W) vs. ".$sgf->black." (B)\n";
print "Board size: ".$sgf->size.". Komi: ".$sgf->komi."\n";
while ($move = $sgf->move($move_no++)) {
print "$move_no: ".$move->move,"\n";
}
説明¶
This is a very simple SGF file parser, of currently limited functionality. It can read and step through SGF files, follow variations, and so on. It's good enough for getting simple statistics about games of Go, and building up Games::Go::Board
objects representing games stored as SGF.
これは非常に単純なSGFファイルのパーサで、現在のところ機能的に制限がある。 このモジュールを使って、SGFファイルの読み込みとステップ、手合いの変化のフォロー などができる。碁の試合に関する簡単な統計をとったり、SGFとして記録された試合を 表すGames::Go::Board
オブジェクトの構築を行うには十分役に立つだろう。
$sgf->move
returns either a normal Games::Go::SGF::Node
or a Games::Go::SGF::Variation
object. They behave exactly the same, but the variation object has the additional methods mainline()
to get the main line of the game, variation($n)
to get the first node in the n'th variation, and variations
to retrieve an array of variations. $variation->move
will, by default, follow the mainline.
$sgf->move
は通常のGames::Go::SGF::Node
オブジェクトか、 Games::Go::SGF::Variation
オブジェクトを返す。それらは全く同じように 振舞うが、Variationオブジェクトの方はメソッドが追加されている。 mainline()
はゲームのメインラインを得ることができる。 variation($n)
はn回目の変化の最初のノードを得ることができる。 そしてvariations
は変化を保持した配列を手繰り寄せる。 $variation->move
はデフォルトでメインラインを追いかける。
TODO¶
Better documentation is planned; as is the ability to write as well as read SGF files.
よりよいドキュメントを計画中。SGFファイルの読み込みと同様に 書き込みができるようにする。
作者¶
Simon Cozens simon@cpan.org
参考¶
Games::Go::Board, http://www.red-bean.com/sgf/