こんにちは、ちーでーす。(*^_^*)
改良型 7oct宝珠メノラー(小型化Ver.2)(あわ/ひふみ祝詞,タネコクサ文字,文字上向き,時計/反時計回り)を掲載いたしまーす。
*プログラム(要:十進BASICインタプリター システム)
(要:windows コントロールパネルのフォントの画面に、TCMタネコクサ文字フォントを入れておくこと。)
フォント(URL再掲載): https://hikkyneet.up.seesaa.net/image/TF-TANKS.TTF
※小型化と共に宝珠の頂点を約60度にしました。
SET BITMAP SIZE 4401,4401
SET WINDOW -2200,2200,-2200,2200
SET POINT STYLE 1
SET LINE COLOR 1
SET LINE WIDTH 1
OPTION ANGLE DEGREES
CALL houju2awa(0,-1159,22.5)
CALL houju2hihumi(0,-1159,67.5)
CALL houju2awa(0,-1159,112.5)
CALL houju2hihumi(0,-1159,157.5)
CALL houju2awa(0,-1159,202.5)
CALL houju2hihumi(0,-1159,247.5)
CALL houju2awa(0,-1159,292.5)
CALL houju2hihumi(0,-1159,337.5)
CALL daihachikaku
END
EXTERNAL SUB houju2awa(ZX,ZY,ZDEG)
OPTION ANGLE DEGREES
DIM X(5),Y(5)
DIM XX8(9,4),YY8(9,4)
PICTURE shikaku21
REM 宝珠用文字セット
SET TEXT FONT "TCM Tanekokusa Character" ,12
READ B$
SET TEXT ANGLE E
PLOT TEXT,AT 0,A:B$
END PICTURE
PICTURE shikaku2
REM 八角形用文字セット
SET TEXT FONT "TCM Tanekokusa Character" ,18
READ B$
SET TEXT ANGLE E
PLOT TEXT,AT 0,A:B$
END PICTURE
PICTURE shikaku31
REM あわ(文字上向き時計回り)渦巻き(大)
FOR I=360 TO 719 STEP 45
LET F=I/21
LET XX=F*SIN(I)
LET YY=F*COS(I)
DRAW shikaku21 WITH SHIFT(XX,YY)
NEXT I
FOR I=720 TO 1079 STEP 22.5
LET F=I/21
LET XX=F*SIN(I)
LET YY=F*COS(I)
DRAW shikaku21 WITH SHIFT(XX,YY)
NEXT I
FOR I=1080 TO 1439 STEP 15
LET F=I/21
LET XX=F*SIN(I)
LET YY=F*COS(I)
DRAW shikaku21 WITH SHIFT(XX,YY)
NEXT I
END PICTURE
PICTURE shikaku49
REM あわ(文字上向き時計回り)渦巻き(大)
REM SET TEXT JUSTIFY文↓を追加してみました
SET TEXT JUSTIFY "center" , "half"
LET A=0
LET E=0
DRAW shikaku31 WITH ROTATE(0)
END PICTURE
PICTURE shikaku52
REM 宝珠(ひふみ/あわ)
PLOT LINES: 65,37;0,150
PLOT LINES: -65,37;0,150
LET D=75
LET XX=D*COS(36)
LET YY=D*SIN(36)
FOR I=35.5 TO -216 STEP -0.5
LET XX2=D*COS(I)
LET YY2=D*SIN(I)
PLOT LINES: XX,YY;XX2,YY2
LET XX=XX2
LET YY=yy2
NEXT I
END PICTURE
PICTURE mugendai1
REM 宝珠1個完成(あわ)
DRAW shikaku52
DRAW shikaku49
END PICTURE
PICTURE eda1
REM 枝の部分
FOR D=160 TO 480 STEP 160
LET XX=D*COS(0)
LET YY=D*SIN(0)
FOR I=-0.25 TO -180 STEP -0.25
LET XX2=D*COS(I)
LET YY2=D*SIN(I)
PLOT LINES: XX,YY;XX2,YY2
LET XX=XX2
LET YY=yy2
NEXT I
NEXT D
END PICTURE
PICTURE houju2sub
REM 宝珠1列と半円(あわ)
DRAW mugendai1 WITH SHIFT(0,0)
RESTORE
LET R=480
FOR II=160 TO R STEP 160
DRAW mugendai1 WITH SHIFT(II,0)
RESTORE
DRAW mugendai1 WITH SHIFT(-II,0)
IF II<R THEN RESTORE
NEXT II
DRAW eda1 WITH SHIFT(0,-75)
PLOT LINES: 0,-75;0,-635
END PICTURE
PICTURE hachikaku2sub
REM 八角形の部分
FOR II=24 TO 96 STEP 24
DRAW CIRCLE WITH SCALE(II)
NEXT II
LET L=0
FOR II=130 TO 202 STEP 24
LET L=L+1
LET K=0
FOR JJ=0 TO 360 STEP 45
LET K=K+1
LET XX8(K,L)=II*COS(JJ)
LET YY8(K,L)=II*SIN(JJ)
NEXT JJ
PLOT LINES: XX8(1,L),YY8(1,L);XX8(2,L),YY8(2,L);XX8(3,L),YY8(3,L)
PLOT LINES: XX8(3,L),YY8(3,L);XX8(4,L),YY8(4,L);XX8(5,L),YY8(5,L)
PLOT LINES: XX8(5,L),YY8(5,L);XX8(6,L),YY8(6,L);XX8(7,L),YY8(7,L)
PLOT LINES: XX8(7,L),YY8(7,L);XX8(8,L),YY8(8,L);XX8(9,L),YY8(9,L)
NEXT II
PLOT LINES: 0,24;0,-24
FOR K=1 TO 8 STEP 1
LET I=K*45
LET P=130*COS(I)
LET Q=130*SIN(I)
LET P1=202*COS(I)
LET Q1=202*SIN(I)
PLOT LINES: P,Q;P1,Q1
NEXT K
SET TEXT JUSTIFY "center" , "bottom"
LET A=0
LET E=0
DRAW shikaku2 WITH SHIFT(11,-11)
DRAW shikaku2 WITH SHIFT(-11,-11)
SET TEXT JUSTIFY "center" , "bottom"
LET A=26
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=50
LET E=0
FOR II=0 TO 3
LET C=-II*360/4-45
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=74
LET E=0
FOR II=0 TO 3
LET C=-II*360/4-45
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=99
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=121
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=144
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=165
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
END PICTURE
PICTURE zukei1
DRAW houju2sub
DRAW hachikaku2sub WITH SHIFT(0,-837)
END PICTURE
LET ZY=ZY-150
DRAW zukei1 WITH SHIFT(ZX,ZY)*ROTATE(ZDEG)
REM あわ唄
DATA "ア","カ","ハ","ナ","マ","イ","キ","ヒ"
DATA "ニ","ミ","ウ","ク","フ","ヌ","ム","エ"
DATA "ケ","ヘ","ネ","メ","オ","コ","ホ","ノ"
DATA "モ","ト","ロ","ソ","ヨ","ヲ","テ","レ"
DATA "セ","ォ","ツ","ル","ス","ユ","ゥ","チ"
DATA "リ","シ","ァ","タ","ラ","サ","ヤ","ワ"
REM 八角形
DATA "イ","ィ"
DATA "チ","キ","ミ","ヒ","リ","ニ","ァ","シ"
DATA "オ","ウ","ア","エ"
DATA "ゥ","ェ","ワ","ヲ"
DATA "タ","カ","マ","ハ","ラ","ナ","ヤ","サ"
DATA "テ","ケ","メ","ヘ","レ","ネ","ォ","セ"
DATA "ト","コ","モ","ホ","ロ","ノ","ヨ","ソ"
DATA "ツ","ク","ム","フ","ル","ヌ","ユ","ス"
END SUB
EXTERNAL SUB houju2hihumi(ZX,ZY,ZDEG)
OPTION ANGLE DEGREES
DIM X(5),Y(5)
DIM XX8(9,4),YY8(9,4)
PICTURE shikaku21
REM 宝珠用文字セット
SET TEXT FONT "TCM Tanekokusa Character" ,12
READ B$
SET TEXT ANGLE E
PLOT TEXT,AT 0,A:B$
END PICTURE
PICTURE shikaku2
REM 八角形用文字セット
SET TEXT FONT "TCM Tanekokusa Character" ,18
READ B$
SET TEXT ANGLE E
PLOT TEXT,AT 0,A:B$
END PICTURE
PICTURE shikaku31
REM ひふみ(文字上向き反時計回り)渦巻き(大)
FOR I=360 TO 719 STEP 45
LET F=I/21
LET XX=F*COS(I)
LET YY=F*SIN(I)
DRAW shikaku21 WITH SHIFT(XX,YY)
NEXT I
FOR I=720 TO 1079 STEP 22.5
LET F=I/21
LET XX=F*COS(I)
LET YY=F*SIN(I)
DRAW shikaku21 WITH SHIFT(XX,YY)
NEXT I
FOR I=1080 TO 1439 STEP 15
LET F=I/21
LET XX=F*COS(I)
LET YY=F*SIN(I)
DRAW shikaku21 WITH SHIFT(XX,YY)
NEXT I
END PICTURE
PICTURE shikaku49
REM ひふみ(文字上向き反時計回り)渦巻き(大)
REM SET TEXT JUSTIFY文↓を追加してみました
SET TEXT JUSTIFY "center" , "half"
LET A=0
LET E=-90
DRAW shikaku31 WITH ROTATE(90)
END PICTURE
PICTURE shikaku52
REM 宝珠(ひふみ/あわ)
PLOT LINES: 65,37;0,150
PLOT LINES: -65,37;0,150
LET D=75
LET XX=D*COS(36)
LET YY=D*SIN(36)
FOR I=35.5 TO -216 STEP -0.5
LET XX2=D*COS(I)
LET YY2=D*SIN(I)
PLOT LINES: XX,YY;XX2,YY2
LET XX=XX2
LET YY=yy2
NEXT I
END PICTURE
PICTURE mugendai1
REM 宝珠1個完成(ひふみ)
DRAW shikaku52
DRAW shikaku49
END PICTURE
PICTURE eda1
REM 枝の部分
FOR D=160 TO 480 STEP 160
LET XX=D*COS(0)
LET YY=D*SIN(0)
FOR I=-0.25 TO -180 STEP -0.25
LET XX2=D*COS(I)
LET YY2=D*SIN(I)
PLOT LINES: XX,YY;XX2,YY2
LET XX=XX2
LET YY=yy2
NEXT I
NEXT D
END PICTURE
PICTURE houju2sub
REM 宝珠1列と半円(あわ)
DRAW mugendai1 WITH SHIFT(0,0)
RESTORE
LET R=480
FOR II=160 TO R STEP 160
DRAW mugendai1 WITH SHIFT(II,0)
RESTORE
DRAW mugendai1 WITH SHIFT(-II,0)
IF II<R THEN RESTORE
NEXT II
DRAW eda1 WITH SHIFT(0,-75)
PLOT LINES: 0,-75;0,-635
END PICTURE
PICTURE hachikaku2sub
REM 八角形の部分
FOR II=24 TO 96 STEP 24
DRAW CIRCLE WITH SCALE(II)
NEXT II
LET L=0
FOR II=130 TO 202 STEP 24
LET L=L+1
LET K=0
FOR JJ=0 TO 360 STEP 45
LET K=K+1
LET XX8(K,L)=II*COS(JJ)
LET YY8(K,L)=II*SIN(JJ)
NEXT JJ
PLOT LINES: XX8(1,L),YY8(1,L);XX8(2,L),YY8(2,L);XX8(3,L),YY8(3,L)
PLOT LINES: XX8(3,L),YY8(3,L);XX8(4,L),YY8(4,L);XX8(5,L),YY8(5,L)
PLOT LINES: XX8(5,L),YY8(5,L);XX8(6,L),YY8(6,L);XX8(7,L),YY8(7,L)
PLOT LINES: XX8(7,L),YY8(7,L);XX8(8,L),YY8(8,L);XX8(9,L),YY8(9,L)
NEXT II
PLOT LINES: 0,24;0,-24
FOR K=1 TO 8 STEP 1
LET I=K*45
LET P=130*COS(I)
LET Q=130*SIN(I)
LET P1=202*COS(I)
LET Q1=202*SIN(I)
PLOT LINES: P,Q;P1,Q1
NEXT K
SET TEXT JUSTIFY "center" , "bottom"
LET A=0
LET E=0
DRAW shikaku2 WITH SHIFT(11,-11)
DRAW shikaku2 WITH SHIFT(-11,-11)
SET TEXT JUSTIFY "center" , "bottom"
LET A=26
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=50
LET E=0
FOR II=0 TO 3
LET C=-II*360/4-45
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=74
LET E=0
FOR II=0 TO 3
LET C=-II*360/4-45
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=99
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=121
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=144
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=165
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
END PICTURE
PICTURE zukei1
DRAW houju2sub
DRAW hachikaku2sub WITH SHIFT(0,-837)
END PICTURE
LET ZY=ZY-150
DRAW zukei1 WITH SHIFT(ZX,ZY)*ROTATE(ZDEG)
REM ひふみ祝詞
DATA "ヒ","フ","ミ","ヨ","イ","ム","ナ","ヤ"
DATA "コ","ト","モ","チ","ロ","ラ","ネ","シ"
DATA "キ","ル","ユ","ァ","ツ","ワ","ヌ","ソ"
DATA "ヲ","タ","ハ","ク","メ","カ","ウ","オ"
DATA "ォ","ニ","サ","リ","ヘ","テ","ノ","マ"
DATA "ス","ア","セ","エ","ホ","レ","ケ","ゥ"
REM 八角形
DATA "イ","ィ"
DATA "チ","キ","ミ","ヒ","リ","ニ","ァ","シ"
DATA "オ","ウ","ア","エ"
DATA "ゥ","ェ","ワ","ヲ"
DATA "タ","カ","マ","ハ","ラ","ナ","ヤ","サ"
DATA "テ","ケ","メ","ヘ","レ","ネ","ォ","セ"
DATA "ト","コ","モ","ホ","ロ","ノ","ヨ","ソ"
DATA "ツ","ク","ム","フ","ル","ヌ","ユ","ス"
END SUB
EXTERNAL SUB daihachikaku
OPTION ANGLE DEGREES
DIM X(5),Y(5)
DIM XX8(9,4),YY8(9,4)
PICTURE shikaku2
REM 八角形用文字セット
SET TEXT FONT "TCM Tanekokusa Character" ,100
READ B$
SET TEXT ANGLE E
PLOT TEXT,AT 0,A:B$
END PICTURE
PICTURE hachikaku2sub
REM 八角形の部分
FOR II=149 TO 596 STEP 149
DRAW CIRCLE WITH SCALE(II)
NEXT II
LET L=0
FOR II=806 TO 1253 STEP 149
LET L=L+1
LET K=0
FOR JJ=0 TO 360 STEP 45
LET K=K+1
LET XX8(K,L)=II*COS(JJ)
LET YY8(K,L)=II*SIN(JJ)
NEXT JJ
PLOT LINES: XX8(1,L),YY8(1,L);XX8(2,L),YY8(2,L);XX8(3,L),YY8(3,L)
PLOT LINES: XX8(3,L),YY8(3,L);XX8(4,L),YY8(4,L);XX8(5,L),YY8(5,L)
PLOT LINES: XX8(5,L),YY8(5,L);XX8(6,L),YY8(6,L);XX8(7,L),YY8(7,L)
PLOT LINES: XX8(7,L),YY8(7,L);XX8(8,L),YY8(8,L);XX8(9,L),YY8(9,L)
NEXT II
PLOT LINES: 0,149;0,-149
FOR K=1 TO 8 STEP 1
LET I=K*45
LET P=596*COS(I)
LET Q=596*SIN(I)
LET P1=1253*COS(I)
LET Q1=1253*SIN(I)
PLOT LINES: P,Q;P1,Q1
NEXT K
SET TEXT JUSTIFY "center" , "bottom"
LET A=0
LET E=0
DRAW shikaku2 WITH SHIFT(60,-70)
DRAW shikaku2 WITH SHIFT(-64,-70)
SET TEXT JUSTIFY "center" , "bottom"
LET A=157
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=309
LET E=0
FOR II=0 TO 3
LET C=-II*360/4-45
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=460
LET E=0
FOR II=0 TO 3
LET C=-II*360/4-45
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=612
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=754
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=886
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
SET TEXT JUSTIFY "center" , "bottom"
LET A=1023
LET E=0
FOR II=0 TO 7
LET C=-II*360/8-22.5
DRAW shikaku2 WITH ROTATE(C)
NEXT II
END PICTURE
DRAW hachikaku2sub WITH SHIFT(0,0)
REM 八角形
DATA "イ","ィ"
DATA "チ","キ","ミ","ヒ","リ","ニ","ァ","シ"
DATA "オ","ウ","ア","エ"
DATA "ゥ","ェ","ワ","ヲ"
DATA "タ","カ","マ","ハ","ラ","ナ","ヤ","サ"
DATA "テ","ケ","メ","ヘ","レ","ネ","ォ","セ"
DATA "ト","コ","モ","ホ","ロ","ノ","ヨ","ソ"
DATA "ツ","ク","ム","フ","ル","ヌ","ユ","ス"
END SUB