Addin機能の使い方
白地図への地図要素の付加について

ここでは、オリジナルの白地図に様々な地図要素を付加する方法を説明します。
まず、書き加えたい地図要素の緯度経度を調べて、経度、緯度、描画方法、描画色、線の太さをCSV型式で記述したテキストファイルを作成します。
以下は、利根川とその支流の鬼怒川及び筑波山、日光の男体山、谷川岳を記録した例です。

"E140.50'53""","N35.44'24""",moveto,blue,1000,利根川,茨城県,千葉県
"E140.48'40""","N35.44'34""",lineto,blue,1000,利根川,茨城県,千葉県
"E140.43'30""","N35.47'54""",lineto,blue,1000,利根川,茨城県,千葉県
"E140.42'39""","N35.49'57""",lineto,blue,1000,利根川,茨城県,千葉県
"E140.36'56""","N35.51'50""",lineto,blue,1000,利根川,茨城県,千葉県
"E140.33'36""","N35.54'12""",lineto,blue,800,利根川,茨城県,千葉県
"E140.30'42""","N35.54'03""",lineto,blue,600,利根川,茨城県,千葉県
"E140.27'43""","N35.55'01""",lineto,blue,500,利根川,茨城県,千葉県
"E140.21'24""","N35.53'48""",lineto,blue,500,利根川,茨城県,千葉県
"E140.18'46""","N35.51'52""",lineto,blue,500,利根川,茨城県,千葉県
"E140.16'41""","N35.52'24""",lineto,blue,500,利根川,茨城県,千葉県
"E140.13'57""","N35.51'17""",lineto,blue,400,利根川,茨城県,千葉県
"E140.09'00""","N35.50'38""",lineto,blue,300,利根川,茨城県,千葉県
"E140.05'45""","N35.53'01""",lineto,blue,300,利根川,茨城県,千葉県
"E140.00'58""","N35.54'38""",lineto,blue,300,利根川,茨城県,千葉県
"E139.56'12""","N35.56'37""",lineto,blue,300,利根川,茨城県,千葉県
"E139.52'53""","N35.59'41""",lineto,blue,300,利根川,茨城県,千葉県
"E139.51'17""","N36.01'50""",lineto,blue,300,利根川,茨城県,千葉県
"E139.46'33""","N36.06'34""",lineto,blue,300,利根川,茨城県,千葉県
"E139.42'34""","N36.08'11""",lineto,blue,300,利根川,茨城県,埼玉県
"E139.37'24""","N36.11'14""",lineto,blue,200,利根川,茨城県,埼玉県
"E139.35'09""","N36.12'38""",lineto,blue,150,利根川,群馬県,埼玉県
"E139.27'34""","N36.11'24""",lineto,blue,100,利根川,群馬県,埼玉県
"E139.21'52""","N36.14'39""",lineto,blue,100,利根川,群馬県,埼玉県
"E139.11'28""","N36.15'51""",lineto,blue,100,利根川,群馬県,
"E139.04'36""","N36.19'57""",lineto,blue,100,利根川,群馬県,
"E139.00'57""","N36.29'34""",lineto,blue,100,利根川,群馬県,
"E139.03'08""","N36.35'28""",lineto,blue,100,利根川,群馬県,
"E139.01'06""","N36.39'20""",lineto,blue,100,利根川,群馬県,
"E138.58'37""","N36.42'19""",lineto,blue,50,利根川,群馬県,
"E138.58'03""","N36.46'50""",lineto,blue,50,利根川,群馬県,
"E138.59'45""","N36.48'05""",lineto,blue,50,利根川,群馬県,
"E139.02'43""","N36.48'39""",lineto,blue,50,利根川,群馬県
"E139.03'32""","N36.52'12""",lineto,blue,50,利根川,群馬県
"E139.03'39""","N36.55'50""",lineto,blue,10,利根川,群馬県
"E139.07'13""","N36.59'58""",lineto,blue,10,利根川,群馬県
"E139.06'17""","N37.02'33""",lineto,blue,10,利根川,群馬県
"E139.56'59""","N35.56'21""",moveto,blue,100,鬼怒川,茨城県,
"E139.56'40""","N35.57'09""",lineto,blue,100,鬼怒川,茨城県,
"E139.57'20""","N35.58'30""",lineto,blue,100,鬼怒川,茨城県,
"E139.58'25""","N35.59'12""",lineto,blue,100,鬼怒川,茨城県,
"E139.58'21""","N36.00'11""",lineto,blue,100,鬼怒川,茨城県,
"E139.59'06""","N36.01'29""",lineto,blue,100,鬼怒川,茨城県,
"E139.58'49""","N36.02'05""",lineto,blue,100,鬼怒川,茨城県,
"E139.59'17""","N36.02'47""",lineto,blue,100,鬼怒川,茨城県,
"E139.58'39""","N36.04'39""",lineto,blue,100,鬼怒川,茨城県,
"E139.57'38""","N36.05'28""",lineto,blue,100,鬼怒川,茨城県,
"E139.58'06""","N36.06'56""",lineto,blue,100,鬼怒川,茨城県,
"E139.55'13""","N36.12'00""",lineto,blue,100,鬼怒川,茨城県,栃木県
"E139.53'16""","N36.15'13""",lineto,blue,100,鬼怒川,茨城県,栃木県
"E139.54'31""","N36.17'09""",lineto,blue,100,鬼怒川,茨城県,栃木県
"E139.54'47""","N36.20'05""",lineto,blue,100,鬼怒川,茨城県,栃木県
"E139.55'53""","N36.23'00""",lineto,blue,100,鬼怒川,栃木県,
"E139.56'30""","N36.27'11""",lineto,blue,100,鬼怒川,栃木県
"E139.57'46""","N36.28'15""",lineto,blue,100,鬼怒川,栃木県
"E139.56'56""","N36.32'35""",lineto,blue,100,鬼怒川,栃木県
"E139.58'14""","N36.34'22""",lineto,blue,100,鬼怒川,栃木県
"E139.58'11""","N36.36'59""",lineto,blue,100,鬼怒川,栃木県
"E139.56'59""","N36.40'09""",lineto,blue,100,鬼怒川,栃木県
"E139.55'36""","N36.42'02""",lineto,blue,100,鬼怒川,栃木県
"E139.53'19""","N36.43'38""",lineto,blue,100,鬼怒川,栃木県
"E139.50'17""","N36.43'53""",lineto,blue,100,鬼怒川,栃木県
"E139.45'14""","N36.46'03""",lineto,blue,50,鬼怒川,栃木県
"E139.42'30""","N36.46'39""",lineto,blue,50,鬼怒川,栃木県
"E139.42'03""","N36.47'53""",lineto,blue,50,鬼怒川,栃木県
"E139.43'47""","N36.51'07""",lineto,blue,50,鬼怒川,栃木県
"E139.41'59""","N36.52'45""",lineto,blue,50,鬼怒川,栃木県
"E139.42'37""","N36.53'44""",lineto,blue,50,鬼怒川,栃木県
"E139.40'22""","N36.54'42""",lineto,blue,10,鬼怒川,栃木県
"E139.38'32""","N36.52'37""",lineto,blue,10,鬼怒川,栃木県
"E139.32'05""","N36.51'38""",lineto,blue,10,鬼怒川,栃木県
"E139.30'08""","N36.52'45""",lineto,blue,10,鬼怒川,栃木県
"E139.25'54""","N36.52'44""",lineto,blue,10,鬼怒川,栃木県
"E139.22'13""","N36.51'23""",lineto,blue,10,鬼怒川,栃木県
"E140.06'23""","N36.13'31""",setpixel,red,2000,筑波山,茨城県
"E139.29'26""","N36.45'54""",setpixel,red,2000,男体山,栃木県
"E138.55'48""","N36.50'04""",setpixel,red,2000,谷川岳,群馬県、新潟県
緯度、経度は独特の方法で記述してありますが、実数値でも記述できます。利用可能な表現方法はprojection.cppをご覧下さい。
3カラム目は、描画方法を指定します。折れ線の起点は、moveto と記述し、以降 lineto で折れ線を描きます。 閉図形にしたいのならば、末尾で loop と記述して下さい。moveto まで戻る線が描かれます。 点を打つには setpixel と記述します。5カラム目の線幅を太くすると、点ではなく塗りつぶし円で描かれます。
4カラム目は、色名称を指定します。(後述)
5カラム目の線幅はメートル単位で指定します。実際の描画では地図の縮尺に応じて描かれます。 線幅は省略できます。また、0を指定しても構いません。省略されたり1以下の値を指定された場合、線幅は常に1画素幅で描かれます。
6カラム目以降のカラムは、参考情報なので記述しなくてもよいです。

