NAME

Math::PlanePath::Base::NSEW -- multi-inheritance mixin for North, South, East, West unit steps

SYNOPSIS

package Math::PlanePath::Foo;
use Math::PlanePath;
use Math::PlanePath::Base::NSEW;
@ISA = ('Math::PlanePath::Base::NSEW', 'Math::PlanePath');

DESCRIPTION

This is a multi-inheritance mixin for paths which take only steps North, South, East and West by distance 1 each time. This includes for example the SquareSpiral and also things like the DragonCurve or CCurve.

The following path descriptive methods are provided

                    value
dx_minimum()         -1
dx_maximum()          1
dy_minimum()         -1
dy_maximum()          1

dsumxy_minimum()     -1
dsumxy_maximum()      1
ddiffxy_minimum()    -1
ddiffxy_maximum()     1
dir_maximum_dxdy()   0,-1    # maximum South

SEE ALSO

Math::PlanePath, Math::PlanePath::Base::Generic

HOME PAGE

http://user42.tuxfamily.org/math-planepath/index.html

LICENSE

Copyright 2014, 2015, 2016, 2017, 2018, 2019, 2020 Kevin Ryde

This file is part of Math-PlanePath.

Math-PlanePath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.

Math-PlanePath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Math-PlanePath. If not, see <http://www.gnu.org/licenses/>.