【Rで球面幾何学】単位円と単位球②円周角(Circumference Angle)とは何か？


とりあえず**１次元**(<font color="blue">1D=One Dimension</font>)の世界を「**真円の円弧/真球の表面における任意の点**(<font color="blue">any point</font>)<font color="green">X</font>**が、原蹠**(<font color="blue">PorTal</font>)**として対蹠**(<font color="blue">AntiPordal</font>)**を検出出来てない状態**」と規定します。

1. ひょっとして、その任意の点は静止してないのでは？
2. ひょっとして、その真円の円弧/真球の表面は静止してないのでは？

こうした**疑念**(<font color="blue">Doubt</font>)はとりあえず後回しとします。
[【Rで球面幾何学】単位円と単位球①「半径１」と「直径２」の関係について。](https://qiita.com/ochimusha01/items/d5d3d7a8fda03eddb1d8)
![20191028123539.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/6ecec94f-f795-b69a-df0e-7cdc9fa8dde7.gif)
さて、**円弧上の任意の点**(<font color="blue">any point</font>)<font color="green">X</font>は、現在位置からどう観察したら**対蹠**(<font color="blue">AntiPordal</font>)を発見出来るでしょうか。ここで颯爽と登場してくるのが**円周角**(<font color="blue">Circumference Angle</font>)**概念**(<font color="blue">Concept</font>)という訳です。
![20191111234734.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/1c06c1eb-4de7-d285-d0df-58356beab8fa.gif)

```R
#SVXY=Survey ValueXY

SVXY<-function(SV){

c0<-seq(0,2*pi,length=60)
cx<-cos(c0)
cy<-sin(c0)
plot(cx,cy,type="l",asp=1,main="One Side:Survey Value X-Y dimension",xlab="cos(θ)",ylab="sin(θ)")
ifelse(SV<30,SVcol<-rgb(1,0,0),SVcol<-rgb(0,1,0))
text(cx[1],cy[1],"X",cex=2,col=SVcol)
segments(cx[1],cy[1],cx[SV],cy[SV],col=SVcol)
SVLength<-round(sqrt((cx[SV]-cx[1])^2+(cy[SV]-cy[1])^2)*pi,6)
SVtext<-paste0("Survey Value=",SVLength)

legend("bottomright", legend=SVtext,lty=1,col=SVcol)
}

library("animation")
Time_Code=seq(1,59,2)
saveGIF({
for (i in Time_Code){
SVXY(i)
}
}, interval = 0.1, movie.name = "SVXY.gif") 
```
①出発点はあくまでここ。
[【初心者向け】「円そのもの」の近似から派生した角度と経度の概念の起源](https://qiita.com/ochimusha01/items/80b70db93cbf2612bd18)

>そもそも「**辺長が無限小**(<font color="blue">1/Inf</font>)**で辺数が無限大**(<font color="blue">Inf</font>)」と規定される「**円そのもの**(<font color="blue">Circle Itself</font>)」の各頂点は中心からの**垂線**(<font color="blue">Perpendicular</font>)と直角に交わるとされているので、それぞれを含む**水平線**(<font color="blue">Horizon</font>)も引ける訳です。**近似円概念**を**直交座標系**（<font color="blue">Rectangular Coordinate System / Orthogonal Coordinate System</font>）に**射影**(<font color="blue">Projiection</font>)する際の基本。

②理論上、**円周角**に対応する**検出距離**(<font color="blue">Detection distance</font>)は(<font color="blue">水平線に該当する</font>)0度(<font color="blue">-π/2ラジアン</font>)時点の<font color="green">0</font>から、(<font color="blue">垂直線に該当する</font>)**90度**(<font color="blue">0ラジアン</font>)時点における<font color="green">直径２</font>を経て**180度**(<font color="blue">π/2ラジアン</font>)時点の<font color="green">0</font>に至る推移を描く。とどのつまり検出距離の最大値が対蹠と想定可能なのである。

③これが検出出来たという事は、その**真円の円弧**における**直径**(<font color="blue">Diameter</font>)・**半径**(<font color="blue">Radius</font>)・**中心**(<font color="blue">Origin</font>)の確定に成功したも同然であり、さらなる検出次元引き上げが可能となるのである。
![20191126211412.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/551dbf62-2e01-10f5-a35e-39c2f723b97b.gif)

```R
#グローバル変数
DbNoS<-60 #分割辺数（Divided by the Number of Sides）
SVYZ<-function(SV){
#背景円
c0<-seq(0,2*pi,length=DbNoS)
cx<-cos(c0)
cy<-sin(c0)
plot(cx,cy,type="l",,xlim=c(-1,1),ylim=c(-1,1),main="One Side:Survey Value X-Y dimension",xlab="cos(θ)",ylab="sin(θ)")
par(new=T)#上書き指定
#円旋回準備
ifelse(SV>1,SVcol<-rgb(0,1,0),SVcol<-rgb(1,0,0))
ifelse(SV>1,cxp<-2-SV,cxp<-SV)
cx1<-cx*cxp+(1-cxp)
f0<-function(x)sqrt(1-x^2)
cy1<-cy*f0(1-cxp)*(0.70+(0.3*cxp))
#円旋回
plot(cx1,cy1,type="l",xlim=c(-1,1),ylim=c(-1,1),col=SVcol,main="One Side:Survey Value X-Y dimension",xlab="cos(θ)",ylab="sin(θ)")
#補足情報
text(cx[1],cy[1],"X",cex=2,col=SVcol)
text(cx[1]-cxp,cy[1],"X",cex=2,col=SVcol)
segments(cx[1],cy[1],cx[1]-cxp,cy[1],col=SVcol)
#円の塗り潰し
polygon(cx1, #x
cy1, #y
density=c(50*(1-cxp)), #塗りつぶす濃度
angle=c(45),　 　　　#塗りつぶす斜線の角度
col=SVcol) 　#塗りつぶす色
#凡例
SVLength<-cxp*2*pi
SVtext<-paste0("Survey Value=",SVLength)
legend("bottomright", legend=SVtext,lty=1,col=SVcol)
}

library("animation")
Time_Code<-seq(0,2,length=DbNoS)
saveGIF({
for (i in Time_Code){
SVYZ(i)
}
}, interval = 0.1, movie.name = "SVYZ001.gif")
```
ちょっと待った、そんなに安易に**検出距離**(<font color="blue">Detection distance</font>)の最大値を**直径**(<font color="blue">Diameter</font>)と判断して良いものなの？　そういう部分も含めて以下続報…