子供の頃、折り紙を折ったことがあったが、老年になって折り紙をしてみようとしても、折り方を忘れてしまった。そこで、子供向けの折り紙の本を参考に、風船や鶴を折ってみた。折り紙の本には、基本の折り方として、三角おり、たたみおり、ざぶとんおり、ふくろおり、とりおり、さかなおり、あやめおり、いえおり、つるおり、などが紹介されている。そうか、何かの形を真似た折り紙は、これら基本の折り方の組合せで構成されているということか。
そこで、折り紙の基本形を幾何学的に表現するとどうなるのか、追求することにした。折り紙用紙の形である正方形は、xy平面上で座標(0,0)-(1,0),(1,0)-(1,1),(1,1)-(0,1),(0,1)-(0,0)の4つの線分で囲まれた領域で表現できる。
まず、三角おりは、関数y=xを境界として、y<xの領域に含まれるすべての点(x,y)をy>xの領域に含まれる対応する点(x’,y’)に移したものであることが分かる。この変換によって、点(1,0)が点(0,1)に移る。式で書くと、
x’=a11x+a12y (1-1)
y’=a21x+a22y (1-2)
であり、a11=0,a12=1,a21=1,a22=0は、行列を構成する。
次に、たたみおりの最初のステップは、関数y=0.5を境界として、y<0.5の領域に含まれるすべての点(x,y)をy>0.5の領域に含まれる対応する点(x’,y’)に移したものであることが分かる。この変換によって、点(0,0)は点(0,1)に、点(1,0)は点(1,1)に移る。式で書くと、
x’=a11x+a12y+x0 (2-1)
y’=a21x+a22y+y0 (2-2)
であり、a11=1,a12=0,a21=0,a22=-1は、行列を構成する。(x0,y0)=(0,1)である。たたみおりの最初のステップとして、関数x=0.5を境界として、x<0.5の領域に含まれるすべての点(x,y)をx>0.5の領域に含まれる対応する点(x’,y’)に移したものである、としても同様の式となる。
たたみおりの第2、第3のステップは、関数y=0.75を境界として折り返し、関数y=0.25を境界として折り返すものである。いずれも、(2-1)(2-2)式で表現できる。
ざぶとんおりは、たたみおりと、正方形の1/4領域を使った三角おりから構成されるから、それぞれのステップは、(2-1)(2-2)式で表現できる。
ふくろおりも同様であり、斜めの直線を境界として2つの領域を折り重ねるものであるから、座標軸の回転と原点の平行移動を行っているのであり、(2-1)(2-2)式で表現できる。
残りの、とりおり、さかなおり、あやめおり、いえおり、つるおりなどすべての基本形は、直線を境界として2つの領域を重ねているだけであり、(2-1)(2-2)式で表現できる線形変換に他ならない。
折り紙の世界は、ユークリッド幾何学が適用される世界である。ユークリッド空間における線形変換は、領域(x,y)上の2点(x1,y1),(x2,y2)間の距離を不変とするような変換である。
(2-1)(2-2)式を用いて、2点(x1’,y1’),(x2’,y2’)間の距離の2乗:(x2’-x1’)2+(y2’-y1’)2を(x1,y1),(x2,y2)で書き下す式をつくると、任意の(x,y)について恒等的に距離を不変とするためには、行列a11~a22に、
a112+a212=1;a11a12=0;a21a22=0;a122+a222=1 (3)
の条件がつくことが分かる。領域(x,y)上の三角形を距離不変の下で線形変換すると、領域(x’,y’)上の合同な三角形に移るので、この種の線形変換のことを合同変換ということもある。
(2-1)(2-2)式で表現される一般的な線形変換は、ユークリッド空間の線形変換を含むより広い範囲の変換を示すものであるので、距離が不変とならないような変換も含まれる。
2次元空間上の線形変換を抽象的に表現するならば、領域(x,y)上の任意の点を領域(x’,y’)に射影する(あるいは移す)変換であって、ユークリッド幾何学では任意の2点間の距離を不変とするような変換、と言うことができる。そこで、2次元空間上の線形変換を3次元空間上の変換に拡張することを考える。3次元空間についても、上記の抽象的な表現がそのまま3次元に移行できて、領域(x,y,z)上の任意の点を領域(x’,y’,z’)に射影する変換であって、ユークリッド空間では、任意の2点間の距離を不変とするような変換、ということになる。
そこで、折り紙を折りたたむ途中の折り紙の3次元表現を考える。例として三角おりの場合を考え、x-y平面上にある折り紙用紙を関数y=xを境界として徐々に谷おりしていく場合を考える。元のx-y平面と折り曲げ途中のx’-y’平面との角度をtとする。簡単のために、関数y=xを新たなy軸とし、最初のx-y平面上の点(x,y)を(x,y,z)で表して(0,-r,0)とする。そうすると、x-y平面が角度tだけ折り曲がったときの(x’,y’,z’)座標は、(0,-rcost,rsint)となる。
これから、一般に座標点(x,y,z)を(x’,y’,z’)に移す変換は、
x’=x (4-1)
y’=ycost+zsint (4-2)
z’=-ysint+zcost (4-3)
で表現できる。
座標点(x,y,z),(x’,y’,z’)を各々、ベクトルr,r’で表現する。ベクトルrに行列Aを作用させると(掛けると)、ベクトルr’が得られる。行列Aは、a11=1,a12=a13=a21=a31=0,a22=cost,a23=sint,a32=-sint,a33=costを要素とする行列である。言い換えれば、行列Aは、ベクトルrを角度tだけ回転させてベクトルr’にする作用をする。
ベクトルr0(0,-r,0)を角度t1だけ折り曲げたベクトルをr1(0,-rcost1,rsint1)とし、そこから、さらにt2だけ折り曲げたベクトルをr2とすると、ベクトルr2は、ベクトルr0に角度t1の行列A1を作用させてベクトルr1を得、さらにベクトルr1に角度t2の行列A2を作用させてベクトルr2(0,-rcos(t1+t2),rsin(t1+t2))を得られることが確認できる。このことを式で表現すると、
r2=A2A1r0=A2r1
となる。すなわち、ベクトルrに行列Aを作用させる変換は、何度も反復できる。
行列Aの変数tを-tに置き換えてみると、Aの逆行列A-1:a11=1,a12=a13=a21=a31=0,a22=cost,a23=-sint,a32=sint,a33=costを得る。A-1A=AA-1は単位行列となり、恒等変換を意味する。すなわち、ベクトルrに行列Aを作用させた後にA-1を作用させると、元のベクトルrに戻る。
このようにして、直線を境界として折り紙を徐々に折り曲げていくと、最後にはy=xを境界として、y<xの領域に含まれるすべての点(x,y)は、y>x領域に含まれる対応する点(x’,y’)に移る。ここで、座標変換後の座標点は、(x’,y’,z’)=(0,r,0)である。つまり、元の座標系では、(1-1)(1-2)式で表される変換点に帰着する。
(2-1)(2-2)式で表される折り方をしても、同様である。折り目となる境界は直線であるから、すべて座標系の回転と平行移動により、境界をy軸とし、最初のx-y平面上の点(x,y)を(x,y,z)座標系で表した(0,-r,0)とすることができる。つまり、(4-1)(4-2)(4-3)で表現される変換に帰着させることができる。