【初心者向け】単位立方体(Unit Cube)と座標系(Coordinate System)における偶奇性(Evenness)について。

**計算数学**(<font color=blue>Computational Mathematics</font>)の何よりの面白さは、思わぬ方向に概念の精緻化を要求される所にあったりします。進化の過程で育まれてきた「(<font color=blue>生物が進化の過程で獲得してきた様な、純粋な形では数理に全面依存してはいない</font>)**粗雑な代数構造体系**」を「<font color=purple>コンピューター</font>(<font color=blue>すなわちそれを駆動させている、純粋に数理の積み上げにのみ立脚する精緻な代数構造体系</font>)<font color=purple>はそのままの形では解ってくれない</font>」のですね。
[【無限遠点を巡る数理】「ピタゴラスの定理」と「デカルト座標系」の狭間](https://qiita.com/ochimusha01/items/e27e9cd6aad824043a59)

ならばどう考えれば良いのでしょう？

* 前者をとりあえず仏法哲学でいう「**相依性**(<font color=blue>相互依存性</font>)**縁起論の世界**」すなわち「<font color=purple>観測者が識知可能な、すなわち一応は原因と条件の結果の関係で語り得る様な</font>(<font color=blue>ただしその生滅の連鎖を相応の精度を有する観測結果とそれから抽出された数理のみで説明し切れる段階までは至ってない</font>)<font color=purple>無明の諸概念集合</font>(<font color=blue>Concepts Set</font>)」と置く。
<br>[縁起 - Wikipedia](https://ja.wikipedia.org/wiki/%E7%B8%81%E8%B5%B7)
* 西洋哲学の世界から出発したいなら、例えば「**真理の全体構造**(<font color=blue>Overall Structure of Truth</font>)」を**三段論法**(<font color=blue>Syllogism</font>)に従って「<font color=purple>すべてのPはQである</font>」「<font color=purple>あるPはQである</font>」「<font color=purple>すべてのPはQではない</font>」「<font color=purple>あるPはQではない</font>」とか、**背理法**(<font color=blue>Proof by Contradiction</font>)に従って「<font color=purple>AならばBである</font>(<font color=blue>命題</font>)」「<font color=purple>BならばAである</font>(<font color=blue>逆</font>)」「<font color=purple>AでないならBでない</font>(<font color=blue>裏</font>)」「<font color=purple>BでないならAでない</font>(<font color=blue>対偶</font>)」といった**四象集合**(<font color=blue>Set of Opposition Square</font>)に分類しようとする**古典論理概念**（<font color=blue>Concept of Classical Logic</font>)辺りにでも軸足を置けば良い。この場合「**縁起**(<font color=blue>無明</font>)**の世界**」は「<font color=purple>Qではない</font>」と切り捨てられる範囲に該当する。<br>[古典論理 - Wikipedia](https://ja.wikipedia.org/wiki/%E5%8F%A4%E5%85%B8%E8%AB%96%E7%90%86)

いずれにせよ最初に辿り着く結論は同じ。それぞれが莫大な時間と手間を掛けて蓄積されてきた英知とはいえ「<font color=purple>人間の脳なる古参のハードウェア上ではそれそれがそれなりに適切に見える形で動いても、コンピューターなる新参者のハードウェア上ではウンともスンともいわない</font>」という一点において「**みんな違ってみんなダメ**」なのです。
[山本一郎氏が絶賛する『みんなちがって、みんなダメ』とは](https://www.kk-bestsellers.com/articles/-/9624/)

別に現在の<font color=purple>Computer Architecture</font>の在り方が人間の英知を凌駕したといった壮大なパラダイムシフトが起こった訳でもありません。「<font color=purple>現在のComputer Architectureもそれなりにバカ</font>(<font color=blue>なので、そのバカにでも分かるアルゴリズムしか受け付けない</font>)」なる情けない現実が実存するだけです。それで悔しくて「<font color=purple>現在はただの過渡期。近い将来</font>(<font color=blue>量子コンピューティングみたいな超技術を統合した</font>)<font color=purple>真の意味で人間の脳に対応するハードウェアが現れる</font>」と予言し続ける人もいれば、諦めて「<font color=purple>その夢は</font><font color=green>1980年代</font><font color=purple>にピークを迎えた**第二次人工知能ブーム**までにほぼ潰え</font>、<font color=green>1990年代</font><font color=purple>に端を発する**第三次人工知能ブーム**からは</font>(<font color=blue>現在のComputer Architectureの在り方にアルゴリズム開発者としての人間側が適応した</font>)<font color=purple>新たな試みが始まっている</font>」と考える様になった人もいます。そして後者の立場に立つなら上掲の「**コンピューター**(<font color=blue>すなわちそれを駆動させている、純粋に数理の積み上げにのみ立脚する精緻な代数構造体系</font>)**の世界**」はこう図式化される訳です。

* プラトンが「**ドクサ**(<font color=blue>Doxa</font>)」すなわち「(<font color=blue>最も純粋な定義においては</font>)<font color=purple>分析なき経験結果の寄せ集めから勝手に**自明の場合**</font>(<font color=blue>Trival Case</font>)<font color=purple>として生じる、すなわち特定の背景理論を抽出して法則化して適用範囲を決定する様な**知的作業**抜きで積み重ねられる**バイアス**</font>(<font color=blue>Bias=偏誤</font>)<font color=purple>の単なる寄せ集め</font>」に対峙させる形で提言し、ミシェル・フーコー「**言葉と物**(<font color=blue>Les mots et les choses,1966年</font>)」「**知の考古学**(<font color=blue>L'Archéologie du savoir, 1969年</font>)」においてその定義がさらに「<font color=purple>各時代における知識の体系を成立させてきた認識構造の原則的在り方</font>」へと拡張された「**エピステーメー**(<font color=blue>Episteme</font>)」概念から出発する。ちなみにトーマス・クーン「**科学革命の構造**(<font color=blue>The Structure of Scientific Revolutions,1962年</font>)」の提言に従ってこの概念の適用範囲を**科学的実証主義**(<font color=blue>Scientific Positivism</font>)の歴史上におけるイノベーションの不連続性に絞ったのが「**パラダイム・シフト**(<font color=blue>Paradigm Shift</font>)」概念となる。この立場からは上掲の対立構造が「<font color=purple>現在のComputer Architectureの在り方は新たなEpistemeを提供したか？</font>(<font color=blue>いや、如何なる形でもそれ自体は新たなEpistemeを提供してはいない!!</font>)」「<font color=purple>何かParadigm Shiftを引き起こしたか?</font>(<font color=blue>いや、如何なる形でもそれ自体は新たなParadigm Shiftを引き起こしてなどいない!!</font>)」問題と俯瞰される。<br>[バイアスのご先祖様？？【哲学図解】『ドクサとエピスメーテー』](https://www.zukai.site/entry/2019/08/19/180536)<br>[【エピステーメーとは】その意味からフーコーの議論をわかりやすく解説](https://liberal-arts-guide.com/episteme/)
* 実際「<font color=purple>新たなEpistemeの提供者</font>」や「<font color=purple>新たなParadigm Shiftの原動力</font>」の立場を主張しているのはコンピューター自身ではなく(<font color=blue>まぁコンピューター自身は現段階においてはまだまだ自らの主張を展開し得る発達段階にない</font>)**自然数集合**(<font color=blue>Set of Natural</font>)<font color=green>{1,2,3,…,Inf(inity)}</font>や、**加法単位元**(<font color=blue>Additive Identity</font>)<font color=green>0</font>と**乗法単位元**(<font color=blue>Multiplicative Identity</font>)<font color=green>1</font>を共に備える**整数環**(<font color=blue>Ring of Integers</font>)<font color=green>{-Inf,…,-3,-2,-1,-,1,2,3,…,Inf}</font>といった基本概念からの再出発を果たし「<font color=purple>特定の演算結果の集合とその積</font>」として自らの全体構造を記述する様になった**現代数学**(<font color=blue>Modern Mathematics</font>)の世界なのである。実際**オイラーの公式**(<font color=blue>Eulerian Formula</font>)<font color=green>exp(πi)=Cos(θ)+Sinθi</font>や**ガウスの巡回群**(<font color=blue>Gaussian Cyclic Group</font>)<font color=green>i^x=1</font>の概念抜きにはコンピューターは円すら描けない訳で、この指摘には確かに相応のアドバンテージが存在する。<br>[【初心者向け】群論概念の根幹](https://qiita.com/ochimusha01/items/208dc0e68db64805e4f7)<br>[1の冪根 -Wikipedia](https://ja.wikipedia.org/wiki/1%E3%81%AE%E5%86%AA%E6%A0%B9)

とはいえコンピューターは本当にバカなので「**現代数学そのもの**」が走ってる訳でもありません。何しろコンピューターは、というよりそのメモリ構造たる配列概念には、その実装段階における制約上**整数環**(<font color=blue>Ring of Integers</font>)<font color=green>{-Inf,…,-3,-2,-1,-,1,2,3,…,Inf}</font>の概念すらまともに再現する機能が実装されているとはいえない有様なのです。

<font color=purple>統計言語Rにおける実装例</font>

```R
#コンピューター上における自然数表現
> seq(1,5,length=5)
[1] 1 2 3 4 5
#コンピューター上における整数表現
> seq(-5,5,length=11)
[1] -5 -4 -3 -2 -1  0  1  2  3  4  5
```
* まぁ実際のプログラム上「**運用でカバー**」なる現状に誰も不満を抱えてないというだけの話に過ぎないのだが(<font color=blue>実現コストを考えると「無駄」に分類される事象という事</font>)。そもそも**加算**(<font color=blue>Countable</font>)で**直積可能**(<font color=blue>Productable</font>)な数が主な対象で**無限遠**(<font color=blue>Inf(inity)</font>)の概念を扱うのが苦手。
[【無限遠点を巡る数理】無限直線/無限円/無限球面そして無限トーラス?](https://qiita.com/ochimusha01/items/5d83fee2cee0c9d0ef4d)

一方、この世界観においてはとりあえず全体から抽出した次元や数値といった諸概念の独立性が担保され、アルゴリズム遂行によって欲しい答えがえられる「(<font color=blue>相応の精度を有する観測結果とそれから抽出された数理のみに立脚する</font>)**三昧の世界**」と、この条件が未達成の「(<font color=blue>計測値がコイントスの様に計測の都度1か0か変わったり、何時の間にかπ/2ラジアン(90度)が-π/2ラジアン(-90度)に挿し変わっている様な不安的極まりない</font>)**無明の世界**」の境界線は以下の形で与えられるのです(<font color=blue>西洋哲学でいうと「何かがそうであるかないかの境界線」辺りに比定される?</font>)。
[三昧(サンマイ)とは何？ Weblio辞書](https://www.weblio.jp/content/%E4%B8%89%E6%98%A7)

* とりあえず**半径**<font color=green>r</font>の球面を想定し、任意の**対蹠**(<font color=blue>Antipodes=北極と南極に該当する距離関係の2点</font>)間を結ぶ**共役複素数**(<font color=blue>Conjugate Complex Number</font>)の遷移を抽出する。円を<font color=green>60分割</font>するとそれぞれの観測方向に「<font color=red>15本の波紋</font>」が現れる。「**波紋の進行方向**」を特に定めなければ(<font color=blue>実際それを定める事に計算上特別な意味がない</font>)観察者が主観で補うに任されるが、この現象自体も上掲の「**無明**」状態の一種とはいえよう。<br>[【初心者向け】複素共役のアニメーション表示について。](https://qiita.com/ochimusha01/items/e0bb2789a420d3317cf1)<br>![image.gif](https://camo.qiitausercontent.com/33ed61be25a78fc1ddde0b68974d78041bdd2793/68747470733a2f2f71696974612d757365722d636f6e74656e74732e696d6769782e6e65742f687474707325334125324625324663646e2d616b2e662e73742d686174656e612e636f6d253246696d61676573253246666f746f6c6966652532466f2532466f6368696d757368613031253246323032303131313625324632303230313131363233303834382e6769663f69786c69623d72622d312e322e32266175746f3d666f726d6174266769662d713d363026713d373526773d31343030266669743d6d617826733d3034383934393264336237373862636631623663386233383836616633316334)
<br>![image.gif](https://camo.qiitausercontent.com/3b1ac60637925efce203f0788ffa50710d68f438/68747470733a2f2f63646e2d616b2e662e73742d686174656e612e636f6d2f696d616765732f666f746f6c6966652f6f2f6f6368696d7573686130312f32303230313131332f32303230313131333230343535322e676966)
<br>![image.gif](https://camo.qiitausercontent.com/9e9664fb4b1665bc097bea60f3d592fa89108799/68747470733a2f2f63646e2d616b2e662e73742d686174656e612e636f6d2f696d616765732f666f746f6c6966652f6f2f6f6368696d7573686130312f32303230313131332f32303230313131333230353234332e676966)
* そもそも「**進行方向**」自体は関数グラフ上にも表示されてない(<font color=blue>実際定める事に計算上特別な意味がない</font>)。数学の世界においては(<font color=blue>計算に差し支えない範囲においては</font>)「**三昧の世界**」と「**無明の世界**」がこうやって思わぬ形で隣接しており、その**視覚化**は、かかる現実を容赦無く暴き立てる(<font color=blue>コンピューターはこの作業を容易にはするものの、手計算でも何とかなる範囲ではそんなに感動してもらえない損な役回りを押し付けられている</font>)。<br>[【初心者向け】線形関数や絶対値関数](https://qiita.com/ochimusha01/items/8b7050e65b599f9e15c2)<br>![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/27f6fc20-ccee-bc6f-c331-d3e8a22c0cb9.png)
* ところで同じ円に「**誤差関数**(<font color=blue>ERF</font>)**の出力結果を射影**(<font color=blue>Projection</font>)**した結果**(<font color=blue>すなわち中心点から辺縁にかけて30本以上の波紋を発生させた結果</font>)」も、ほぼ上掲の「**正面図**」と同じに見える。前者が「<font color=purple>**地平線**</font>/<font color=purple>**水平線**</font>(<font color=blue>Horizon</font>)<font color=purple>までしか見通せない人間の視覚世界の限界</font>」を示しているとすれば、後者は「(<font color=blue>重力レンズ効果によって</font>)<font color=purple>球面の裏側まで見通せてしまうブラックホールの見え方</font>」に該当する訳だが「<font color=red>15本目までの波紋</font>」の挙動がほぼ同じな一方、**16本目以降の挙動**は周辺部でゴチャゴチャと瞬いてる様にしか映らないので観察者の主観が差分を勝手に「<font color=purple>誤差として切り捨ててしまう</font>」のである。実際ガウスは惑星観測の精度を上げるべく「<font color=purple>誤差として切り捨てる範囲</font>」を(<font color=blue>主観者の恣意的補完でなく</font>)しかるべき計算によって導出すべく**誤差関数**(<font color=blue>ERF</font>)を制定した訳で「**三昧状態と無明状態の境界線**」はかかる「<font color=purple>隔壁落とし</font>」のプロセスとしても現れてくる。<br>[【初心者向け】誤差関数(ERF)と相補誤差関数 (ERFC)。](https://qiita.com/ochimusha01/items/ee8b32e4b2cc7ce4acb0)<br>![image.gif](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fo%2Fochimusha01%2F20201113%2F20201113111114.gif?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&w=1400&fit=max&s=1be74c11a381d9d345d61b6c2be72199)

そして、こうした「<font color=purple>コンピューターによる視覚化</font>」プロセスが暴き出す「(<font color=blue>観察者の主観による恣意的補正に守られた</font>)**粗雑な代数構造の世界**」と「(<font color=blue>コンピューターが実際に稼働している</font>)**純粋数理に立脚する代数構造の世界**」のズレは、**極座標系**(<font color=blue>Polar Coordinate System</font>)と**デカルト座標系**(<font color=blue>Cartesian Coordinate System</font>)の狭間で新たな局面を迎えるのです。

#ユークリッド空間(<font color=blue>Euclidean Space</font>)における次元設定
[ユークリッド空間 - Wikipedia](https://ja.wikipedia.org/wiki/%E3%83%A6%E3%83%BC%E3%82%AF%E3%83%AA%E3%83%83%E3%83%89%E7%A9%BA%E9%96%93)
>古典的なギリシャ数学では、**ユークリッド平面**や（<font color=blue>三次元</font>）**ユークリッド空間**は所定の公準によって定義され、そこからほかの性質が定理として演繹されるものであった。現代数学では、**デカルト座標**と**解析幾何学**の考え方にしたがってユークリッド空間を定義するほうが普通である。そうすれば、幾何学の問題に代数学や解析学の道具を持ち込んで調べることができるようになるし、三次元以上のユークリッド空間への一般化も容易になるといった利点が生まれる。

実にさりげなく「**現代数学におけるパラダイムシフト**」概念、すなわち「**涅槃**=(<font color=blue>人間の脳でのみ稼働する</font>)<font color=purple>粗雑な代数構造</font>」から「**三昧**=(<font color=blue>コンピューター上でも稼働する</font>)<font color=purple>純粋数理に立脚する精緻な代数構造</font>」への飛躍の話が挿入されてますね。
[涅槃(サンスクリット語:निर्वाण、nirvāṇa=ニルヴァーナ) -Wikipedia](https://ja.wikipedia.org/wiki/%E6%B6%85%E6%A7%83)
[三昧(サンスクリット語: समाधि, ラテン文字転写: samādhi) -Wikipedia](https://ja.wikipedia.org/wiki/%E4%B8%89%E6%98%A7)
そして…

[フラクタル次元 -Wikipedia](https://ja.wikipedia.org/wiki/%E3%83%95%E3%83%A9%E3%82%AF%E3%82%BF%E3%83%AB%E6%AC%A1%E5%85%83)
>**ユークリッド次元**<font color=green>D</font>に存在する**線形サイズ**<font color=green>1</font>の図形があり、そのサイズを各空間方向に<font color=green>1/l</font>に縮めると、もとの図形を埋めるには<font color=green>N=l^D</font>個の**自己相似図形**が必要となる。すなわち<font color=green>D=log(N,base=l)</font>によって定義される次元はまだその**位相次元**もしくは**ユークリッド次元**と等しい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/671cc130-4099-0f40-cb4f-856ac02ce43f.png)

<font color=purple>統計言語Rによる実証結果</font>

```R
#Log base=exp(1)の世界
> log(Inf)
[1] Inf
> log(1)
[1] 0
> log(0)
[1] -Inf
#-Infは計算出来ない(0にはならない)。
> log(-Inf)
[1] NaN
 警告メッセージ: 
 log(-Inf) で:   計算結果が NaN になりました 
> log(exp(1))
[1] 1

#Log base=1の世界
> log(Inf,base=1)
[1] Inf
#log(1,base=1)は計算出来ない。
> 1^1
[1] 1
> log(1,base=1)
[1] NaN
 警告メッセージ: 
 計算結果が NaN になりました  
> log(0,base=1)
[1] -Inf
#やはり逆は計算出来ない(0にはならない)。
> log(-Inf,base=1)
[1] NaN
 警告メッセージ: 
 計算結果が NaN になりました  

#Log base=2の世界
> log(Inf,base=2)
[1] Inf
> log(1,base=2)
[1] 0
> log(0,base=2)
[1] -Inf
#やはり逆は計算出来ない(0にはならない)。
> log(-Inf,base=2)
[1] NaN
 警告メッセージ: 
 計算結果が NaN になりました  
#1次元
> 2^1
[1] 2
> log(2,base=2)
[1] 1
#2次元
> 2^2
[1] 4
> log(4,base=2)
[1] 2
#3次元
> 2^3
[1] 8
> log(8,base=2)
[1] 3

#Log base=3の世界
> log(Inf,base=3)
[1] Inf
> log(1,base=3)
[1] 0
> log(0,base=3)
[1] -Inf
#やはり逆は計算出来ない(0にはならない)。
> log(-Inf,base=3)
[1] NaN
 警告メッセージ: 
 計算結果が NaN になりました  
#1次元
> 3^1
[1] 3
> log(3,base=3)
[1] 1
#2次元
> 3^2
[1] 9
> log(9,base=3)
[1] 2
#3次元
> 3^3
[1] 27
> log(27,base=3)
[1] 3
```
おや？　**ユークリッド空間**において次元数算出を担う**指数・対数関数**(<font color=blue>Exponential/Logarithmic Function</font>)は「**次元数1**(<font color=blue>すなわち底=1,真数=自然数集合</font>)」の世界において<font color=green>真数1</font>の場合に、思わぬ挙動不審状態に陥る様です。
[【Yahoo知恵袋】高校数学の対数で、なぜ底が１ではいけないのでしょうか？](https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1036262460?__ysp=bG9nIDEg5bqV)

それはそれとして、こうして「<font color=purple>次元数が整数値の</font>」**ユークリッド次元**概念の定義から出発する「<font color=purple>次元数が非整数値の</font>」**フラクタル次元**の世界はともかく(<font color=blue>そちらは怖過ぎるので当面「遊泳禁止区域」に設定する</font>)、**ユークリッド空間**(<font color=blue>Euclidean Space</font>)は**座標系**(<font color=blue>Coodenate System</font>)でもあり、そこでは**単位図形**(<font color=blue>Unit Figure</font>)は貼られる数だけ空間を<font color=green>1/N分割</font>するのではなく<font color=green>N倍</font>に広げるし、その際に**偶奇性**(<font color=blue>Eveness</font>)問題が発生したりするのです。
[【初心者向け】偶奇性概念と共役関係概念の連続性について。](https://qiita.com/ochimusha01/items/cca87fc1fe1294ae6b20)
![image.gif](https://cdn-ak.f.st-hatena.com/images/fotolife/o/ochimusha01/20201126/20201126020800.gif)
立体的には単なる**同心円**とも、大半径1,小半径1の**トーラス構造**とも表現し得る。
![image.gif](https://cdn-ak.f.st-hatena.com/images/fotolife/o/ochimusha01/20201128/20201128025316.gif)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/fd3c8113-e0f0-495c-b65f-92bc00d7f554.png)

#単位立方体(<font color=blue>Unit Cube</font>)と単位球面(<font color=blue>Unit Shere</font>)
まずは**単位立方体**(<font color=blue>Unit Cube</font>)の生成関数を設定。

```R
library(rgl)
#座標(Coordinate)合成関数cd
cd<-function(a,b,c){paste0("(",a,",",b,",",c,")")}

#mo(Minus One),cp(Center Point),po(Plus One)
cube_draw01<-function(m,c,p,scale){
if(scale){
#頂点座標=8個
texts3d(m,m,m,texts=cd(m,m,m),col=rgb(0,0,0),adj=1.0)
texts3d(p,m,m,texts=cd(p,m,m),col=rgb(0,0,0),adj=1.0)
texts3d(m,p,m,texts=cd(m,p,m),col=rgb(0,0,0),adj=1.0)
texts3d(p,p,m,texts=cd(p,p,m),col=rgb(0,0,0),adj=1.0)
texts3d(m,m,p,texts=cd(m,m,p),col=rgb(0,0,0),adj=1.0)
texts3d(p,m,p,texts=cd(p,m,p),col=rgb(0,0,0),adj=1.0)
texts3d(m,p,p,texts=cd(m,p,p),col=rgb(0,0,0),adj=1.0)
texts3d(p,p,p,texts=cd(p,p,p),col=rgb(0,0,0),adj=1.0)

#頂点間中点=1+6+12=19個
texts3d(c,c,c,texts=cd(c,c,c),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(m,c,c,texts=cd(m,c,c),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(c,m,c,texts=cd(c,m,c),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(c,c,m,texts=cd(c,c,m),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(p,c,c,texts=cd(p,c,c),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(c,p,c,texts=cd(c,p,c),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(c,c,p,texts=cd(c,c,p),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(c,m,m,texts=cd(c,m,m),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(c,m,p,texts=cd(c,m,p),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(c,p,m,texts=cd(c,p,m),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(c,p,p,texts=cd(c,p,p),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(m,c,m,texts=cd(m,c,m),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(m,c,p,texts=cd(m,c,p),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(p,c,m,texts=cd(p,c,m),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(p,c,p,texts=cd(p,c,p),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(m,m,c,texts=cd(m,m,c),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(m,p,c,texts=cd(m,p,c),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(p,m,c,texts=cd(p,m,c),col=c(200,200,200),adj=1.0,cex=0.5)
texts3d(p,p,c,texts=cd(p,p,c),col=c(200,200,200),adj=1.0,cex=0.5)

#平方対角線(長さsqrt(2))=6面*2=12本
lines3d(c(m,p),c(m,p),c(m,m),col=rgb(0,1,0),lwd=1)
lines3d(c(m,p),c(p,m),c(m,m),col=rgb(0,1,0),lwd=1)
lines3d(c(m,p),c(m,p),c(p,p),col=rgb(0,1,0),lwd=1)
lines3d(c(m,m),c(m,p),c(m,p),col=rgb(0,1,0),lwd=1)
lines3d(c(m,p),c(p,m),c(p,p),col=rgb(0,1,0),lwd=1)
lines3d(c(m,m),c(m,p),c(p,m),col=rgb(0,1,0),lwd=1)
lines3d(c(m,p),c(m,m),c(m,p),col=rgb(0,1,0),lwd=1)
lines3d(c(m,p),c(m,m),c(p,m),col=rgb(0,1,0),lwd=1)
lines3d(c(p,p),c(m,p),c(p,m),col=rgb(0,1,0),lwd=1)
lines3d(c(p,p),c(m,p),c(m,p),col=rgb(0,1,0),lwd=1)
lines3d(c(m,p),c(p,p),c(p,m),col=rgb(0,1,0),lwd=1)
lines3d(c(m,p),c(p,p),c(m,p),col=rgb(0,1,0),lwd=1)
}

#正六面体(Square)本体=6面
lines3d(c(m,p,p,m,m),c(m,m,p,p,m),c(m,m,m,m,m),col=rgb(0,0,0),lwd=1)
lines3d(c(m,p,p,m,m),c(m,m,p,p,m),c(p,p,p,p,p),col=rgb(0,0,0),lwd=1)
lines3d(c(m,m),c(m,m),c(m,p),col=rgb(0,0,0),lwd=1)
lines3d(c(p,p),c(m,m),c(m,p),col=rgb(0,0,0),lwd=1)
lines3d(c(m,m),c(p,p),c(m,p),col=rgb(0,0,0),lwd=1)
lines3d(c(p,p),c(p,p),c(m,p),col=rgb(0,0,0),lwd=1)

#頂点間中線=3+12=15本
lines3d(c(p,m),c(c,c),c(c,c),col=c(200,200,200),lwd=1)
lines3d(c(c,c),c(p,m),c(c,c),col=c(200,200,200),lwd=1)
lines3d(c(c,c),c(c,c),c(p,m),col=c(200,200,200),lwd=1)
lines3d(c(c,c,c,c,c),c(m,p,p,m,m),c(m,m,p,p,m),col=c(200,200,200),lwd=1)
lines3d(c(m,p,p,m,m),c(c,c,c,c,c),c(m,m,p,p,m),col=c(200,200,200),lwd=1)
lines3d(c(m,p,p,m,m),c(m,m,p,p,m),c(c,c,c,c,c),col=c(200,200,200),lwd=1)

#立方対角線(長さsqrt(3))=4本
lines3d(c(m,p),c(m,p),c(m,p),col=rgb(0,0,1),lwd=1)
lines3d(c(m,p),c(p,m),c(p,m),col=rgb(1,0,0),lwd=1)
lines3d(c(m,p),c(p,m),c(m,p),col=rgb(1,0,0),lwd=1)
lines3d(c(m,p),c(m,p),c(p,m),col=rgb(1,0,0),lwd=1)
}
```
そして**半径**<font color=green>1</font>の**単位球面**(<font color=blue>Unit Sphere</font>)概念から出発します。
[【初心者向け】「単位円筒」から「単位球面」へ](https://qiita.com/ochimusha01/items/08f5c5ad1aba4a59a27d)
![image.gif](https://cdn-ak.f.st-hatena.com/images/fotolife/o/ochimusha01/20201202/20201202095654.gif)
これに対応するのは、とりあえず**一辺**<font color=green>2</font>の**立方体**(<font color=blue>Cube</font>)となりますね。

<font color=purple>偶数系</font>
[【オイラーの多面体定理と正多面体】とある「球面幾何学」の出発点…](https://qiita.com/ochimusha01/items/5f8dbf33bac5b7227a11)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/e06be4f1-b99f-5432-1b16-30ab1298b9f2.png)
<font color=green>X={-1,1},Y={-1,1}</font>の範囲
![image.gif](https://cdn-ak.f.st-hatena.com/images/fotolife/o/ochimusha01/20201123/20201123004635.gif)

```R
cube_draw01(-1,0,1,TRUE)
#アニメーション
movie3d(spin3d(axis=c(0,0,1),rpm=5),duration=10,fps=25,movie="~/Desktop/cube003")
```
<font color=green>X={-2,2},Y={-2,2}</font>の範囲
![image.gif](https://cdn-ak.f.st-hatena.com/images/fotolife/o/ochimusha01/20201123/20201123014625.gif)

```R
cube_draw01(-2,0,2,FALSE)
cube_draw01(-1,0,1,TRUE)
#アニメーション
movie3d(spin3d(axis=c(0,0,1),rpm=5),duration=10,fps=25,movie="~/Desktop/cube006")
```
<font color=purple>奇数系</font>
[【オイラーの多面体定理と正多面体】とある「球面幾何学」の出発点…](https://qiita.com/ochimusha01/items/5f8dbf33bac5b7227a11)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/0ed3bcfb-b981-58bd-ebbb-4869e72f4739.png)
<font color=green>X={0,2},Y={0,2}</font>の範囲
![image.gif](https://cdn-ak.f.st-hatena.com/images/fotolife/o/ochimusha01/20201123/20201123015812.gif)

```R
cube_draw01(0,1,2,TRUE)
#アニメーション
movie3d(spin3d(axis=c(0,0,1),rpm=5),duration=10,fps=25,movie="~/Desktop/cube007")
```
<font color=green>X={-2,2},Y={-2,2}</font>の範囲
![image.gif](https://cdn-ak.f.st-hatena.com/images/fotolife/o/ochimusha01/20201123/20201123020936.gif)

```R
cube_draw01(-2,0,2,FALSE)
cube_draw01(-2,-1,0,TRUE)
cube_draw01(0,1,2,TRUE)
#アニメーション
movie3d(spin3d(axis=c(0,0,1),rpm=5),duration=10,fps=25,movie="~/Desktop/cube009")
```
おや、何か違和感がありますね。そう、普段見慣れている**デカルト座標系**(<font color=blue>Cartesian Coordinate System</font>)における考え方はこうではないからです。

#デカルト座標系(<font color=blue>Cartesian Coordinate System</font>)における単位立方体(<font color=blue>Unit Cube</font>)

デカルト座標系は上掲の表現を用いると「<font color=purple>奇数系</font>」に該当し、その空間をとりあえず埋め尽くすのは1辺が**距離**<font color=green>1</font>の**単位立方体**(<font color=blue>Unit Cube</font>)となります。

<font color=green>X={0,1},Y={0,1}</font>の範囲での平方対角線と立方対角線
![image.gif](https://cdn-ak.f.st-hatena.com/images/fotolife/o/ochimusha01/20201123/20201123003414.gif)

```R
cube_draw01(0,0.5,1,TRUE)
#アニメーション
movie3d(spin3d(axis=c(0,0,1),rpm=5),duration=10,fps=25,movie="~/Desktop/cube001")
```
<font color=green>X={-1,1},Y={-1,1}</font>の範囲での平方対角線と立方対角線
![image.gif](https://cdn-ak.f.st-hatena.com/images/fotolife/o/ochimusha01/20201123/20201123011230.gif)

```R
cube_draw01(-1,0,1,FALSE)
cube_draw01(-1,-0.5,0,TRUE)
cube_draw01(0,0.5,1,TRUE)
#アニメーション
movie3d(spin3d(axis=c(0,0,1),rpm=5),duration=10,fps=25,movie="~/Desktop/cube005")
```
つまり**半径**<font color=green>1</font>の**単位円**<font color=red>1個</font>に一辺<font color=green>1</font>の**単位立方体**<font color=red>8個</font>が対応する換算…どうもこの辺りに何らかの形で「**隔壁**」が落とされた気配がします。詳細は以下続報…