NAME
Math::PlanePath::MathImageSquareReplicate -- replicating squares
SYNOPSIS
use Math::PlanePath::MathImageSquareReplicate;
my $path = Math::PlanePath::MathImageSquareReplicate->new;
my ($x, $y) = $path->n_to_xy (123);
DESCRIPTION
In progress.
This path is a self-similar replicating square,
40--39--38 31--30--29 22--21--20
| | | | | |
41 36--37 32 27--28 23 18--19
| | |
42--43--44 33--34--35 24--25--26
49--48--47 4-- 3-- 2 13--12--11
| | | | | |
50 45--46 5 0-- 1 14 9--10 <- Y=0
| | |
51--52--53 6-- 7-- 8 15--16--17
58--57--56 67--66--65 76--75--74
| | | | | |
59 54--55 68 63--64 77 72--73
| | |
60--61--62 69--70--71 78--79--80
^
X=0 1 2 3 4
The base shape is the initial N=0 to N=8 section,
4 3 2
5 0 1
6 7 8
It then repeats.
A given replication extends to
N = 0 to 9^level - 1
- 3^level < X < 3^level
- 3^level < Y < 3^level
FUNCTIONS
$path = Math::PlanePath::MathImageSquareReplicate->new ()
-
Create and return a new path object.
($x,$y) = $path->n_to_xy ($n)
-
Return the X,Y coordinates of point number
$n
on the path. Points begin at 0 and if$n < 0
then the return is an empty list.