The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Geo::Geos::Noding::SinglePassNoder - Base class for Noders which make a single pass to find intersections.

SYNOPSIS

use Geo::Geos::Coordinate;
use Geo::Geos::PrecisionModel;
use Geo::Geos::Noding::IntersectionAdder;
use Geo::Geos::Noding::NodedSegmentString;
use Geo::Geos::Noding::SimpleNoder;

my $c1 = Geo::Geos::Coordinate->new(0,1);
my $c2 = Geo::Geos::Coordinate->new(2,1);
my $c3 = Geo::Geos::Coordinate->new(1,0);
my $c4 = Geo::Geos::Coordinate->new(1,2);
my $pm = Geo::Geos::PrecisionModel->new;

my $li = Geo::Geos::Algorithm::LineIntersector->new($pm);
my $ia = Geo::Geos::Noding::IntersectionAdder->new($li);

my $sn = Geo::Geos::Noding::SimpleNoder->new($ia);           # => isa 'Geo::Geos::Noding::SinglePassNoder'

my $ss1 = Geo::Geos::Noding::NodedSegmentString->new([$c1, $c2, $c3, $c4]);
$sn->computeNodes([$ss1]);

$sn->getNodedSubstrings->[0];   # => isa 'Geo::Geos::Noding::SegmentString';

SEE ALSO (C++ classes docs)

GEOS C++ Library

geos::noding::SinglePassNoder

SEE ALSO

Geo::Geos

Geo::Geos::Noding::Noder

Geo::Geos::Noding::SegmentString

Geo::Geos::Noding::SimpleNoder

AUTHOR

Ivan Baidakou <i.baydakov@crazypanda.ru>, Crazy Panda, CP Decision LTD

LICENSE

You may distribute this code under the same terms as Perl itself.