色名称として指定できるのは、以下の通りです。

色名称 色見本 R (16進値) G (16進値) B (16進値)
black 00 00 00
dimgray 69 69 69
gray 80 80 80
silver c0 c0 c0
lightgray d3 d3 d3
whitesmoke f5 f5 f5
white ff ff ff
maroon 80 00 00
brown a5 2a 2a
red ff 00 00
tomato ff 63 47
orange ff a5 00
pink ff c0 cb
mistyrose ff e4 e1
darkgreen 00 64 00
green 00 80 00
teal 00 80 80
lime 00 ff 00
lightgreen 90 ee 90
navy 00 00 80
blue 00 00 ff
lightblue ad d8 e6
cyan 00 ff ff
azure f0 ff ff
honeydew f0 ff f0
aquamarine 7f ff d4
purple 80 00 80
fuchsia ff 00 ff
violet ee 82 ee
olive 80 80 00
yellow ff ff 00
lightyellow ff ff e0
beige f5 f5 dc
peru cd 85 3f


座標データが用意できたなら、spmap.exe と同じディレクトリに spmap.ini ファイルが置かれているので、このファイルをテキストエディタで開いて編集し、AddinMap という項目に座標データファイル名を登録します。 ここでは、座標データが river.csv というファイル名で dbase ディレクトリに置いてあるものとします。 使用するオリジナルの白地図もここで指定します。
spmap.iniの図

SPMAPを起動して、適当な生物の分布図を表示させます。利根川と鬼怒川が青い線で、筑波山、日光の男体山、谷川岳が赤丸で描かれているのがわかります。
分布図

大縮尺の地図で見ると、利根川下流の幅が太く描かれているのもわかります。
大縮尺分布図

このままでも使えますが、座標データを展開するぶん動作が遅くなってしまいます。動作を早くするには、表示されている地図をファイルに保存し、次回からは保存した画像ファイルを新しい白地図として使うようにします。 そのため、分布点を持たない生物を選んで地図を表示させて下さい。これだと新しい白地図のイメージそのものになります。ここでは、ヤンバルテナガコガネの分布図を作ったと仮定しましょう。(関東地方にヤンバルテナガコガネは分布してませんから...)
ファイル保存のダイアログ

SPMAPを一旦終了し、新しく作った地図ファイルの名前をオリジナル白地図の名前に差し替えます。
ファイル名変更

座標データの読み込みは、もう必要ないので、spmap.ini ファイルを再び編集し、AddinMapの右辺を消します。
spmap.iniの図2

SPMAPを再起動して、適当な分布図を表示してみて下さい。追加した地図要素も表示されているはずです。
一度に登録できる座標データは5万件までですが、上記操作を繰り返せば、いくらでも、地図要素を追加できます。