「大黒書・第零版alpha05」を公開しました
「大黒書」の第零版alpha05を公開しました。
前バージョン(第零版alpha04)からの変更点:
- 第二節第一項を修正して、「原子神」(atomic god)の定義を「自由意志を持つ存在者」から「集合ではない神」に変更しました。
八軸神の位置を求めるプログラムを書いてみました
大黒曼荼羅を描くときに、八軸神のそれぞれを描くべき位置を求めるPythonのプログラムを書いてみました。
import sys from math import * def daikoku(radius, lettersize): eight = ['稲荷', '釈迦', '弁財天', '基督', '聖母', '弥勒', '西王母', '戎'] pi4 = pi / 4 theta = pi / 8 * 3 for i in range(8): god = eight[i] x = cos(theta) * radius - lettersize / 2 y = sin(theta) * radius - lettersize * len(god) / 2 signx = '' if x >= 0 else '-' signy = '' if y >= 0 else '-' sx = (signx + str(int(abs(x))) + '.' + str(int(abs(x)*10%10))) sy = (signy + str(int(abs(y))) + '.' + str(int(abs(y)*10%10))) print(god + ': ' + sx + ', ' + sy) theta -= pi4 if len(sys.argv) == 3: radius = float(sys.argv[1]) lettersize = float(sys.argv[2]) daikoku(radius, lettersize) else: print('Usage: python daikoku.py radius lettersize')
このプログラムは、コマンドライン引数の1個目として八軸神が形成する正八角形に外接する円の半径を、2個目として八軸神の文字の大きさ(正方形の一辺の長さ)を受け取って、円の中心を原点とする座標系で、八軸神の左下の位置の座標を出力します。
たとえば、円の半径として100、文字の大きさとして10を渡して、このプログラムを実行すると、次のようなものを出力します。
稲荷: 33.2, 82.3 釈迦: 87.3, 28.2 弁財天: 87.3, -53.2 基督: 33.2, -102.3 聖母: -43.2, -102.3 弥勒: -97.3, -48.2 西王母: -97.3, 23.2 戎: -43.2, 87.3