Snellius–Pothenotの問題(Snellius–Pothenot problem)とは、位置の分かった 3 点 $A$、$B$、$C$ を未知の点 $P$ から見込む 2 つの角 $\alpha=\angle APB$、$\beta=\angle BPC$ と、$P$ が直線 $AB$、$BC$ のどちら側にあるかから、$P$ の位置を求める測量の問題である。$P$ は、その側で線分 $AB$ を角 $\alpha$ で見込む円弧と、線分 $BC$ を角 $\beta$ で見込む円弧の、$B$ 以外の交点である。2 つの円が一致しなければ $P$ はただ 1 つに決まる。2 つの円が一致するのは $P$ が $A$、$B$、$C$ を通る円(危険円)の上にあるときに限り、そのときはその弧の上の点がどれも同じ角を与え、$P$ は決まらない。
前提知識: 測量と三角比, 円周角の定理(高校数学), 円に内接する四角形
海の上の船から、地図に位置が載っている 3 つの灯台 $A$、$B$、$C$ が見えている。船から灯台までの距離は測れないが、船の上で「$A$ の方向と $B$ の方向のなす角」「$B$ の方向と $C$ の方向のなす角」は測れる。この 2 つの角だけから、船の位置を地図の上に決められるだろうか。
測量と三角比 の三角測量では、長さを測った基線の両端で角を測った。ここでは長さを 1 つも測らず、位置の分かった 3 点が長さの基準の役をする。まず、位置の分かった船から角を計算してみる。
灯台を $A(-2,0)$、$B(0,2)$、$C(2,0)$、船を $P(0,-1)$ とする。$\overrightarrow{PA}=(-2,1)$、$\overrightarrow{PB}=(0,3)$、$\overrightarrow{PC}=(2,1)$ である。内積で角の余弦を求めると
$$
\cos\angle APB=\frac{(-2)\cdot0+1\cdot3}{\sqrt5\cdot3}=\frac1{\sqrt5},\qquad\cos\angle BPC=\frac{2\cdot0+1\cdot3}{\sqrt5\cdot3}=\frac1{\sqrt5}
$$
である。$\sin\angle APB=\sqrt{1-\dfrac15}=\dfrac2{\sqrt5}$ なので $\tan\angle APB=2$ で、$\angle APB=\angle BPC\fallingdotseq63.43^\circ$ である。
逆に、船の上で $\angle APB$ と $\angle BPC$ がどちらも「正接が $2$ の角」と測れたとき、船は $P(0,-1)$ にいると言えるだろうか。答えは ex-snp-solve で出す。ところが、次の例のように、同じ角を与える点が無数にあることもある。
同じ灯台 $A(-2,0)$、$B(0,2)$、$C(2,0)$ を、船 $P_1(0,-2)$ から見る。$\overrightarrow{P_1A}=(-2,2)$、$\overrightarrow{P_1B}=(0,4)$、$\overrightarrow{P_1C}=(2,2)$ なので
$$
\cos\angle AP_1B=\frac{0+8}{2\sqrt2\cdot4}=\frac1{\sqrt2},\qquad\cos\angle BP_1C=\frac{0+8}{4\cdot2\sqrt2}=\frac1{\sqrt2}
$$
で、どちらの角も $45^\circ$ である。別の船 $P_2(\sqrt2,-\sqrt2)$ から見ても、2 つの角はどちらも $45^\circ$ である。2 つの角だけでは、船が $P_1$ にいるのか $P_2$ にいるのか区別できない。
$\overrightarrow{P_2A}=(-2-\sqrt2,\ \sqrt2)$、$\overrightarrow{P_2B}=(-\sqrt2,\ 2+\sqrt2)$、$\overrightarrow{P_2C}=(2-\sqrt2,\ \sqrt2)$ である。長さの 2 乗は $\lvert\overrightarrow{P_2A}\rvert^2=\lvert\overrightarrow{P_2B}\rvert^2=(2+\sqrt2)^2+2=8+4\sqrt2$、$\lvert\overrightarrow{P_2C}\rvert^2=(2-\sqrt2)^2+2=8-4\sqrt2$ である。内積は $\overrightarrow{P_2A}\cdot\overrightarrow{P_2B}=\sqrt2(2+\sqrt2)+\sqrt2(2+\sqrt2)=4\sqrt2+4$、$\overrightarrow{P_2B}\cdot\overrightarrow{P_2C}=-\sqrt2(2-\sqrt2)+\sqrt2(2+\sqrt2)=4$ である。よって
$$\cos\angle AP_2B=\frac{4\sqrt2+4}{8+4\sqrt2}=\frac{\sqrt2+1}{\sqrt2(\sqrt2+1)}=\frac1{\sqrt2},\qquad\cos\angle BP_2C=\frac4{\sqrt{(8+4\sqrt2)(8-4\sqrt2)}}=\frac4{\sqrt{32}}=\frac1{\sqrt2}$$
で、どちらも $45^\circ$ である。
ex-snp-start-danger の 3 点 $A$、$B$、$C$ と 2 つの船 $P_1$、$P_2$ は、どれも原点を中心とする半径 $2$ の円の上にある。これが偶然でないことを thm-snp-danger で示す。この記事で答える問いは次の 3 つである。
平面の上に、位置の分かった異なる 3 点 $A$、$B$、$C$ と、位置の分からない点 $P$ がある。$P$ は直線 $AB$ の上にも直線 $BC$ の上にもないとする。次の 2 つが分かっているとき、$P$ の位置を求める問題を Snellius–Pothenot の問題 という。
(1) $P$ から見た 2 つの角 $\alpha=\angle APB$、$\beta=\angle BPC$($0^\circ<\alpha<180^\circ$、$0^\circ<\beta<180^\circ$)。
(2) $P$ が直線 $AB$ のどちら側にあるか、直線 $BC$ のどちら側にあるか(向きの情報)。
点 $X$ から線分 $AB$ の両端を見る角 $\angle AXB$ を、$X$ から線分 $AB$ を 見込む角 という。
MathWorld の頁 Wei26 は、この問題を、位置の分かった近づけない 3 点 $A$、$B$、$C$ の方向から、近づける未知の点 $P$ の位置を決める測量の問題として述べている。この記事では、測るのは (1) の 2 つの角だけとし、方位磁針などで東西南北の向きを測ることはしない。
(2) の向きの情報は、実際の測量では角を測るときに分かる。たとえば $P$ から見て、$A$ の方向から $B$ の方向へ時計回りに回るか反時計回りに回るかを記録しておけばよい。ex-snp-start では、$P(0,-1)$ は直線 $AB$ の下側、直線 $BC$ の下側にある。(2) を忘れると位置が決まらなくなる例は ex-snp-cx-side で見る。
線分 $AB$ を角 $\alpha$ で見込む点の集まりは、円周角の定理とその逆から円弧になる。この記事では円の中心と半径まで式で書いておく。$P$ を作図するときにも、座標を計算するときにも使う。
異なる 2 点 $A$、$B$ と、$0^\circ<\alpha<180^\circ$ をとる。直線 $AB$ で分けられる 2 つの側の一方を $S$ とする。$L=AB$、線分 $AB$ の中点を $M$、直線 $AB$ に垂直で $S$ の側を向く長さ $1$ のベクトルを $\vec n$ とし、
$$
O=M+\frac{L\cos\alpha}{2\sin\alpha}\,\vec n,\qquad R=\frac{L}{2\sin\alpha}
$$
で、中心 $O$、半径 $R$ の円 $\Gamma$ を定める。このとき、$S$ の側にある点 $X$ について、
$$
\angle AXB=\alpha\iff X\text{ は }\Gamma\text{ の上にある}
$$
が成り立つ。つまり、$S$ の側で線分 $AB$ を角 $\alpha$ で見込む点の集まりは、円 $\Gamma$ のうち $S$ の側にある弧である。
方針:$\Gamma$ が $A$、$B$ を通ることと、$\Gamma$ の上の 1 点 $X_0$ で $\angle AX_0B=\alpha$ となることを確かめる。ほかの点へは、円に内接する四角形 の定理「見込む角による判定」で広げる。
段 1($\Gamma$ は $A$、$B$ を通る)。$\overrightarrow{MA}$ は $\vec n$ に垂直で長さ $\dfrac L2$ なので、三平方の定理から
$$
OA^2=\left(\frac L2\right)^2+\left(\frac{L\cos\alpha}{2\sin\alpha}\right)^2=\left(\frac L2\right)^2\cdot\frac{\sin^2\alpha+\cos^2\alpha}{\sin^2\alpha}=R^2
$$
である。$B$ についても同じである。
段 2(見込む角が $\alpha$ の点 $X_0$)。$X_0=M+\dfrac{L(1+\cos\alpha)}{2\sin\alpha}\vec n$ とおく。$\vec n$ の係数の差は $\dfrac{L(1+\cos\alpha)}{2\sin\alpha}-\dfrac{L\cos\alpha}{2\sin\alpha}=\dfrac{L}{2\sin\alpha}=R$ なので $OX_0=R$ で、$X_0$ は $\Gamma$ の上にある。$1+\cos\alpha>0$、$\sin\alpha>0$ なので係数は正で、$X_0$ は $S$ の側にある。三角形 $AMX_0$ は $M$ の角が直角で、$AM=\dfrac L2$、$MX_0=\dfrac{L(1+\cos\alpha)}{2\sin\alpha}$ である。2 倍角の公式 $\sin\alpha=2\sin\dfrac\alpha2\cos\dfrac\alpha2$、$1+\cos\alpha=2\cos^2\dfrac\alpha2$ を使うと
$$
\tan\angle AX_0M=\frac{AM}{MX_0}=\frac{\sin\alpha}{1+\cos\alpha}=\frac{2\sin\frac\alpha2\cos\frac\alpha2}{2\cos^2\frac\alpha2}=\tan\frac\alpha2
$$
である。$\angle AX_0M$ も $\dfrac\alpha2$ も $0^\circ$ と $90^\circ$ の間にあるので $\angle AX_0M=\dfrac\alpha2$ である。同じく $\angle BX_0M=\dfrac\alpha2$ で、$M$ は線分 $AB$ の上にあるので $\angle AX_0B=\dfrac\alpha2+\dfrac\alpha2=\alpha$ である。
段 3(ほかの点)。$X$ を $S$ の側の点で、$X\ne X_0$、かつ直線 $AX_0$ の上にも直線 $BX_0$ の上にもないものとする。このとき 4 点 $A$、$B$、$X_0$、$X$ のどの 3 点も一直線上になく、$X_0$ と $X$ は直線 $AB$ の同じ側にある。「見込む角による判定」により、4 点が同一円周上にあることと $\angle AXB=\angle AX_0B$ は同値である。$A$、$B$、$X_0$ を通る円はただ 1 つで、段 1・段 2 よりそれは $\Gamma$ なので、「4 点が同一円周上にある」は「$X$ が $\Gamma$ の上にある」と同じである。$\angle AX_0B=\alpha$ だから、$\angle AXB=\alpha$ と $X$ が $\Gamma$ の上にあることは同値である。$X=X_0$ のときは段 2 のとおり両方が成り立つ。$X$ が直線 $AX_0$ または $BX_0$ の上にある($X\ne X_0$)ときは両方が成り立たない。$\square$
$X$ が直線 $AX_0$ の上にあり、$S$ の側にあって $X\ne X_0$ とする。直線と円の共有点は多くても 2 つで、直線 $AX_0$ と $\Gamma$ の共有点は $A$ と $X_0$ なので、$X$ は $\Gamma$ の上にない。角については、$X$ が線分 $AX_0$ の上にあれば、$\angle AXB$ は三角形 $XX_0B$ の $X$ における外角なので $\angle AXB=\angle XX_0B+\angle XBX_0>\angle AX_0B$ である。$X_0$ が線分 $AX$ の上にあれば、$\angle AX_0B$ は三角形 $X_0XB$ の外角なので $\angle AX_0B=\angle X_0XB+\angle X_0BX>\angle AXB$ である。どちらでも $\angle AXB\ne\alpha$ である($X$ は $S$ の側にあるので、$A$ に関して $X_0$ と反対側の半直線の上にはない)。直線 $BX_0$ の上の点も同じである。
$\alpha<90^\circ$ なら $\cos\alpha>0$ で、中心 $O$ は $S$ の側にある。$\alpha=90^\circ$ なら $O=M$ で、$\Gamma$ は $AB$ を直径とする円である(直径に対する円周角)。$\alpha>90^\circ$ なら $O$ は $S$ と反対側にあり、$S$ の側の弧は短い方の弧である。
def-snp-problem の状況で、lem-snp-arc の円を 2 つ作る。$\Gamma_1$ は線分 $AB$、角 $\alpha$、$P$ のある側についての円、$\Gamma_2$ は線分 $BC$、角 $\beta$、$P$ のある側についての円とする。このとき次が成り立つ。
(1) $P$ は $\Gamma_1$ と $\Gamma_2$ の両方の上にあり、$P\ne B$ である。
(2) $\Gamma_1\ne\Gamma_2$ なら、$\Gamma_1$ と $\Gamma_2$ の共有点は $B$ と $P$ の 2 つだけである。したがって $P$ は「$\Gamma_1$ と $\Gamma_2$ の $B$ 以外の共有点」としてただ 1 つに決まる。
段 1((1) の証明)。$P$ は直線 $AB$ の $P$ のある側にあり、$\angle APB=\alpha$ なので、lem-snp-arc により $P$ は $\Gamma_1$ の上にある。同じく $\angle BPC=\beta$ から $P$ は $\Gamma_2$ の上にある。$P$ は直線 $AB$ の上にないので $P\ne B$ である。
段 2(2 つの円の共有点は 2 つまで)。異なる 2 つの円を $x^2+y^2+a_1x+b_1y+c_1=0$、$x^2+y^2+a_2x+b_2y+c_2=0$ とする。共有点は、2 式を引いた $(a_1-a_2)x+(b_1-b_2)y+(c_1-c_2)=0$ も満たす。$a_1=a_2$、$b_1=b_2$ なら、円が異なるので $c_1\ne c_2$ で、この式を満たす点はなく、共有点はない。そうでなければこの式は直線を表し、共有点はこの直線と 1 つ目の円の共有点である。直線と円の共有点は、代入して得られる 2 次方程式の実数解に対応するので、多くても 2 つである。
段 3((2) の証明)。$B$ は $\Gamma_1$(lem-snp-arc の証明の段 1)と $\Gamma_2$ の両方の上にある。段 1 より $P$ も両方の上にあり、$P\ne B$ である。$\Gamma_1\ne\Gamma_2$ なら、段 2 より共有点は多くても 2 つなので、共有点は $B$ と $P$ だけである。$\square$
thm-snp-main は、そのまま作図の手順になる。線分 $AB$ を角 $\alpha$ で見込む円弧と、線分 $BC$ を角 $\beta$ で見込む円弧を描き、$B$ でない方の交点に印を付ければ、それが $P$ である。
ex-snp-start の $A(-2,0)$、$B(0,2)$、$C(2,0)$ で、$\tan\alpha=\tan\beta=2$、$P$ は直線 $AB$ と直線 $BC$ の下側にあると分かっているとする。$\Gamma_1$ は ex-snp-arc (2) の円 $\left(x+\dfrac12\right)^2+\left(y-\dfrac12\right)^2=\dfrac52$ である。$\Gamma_2$ も同じように、中点 $(1,1)$ と下側を向くベクトル $\dfrac1{\sqrt2}(-1,-1)$ から、中心 $\left(\dfrac12,\ \dfrac12\right)$、半径の 2 乗 $\dfrac52$ の円 $\left(x-\dfrac12\right)^2+\left(y-\dfrac12\right)^2=\dfrac52$ である。
2 式を引くと $\left(x+\dfrac12\right)^2-\left(x-\dfrac12\right)^2=0$、つまり $2x=0$ で $x=0$ である。$x=0$ を $\Gamma_1$ の式に入れると
$$
\frac14+\left(y-\frac12\right)^2=\frac52,\qquad\left(y-\frac12\right)^2=\frac94,\qquad y=\frac12\pm\frac32
$$
で、$y=2$ または $y=-1$ である。$(0,2)$ は $B$ なので、$P=(0,-1)$ である。ex-snp-start の船の位置がもどった。
線分 AB を角 α で見込む円弧 Γ1 と、線分 BC を角 β で見込む円弧 Γ2 は、B と P の 2 点で交わる
図 1 の 2 つの円は、どちらも $B$ を通る。$B$ は位置が分かっているので、2 つの円のもう 1 つの交点 $P$ が答えになる。
thm-snp-main (2) には「$\Gamma_1\ne\Gamma_2$ なら」という条件があった。2 つの円が一致するのはいつだろうか。
thm-snp-main の状況で、次が成り立つ。
(1) $A$、$B$、$C$ が一直線上にあれば、$\Gamma_1\ne\Gamma_2$ で、$P$ はただ 1 つに決まる。
(2) $A$、$B$、$C$ が一直線上になければ、それらを通る円を $\Omega$ とする。$\Gamma_1=\Gamma_2$ であることと、$P$ が $\Omega$ の上にあることは同値である。
(3) $P$ が $\Omega$ の上にあるとき、$\Omega$ の上の点 $X$ で、直線 $AB$ について $P$ と同じ側、直線 $BC$ について $P$ と同じ側にあるものは、どれも $\angle AXB=\alpha$、$\angle BXC=\beta$ を満たす。そのような点は無数にあり、$\alpha$、$\beta$ と向きの情報だけでは $P$ は決まらない。
$P$ が $\Omega$ の上にあるとき、$\Omega$ を 危険円 とよぶことがある。
段 1((1) の証明)。$\Gamma_1=\Gamma_2$ なら、この円は $A$、$B$($\Gamma_1$ が通る)と $C$($\Gamma_2$ が通る)を通る。直線と円の共有点は多くても 2 つなので、一直線上の異なる 3 点を通る円はない。よって $A$、$B$、$C$ が一直線上にあれば $\Gamma_1\ne\Gamma_2$ で、thm-snp-main (2) により $P$ はただ 1 つに決まる。
段 2((2) で $\Gamma_1=\Gamma_2$ ならば $P$ は $\Omega$ の上)。$\Gamma_1=\Gamma_2$ なら、段 1 と同じくこの円は $A$、$B$、$C$ を通る。一直線上にない 3 点を通る円はただ 1 つ(正弦定理(高校数学) の命題「外接円はただ 1 つある」)なので、$\Gamma_1=\Omega$ である。thm-snp-main (1) により $P$ は $\Gamma_1$ の上、つまり $\Omega$ の上にある。
段 3((2) で $P$ が $\Omega$ の上ならば $\Gamma_1=\Gamma_2$)。$P$ は直線 $AB$ の上にないので、$A$、$B$、$P$ は一直線上にない異なる 3 点である。$\Gamma_1$ も $\Omega$ もこの 3 点を通るので、ただ 1 つであることから $\Gamma_1=\Omega$ である。同じく $B$、$C$、$P$ を通る円として $\Gamma_2=\Omega$ である。よって $\Gamma_1=\Gamma_2$ である。
段 4((3) の証明)。段 3 より $\Gamma_1=\Gamma_2=\Omega$ である。$X$ が $\Omega$ の上にあり、直線 $AB$ について $P$ と同じ側にあれば、$X$ は $\Gamma_1$ の上の点で $P$ の側にあるので、lem-snp-arc により $\angle AXB=\alpha$ である。同じく直線 $BC$ について $P$ と同じ側にあれば $\angle BXC=\beta$ である。直線 $AB$ について $P$ と同じ側にある点の集まりも、直線 $BC$ について $P$ と同じ側にある点の集まりも、$P$ を含み境界の直線を含まない領域なので、$P$ を中心とする十分小さい円の内部の点はどちらの側の条件も満たす。$\Omega$ の $P$ の近くの弧の点はその中に無数にあるので、条件を満たす $X$ は無数にある。$\square$
ex-snp-start-danger の $A(-2,0)$、$B(0,2)$、$C(2,0)$ を通る円 $\Omega$ は、原点を中心とする半径 $2$ の円 $x^2+y^2=4$ である。$P_1(0,-2)$ も $P_2(\sqrt2,-\sqrt2)$ もこの円の上にあり、どちらも直線 $AB$、$BC$ の下側にある。thm-snp-danger (3) により、$\Omega$ の下半分の弧の上の点($A$ と $C$ を除く)は、どれも 2 つの角が $45^\circ$ である。たとえば $\left(1,-\sqrt3\right)$ や、図 3 の $P_3\left(-\sqrt3,-1\right)$ からも、2 つの角はどちらも $45^\circ$ に見える。
$\alpha=\beta=45^\circ$ として lem-snp-arc の円を作ると、$\Gamma_1$ の中心は $M(-1,1)$ から下側へ $\dfrac{2\sqrt2\cos45^\circ}{2\sin45^\circ}=\sqrt2$ 進んだ点 $(-1,1)+\sqrt2\cdot\dfrac1{\sqrt2}(1,-1)=(0,0)$、半径は $\dfrac{2\sqrt2}{2\sin45^\circ}=2$ で、$\Gamma_1=\Omega$ である。$\Gamma_2$ も同じく $\Omega$ になる。2 つの円が重なるので、交点としては $P$ が決まらない。
P が円 ABC の上にないとき、2 つの円 Γ1、Γ2 は B と P の 2 点で交わる
P が円 ABC の上にあるとき、Γ1 と Γ2 は円 ABC に重なり、その弧の上の点はどれも同じ角を与える
図 2 は $A(0,0)$、$B(4,1)$、$C(7,-1)$、$P(3,-5)$ の場合(ex-snp-calc で計算する配置)で、破線の円 $\Omega$ の上に $P$ はない。図 3 は ex-snp-danger である。実際の測量では、$P$ が危険円の上にちょうど乗ることはまれでも、危険円の近くでは 2 つの円がほとんど重なり、交点の位置が角の小さな誤差で大きく動く。測量と三角比 の命題「仰角の誤差の伝わり方」で、2 つの仰角が近いと高さが決まりにくかったのと同じ現象である。
$A(-3,0)$、$B(0,0)$、$C(4,0)$ と、$P(1,-3)$ をとる。$\overrightarrow{PA}=(-4,3)$、$\overrightarrow{PB}=(-1,3)$、$\overrightarrow{PC}=(3,3)$ から、$\cos\alpha=\dfrac{13}{5\sqrt{10}}$($\alpha\fallingdotseq34.70^\circ$)、$\cos\beta=\dfrac{6}{\sqrt{10}\cdot3\sqrt2}=\dfrac1{\sqrt5}$($\beta\fallingdotseq63.43^\circ$)である。3 点は $x$ 軸の上に並ぶので、thm-snp-danger (1) により危険円はなく、$P$ はいつもただ 1 つに決まる。
$\Gamma_1$ は $A$、$B$、$P$ を通る円で、$x^2+y^2+3x+\dfrac{13}3y=0$(中心 $\left(-\dfrac32,-\dfrac{13}6\right)$)である。$\Gamma_2$ は $B$、$C$、$P$ を通る円で、$x^2+y^2-4x+2y=0$(中心 $(2,-1)$)である。2 式を引くと $7x+\dfrac73y=0$、つまり $y=-3x$ で、$\Gamma_2$ に代入すると $10x^2-10x=0$、$x=0,1$ である。共有点は $B(0,0)$ と $P(1,-3)$ だけである。
作図ではなく計算で $P$ の座標を求めるには、$P$ から $A$、$C$ への向きを表す角を未知数にとる。よく使う配置である、$P$ と $B$ が直線 $AC$ について反対側にある場合を扱う。
def-snp-problem の状況で、四角形 $PABC$ の対角線 $PB$ と $AC$ が交わる($P$、$A$、$B$、$C$ がこの順に凸四角形の頂点になる)とする。$x=\angle PAB$、$y=\angle PCB$、$s=x+y$、$k=\dfrac{BC\sin\alpha}{AB\sin\beta}$ とおく。このとき次が成り立つ。
(1) $s=360^\circ-\alpha-\beta-\angle ABC$ である。
(2) $\dfrac{\sin x}{\sin y}=k$ である。
(3) $s\ne180^\circ$ なら、$x$ は $0^\circ< x<180^\circ$ で $\dfrac{\cos x}{\sin x}=\dfrac{1+k\cos s}{k\sin s}$ を満たすただ 1 つの角で、$AP=\dfrac{AB\sin(\alpha+x)}{\sin\alpha}$ である。
(4) $s=180^\circ$ となるのは、$P$ が $A$、$B$、$C$ を通る円の上にあるとき、そのときに限る。
段 1((1) の証明)。対角線 $PB$ で四角形を三角形 $PAB$ と $PBC$ に分ける。内角の和から
$$
\alpha+x+\angle PBA=180^\circ,\qquad\beta+y+\angle PBC=180^\circ
$$
である。対角線 $PB$ は線分 $AC$ と交わるので、半直線 $BP$ は角 $\angle ABC$ の内部を通り、$\angle PBA+\angle PBC=\angle ABC$ である。2 式を足して $\alpha+\beta+x+y+\angle ABC=360^\circ$ を得る。
段 2((2) の証明)。三角形 $PAB$ で、$PB$ の向かいの角は $x$、$AB$ の向かいの角は $\alpha$ なので、正弦定理から $PB=\dfrac{AB\sin x}{\sin\alpha}$ である。三角形 $PBC$ で同じく $PB=\dfrac{BC\sin y}{\sin\beta}$ である。2 つを等しいとおいて
$$
\frac{AB\sin x}{\sin\alpha}=\frac{BC\sin y}{\sin\beta},\qquad\frac{\sin x}{\sin y}=\frac{BC\sin\alpha}{AB\sin\beta}=k
$$
である。
段 3((3) の証明)。$y=s-x$ を (2) に入れ、加法定理を使うと
$$
\sin x=k\sin(s-x)=k(\sin s\cos x-\cos s\sin x),\qquad\sin x\,(1+k\cos s)=k\sin s\cos x
$$
となる。$x$、$y$ は三角形の角なので $0^\circ< s<360^\circ$ で、$s\ne180^\circ$ なら $\sin s\ne0$ である。両辺を $k\sin s\sin x$($0$ でない)で割ると (3) の式になる。$\dfrac{\cos x}{\sin x}=\dfrac1{\tan x}$ は $0^\circ< x<180^\circ$ で減少し、どんな実数の値もちょうど 1 回とる($x=90^\circ$ で $0$)ので、$x$ はただ 1 つに決まる。三角形 $PAB$ の $B$ の角は $180^\circ-\alpha-x$ で、正弦定理から $AP=\dfrac{AB\sin(180^\circ-\alpha-x)}{\sin\alpha}=\dfrac{AB\sin(\alpha+x)}{\sin\alpha}$ である。
段 4((4) の証明)。対角線 $PB$ は線分 $AC$ と交わるので、半直線 $PB$ は角 $\angle APC$ の内部を通り、$\angle APC=\alpha+\beta$ である。(1) より、$s=180^\circ$ は $\angle APC+\angle ABC=180^\circ$ と同じである。凸四角形 $PABC$ で向かい合う角 $\angle APC$ と $\angle ABC$ の和が $180^\circ$ であることは、4 点が同一円周上にあることと同値である(円に内接する四角形 の定理「円に内接する四角形の対角」と「対角の和による判定」)。$\square$
$s=180^\circ$ のとき、段 3 の式は $\sin x\,(1-k)=0$ となり、$k=1$ なら $x$ は何でもよく、$x$ が決まらない。これは thm-snp-danger (3) の計算での表れである。
$A(0,0)$、$B(4,1)$、$C(7,-1)$ とし、$P$ から $\tan\alpha=\dfrac{23}{27}$($\alpha\fallingdotseq40.43^\circ$)、$\tan\beta=\dfrac57$($\beta\fallingdotseq35.54^\circ$)と測れたとする。$P$ は直線 $AB$ の下側にあり、直線 $AC$ について $B$ と反対側にあって、対角線 $PB$ と $AC$ が交わることも分かっているとする。
地図から $AB=\sqrt{17}$、$BC=\sqrt{13}$ で、$\overrightarrow{BA}=(-4,-1)$、$\overrightarrow{BC}=(3,-2)$ から $\cos\angle ABC=\dfrac{-12+2}{\sqrt{17}\sqrt{13}}=-\dfrac{10}{\sqrt{221}}$、$\angle ABC\fallingdotseq132.27^\circ$ である。
(1) $s=360^\circ-40.43^\circ-35.54^\circ-132.27^\circ\fallingdotseq151.76^\circ$ である。
(2) $\sin\alpha=\dfrac{23}{\sqrt{1258}}$、$\sin\beta=\dfrac5{\sqrt{74}}$ で、$1258=17\cdot74$ なので
$$
k=\frac{\sqrt{13}\cdot\frac{23}{\sqrt{17}\sqrt{74}}}{\sqrt{17}\cdot\frac5{\sqrt{74}}}=\frac{23\sqrt{13}}{85}\fallingdotseq0.9756
$$
である。
(3) $\cos s\fallingdotseq-0.8810$、$\sin s\fallingdotseq0.4731$ なので
$$
\frac{\cos x}{\sin x}=\frac{1+0.9756\times(-0.8810)}{0.9756\times0.4731}\fallingdotseq\frac{0.1405}{0.4616}\fallingdotseq0.3043
$$
で、$x\fallingdotseq73.07^\circ$ である。$AP=\dfrac{\sqrt{17}\sin(40.43^\circ+73.07^\circ)}{\sin40.43^\circ}\fallingdotseq\dfrac{4.1231\times0.9170}{0.6484}\fallingdotseq5.831$ である。
最後に向きを決める。半直線 $AB$ は $x$ 軸の正の向きと $\theta_0$($\tan\theta_0=\dfrac14$、$\theta_0\fallingdotseq14.04^\circ$)をなし、$P$ は直線 $AB$ の下側にあるので、半直線 $AP$ はそこから時計回りに $x$ だけ回した向き、$\theta_0-x\fallingdotseq-59.04^\circ$ である。よって
$$
P\fallingdotseq\bigl(5.831\cos(-59.04^\circ),\ 5.831\sin(-59.04^\circ)\bigr)\fallingdotseq(3.00,\ -5.00)
$$
で、$P(3,-5)$ が求まった。
$P(3,-5)$ から、$\overrightarrow{AP}=(3,-5)$、$\overrightarrow{AB}=(4,1)$ で $\cos x=\dfrac{12-5}{\sqrt{34}\sqrt{17}}=\dfrac{7}{17\sqrt2}$、$\sin x=\dfrac{23}{17\sqrt2}$ なので $\dfrac{\cos x}{\sin x}=\dfrac7{23}\fallingdotseq0.30435$ である。$AP=\sqrt{34}\fallingdotseq5.8310$ である。$y=\angle PCB$ は $\tan y=5$、$y\fallingdotseq78.69^\circ$ で、$x+y\fallingdotseq151.76^\circ=s$ と合う。$\overrightarrow{PA}=(-3,5)$、$\overrightarrow{PB}=(1,6)$、$\overrightarrow{PC}=(4,4)$ から $\cos\alpha=\dfrac{27}{\sqrt{34}\sqrt{37}}$、$\cos\beta=\dfrac{28}{\sqrt{37}\cdot4\sqrt2}=\dfrac{7}{\sqrt{74}}$ で、$\tan\alpha=\dfrac{23}{27}$、$\tan\beta=\dfrac57$ である。
A、B、C の位置と 2 つの角 α、β から、四角形 PABC の角 x、y を求め、P の座標を計算する
$P$ から見て、$A$ の方向から $B$ の方向へ回る向きと、$B$ の方向から $C$ の方向へ回る向きが同じ(時計回りどうし、または反時計回りどうし)配置は、prop-snp-calc の凸四角形の場合のほかに、$P$ が三角形 $ABC$ の内部にある場合と、$B$ が三角形 $APC$ の内部にある場合がある。(2) と (3) の式は、三角形 $PAB$ と $PBC$ の正弦定理と $y=s-x$ だけを使うので、そのまま使える。変わるのは (1) の $s$ の式である。
どの配置にあたるかは、向きの情報と地図から判断する。この記事では、配置のすべての場合分けは扱わない。
thm-snp-main と thm-snp-danger の条件を外すと、$P$ が決まらなくなる。
| 外す条件 | 反例 | 成り立たなくなること |
|---|---|---|
| $P$ が $A$、$B$、$C$ を通る円の上にない | $A(-2,0)$、$B(0,2)$、$C(2,0)$、$P(0,-2)$ | $P$ が決まる(円弧の上の点がどれも同じ角を与える) |
| 向きの情報が分かっている | $A(0,0)$、$B(4,1)$、$C(7,-1)$、$P(3,-5)$ | $P$ が決まる(同じ角を与える点 $P'\fallingdotseq(4.40,\ 3.94)$ がある) |
| 2 つの角を測る | ex-snp-start で $\alpha$ だけを測る | $P$ が決まる($(0,-1)$ と $(1,0)$ が同じ角を与える) |
1 行目は ex-snp-danger で確かめた。残りの 2 行を確かめる。
ex-snp-calc の $A(0,0)$、$B(4,1)$、$C(7,-1)$ と、$\tan\alpha=\dfrac{23}{27}$、$\tan\beta=\dfrac57$ で、向きの情報がないとする。$P$ は直線 $AB$ のどちら側にあってもよいので、lem-snp-arc の円は、線分 $AB$ について 2 つ(直線 $AB$ に関して互いに折り返した円)、線分 $BC$ について 2 つ考えることになる。その組み合わせの交点を調べると、$P(3,-5)$ のほかに、直線 $AB$ の上側、直線 $BC$ の上側にある点
$$
P'=\left(\frac{48230}{10961},\ \frac{43142}{10961}\right)\fallingdotseq(4.400,\ 3.936)
$$
でも $\tan\angle AP'B=\dfrac{23}{27}$、$\tan\angle BP'C=\dfrac57$ となる。2 つの角だけでは、船が $P$ にいるのか $P'$ にいるのか区別できない。向きの情報を使えば、$P'$ は直線 $AB$ の上側にあるので除かれる。
$\Gamma_1$($A$、$B$、$P$ を通る円)の中心は $\left(\dfrac{119}{46},-\dfrac{85}{46}\right)$、$\Gamma_2$($B$、$C$、$P$ を通る円)の中心は $\left(\dfrac{41}{10},-\dfrac{21}{10}\right)$ である。直線 $AB$ に関して $\Gamma_1$ を折り返した円の中心は $\left(\dfrac{65}{46},\dfrac{131}{46}\right)$、直線 $BC$ に関して $\Gamma_2$ を折り返した円の中心は $\left(\dfrac{69}{10},\dfrac{21}{10}\right)$ で、半径はそれぞれ $\Gamma_1$、$\Gamma_2$ と同じである。この 2 つの円の $B$ 以外の交点が $P'$ である。$P'$ で内積から余弦を計算すると $\cos\angle AP'B=\dfrac{27}{\sqrt{1258}}$、$\cos\angle BP'C=\dfrac{7}{\sqrt{74}}$ で、$P$ での値と一致する(計算機で分数のまま確かめた)。片方の円だけを折り返した 2 通りの組み合わせでは、$B$ 以外の交点で角の一方が $180^\circ$ から引いた角になり、条件を満たさない。
ex-snp-start の $A(-2,0)$、$B(0,2)$ で、$\tan\alpha=2$ だけを測り、$P$ は直線 $AB$ の下側にあると分かっているとする。lem-snp-arc により、$P$ は円 $\Gamma_1:\left(x+\dfrac12\right)^2+\left(y-\dfrac12\right)^2=\dfrac52$ の下側の弧のどこかにある。$(0,-1)$ も $(1,0)$ もこの弧の上にある。$(1,0)$ から見ると $\overrightarrow{XA}=(-3,0)$、$\overrightarrow{XB}=(-1,2)$ で $\cos\angle AXB=\dfrac{3}{3\sqrt5}=\dfrac1{\sqrt5}$、つまり $\tan\angle AXB=2$ で、$(0,-1)$ と同じ角である。$\beta$ も測れば、ex-snp-solve のとおり $(0,-1)$ に決まる($(1,0)$ からの $\angle BXC$ は、$\overrightarrow{XB}=(-1,2)$、$\overrightarrow{XC}=(1,0)$ から $\cos\angle BXC=-\dfrac1{\sqrt5}$ で、$\beta$ と違う)。
向きの情報がないと、P のほかに、直線 AB と直線 BC の反対側にある P′ からも同じ 2 つの角が見える
平面の点 $P$ に 2 つの角の組 $(\alpha,\beta)=(\angle APB,\ \angle BPC)$ を対応させる写像 $F$ を考える。Snellius–Pothenot の問題は、$F$ の値から点を逆に求める問題である。2 変数の写像は、偏微分を並べた行列(Jacobi行列)の行列式が $0$ でない点の近くでは、1 対 1 に逆にたどれる(逆関数定理)。この記事の結果は、行列式が $0$ になる点の集まりが危険円 $\Omega$ であることを示唆する。
$\alpha$ が一定の点の集まりは $\Gamma_1$ の弧、$\beta$ が一定の点の集まりは $\Gamma_2$ の弧である(lem-snp-arc)。2 つの角の偏微分を並べたベクトルは、それぞれの弧に $P$ で垂直である。行列式が $0$ になるのはこの 2 つのベクトルが平行なとき、つまり 2 つの円が $P$ で接するときである。$\Gamma_1$ と $\Gamma_2$ は $B$ と $P$ の 2 点を通るので、接するなら一致するしかなく、thm-snp-danger (2) により $P$ は $\Omega$ の上にある。偏微分のベクトルが弧に垂直で $0$ でないことなどは、この記事では証明しない。
$A(-1,0)$、$B(0,1)$、$C(1,0)$ とする。点 $P$ は直線 $AB$、直線 $BC$ の下側にあり、$\angle APB=\angle BPC=90^\circ$ である。$P$ の座標を求めよ。
lem-snp-arc で $\alpha=90^\circ$ とすると、$\Gamma_1$ は $AB$ を直径とする円 $\left(x+\dfrac12\right)^2+\left(y-\dfrac12\right)^2=\dfrac12$、$\Gamma_2$ は $BC$ を直径とする円 $\left(x-\dfrac12\right)^2+\left(y-\dfrac12\right)^2=\dfrac12$ である。2 式を引くと $x=0$ で、代入すると $\left(y-\dfrac12\right)^2=\dfrac14$、$y=0$ または $y=1$ である。$(0,1)$ は $B$ なので $P=(0,0)$ である。実際、$\overrightarrow{PA}=(-1,0)$、$\overrightarrow{PB}=(0,1)$、$\overrightarrow{PC}=(1,0)$ で、どちらの角も直角である。
演習「見込む角が直角の場合」と同じ $A$、$B$、$C$ で、$P$ は直線 $AB$、直線 $BC$ の下側にあり、$\angle APB=\angle BPC=45^\circ$ とする。$P$ が 1 つに決まらないことを示せ。
lem-snp-arc で $L=\sqrt2$、$\alpha=45^\circ$ とすると、$\Gamma_1$ の中心は $M\left(-\dfrac12,\dfrac12\right)$ から下側へ $\dfrac{\sqrt2\cos45^\circ}{2\sin45^\circ}=\dfrac{\sqrt2}2$ 進んだ点 $\left(-\dfrac12,\dfrac12\right)+\dfrac{\sqrt2}2\cdot\dfrac1{\sqrt2}(1,-1)=(0,0)$、半径は $\dfrac{\sqrt2}{2\sin45^\circ}=1$ である。$\Gamma_2$ も同じく原点を中心とする半径 $1$ の円で、$\Gamma_1=\Gamma_2$ である。これは $A$、$B$、$C$ を通る円 $x^2+y^2=1$ で、thm-snp-danger (3) により、この円の下半分の弧の点($A$、$C$ を除く)はどれも条件を満たす。たとえば $(0,-1)$ と $\left(\dfrac{\sqrt2}2,-\dfrac{\sqrt2}2\right)$ はどちらも条件を満たすので、$P$ は 1 つに決まらない。
Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する