GIS Matilda 旧プロジェクトファイル(.ttkgp)
旧プロジェクトファイルは既に出来上がって個々の図形ファイルをどのように表示、表現させるかを定義したファイルです。別のGISなどではワーキングファイルとかウェアハウスとか設定ファイルとか色々な名前で呼ばれる事がありますが、本アプリケーションではプロジェクトファイルと呼びます。
旧プロジェクトファイルの拡張子は「.ttkgp」となります。 ファイル名は日本語でも問題ありませんが、iOS版のMobileMatildaでの互換利用を期待する場合はiOSでの動作都合上、日本語はUTF-8に変換されてしまいますので半角英数字を使う方が無難です。

(例)osakacity.ttkgp → 大阪市の図形ファイルが集まったプロジェクト(大阪市の地図という感じ)


なぜ「旧」なのかというと開発の歴史は深くて最新の複雑な地図表現はこの旧型プロジェクトではカバーできなくなってきたためです。ただこれから説明する単純な構成のものについては旧はといえシンプルで理解しやすい構成ですのでまずはこちらから学んで頂けると幸いです。
どちらかというと、基本的な構成として初期段階の骨組みは見やすいので旧型で作成し、文字の大きさをコト細かくとか、色等、徐々にお化粧をしていくような状態のときは新プロジェクトで設定していくことをお勧めします。

他にも最新の複雑な定義をしたい方はこちらの「新プロジェクトファイル(.ttkproject)について」をご覧ください。

まずは現在の状態を保存して確認
次のようにビューウィンドウ上に図形が読み込まれている状態がある場合はそれらの情報をプロジェクトファイルに保存する事ができます。これを再度開くことで内容として定義してある図形ファイルをいつでも再現して表示することができます。


保存方法は次のように「プロジェクトファイルを保存」を選択します。

保存するときにはファイルの種類から 旧プロジェクトファイルを選択してください。
名前を指定して保存するとxxxxx.ttkgpというファイル名前のファイルができて保存されます。
但し旧プロジェクトファイルで表現しきれない定義については新プロジェクトファイル(xxxxx.ttkproject)も出力されます。
この場合、旧プロジェクトファイル(xxxxx.ttkgp)は再読み込みの時には必要なく、新プロジェクトファイル(xxxxx.ttkproject)だけで読み込み可能です。
メモ帳や一般的なテキストエディタで編集可能です。

設定タグ(中身)について
設定タグの大まかな定義は次のようになっています

[TatukGIS] ←プロジェクト全体への定義
全体的な設定値1・・・
全体的な設定値2・・・
全体的な設定値3・・・

[TatukGIS Layer1] ←レイヤー1の設定
レイヤー1の個々の設定値1・・・
レイヤー1の個々の設定値2・・・

[TatukGIS Layer2] ←レイヤー2の設定
レイヤー2の個々の設定値1・・・
レイヤー2の個々の設定値2・・・

[TatukGIS Layer3] ←レイヤー3の設定
レイヤー3の個々の設定値1・・・
レイヤー3の個々の設定値2・・・

[TatukGIS Hierarchy] ←グループ階層表示の設定
グループ名1の設定・・・
グループ名2の設定・・・

[TatukGIS Group1] ←グループ名1の設定
グループ名1の個々の設定値1・・・
グループ名1の個々の設定値2・・・

[TatukGIS Group2] ←グループ名2の設定
グループ名2の個々の設定値1・・・
グループ名2の個々の設定値2・・・

[TatukGIS Layer1 1] ←レイヤー1のセクション1の設定・・・
レイヤー1のセクション1の個々の設定1・・・
レイヤー1のセクション1の個々の設定2・・・

[TatukGIS Layer1 2] ←レイヤー1のセクション2の設定・・・
レイヤー1のセクション2の個々の設定1・・・
レイヤー1のセクション2の個々の設定2・・・

もっと複雑にした形成もできますが、だいたい大まかには上記のフローで一通りの定義ができると思います。

プロジェクト全体の定義について
ここではプロジェクト全体の定義を行います。

例えば、開いた時に一番最初に表示させる場所の矩形座標値を次のように指定しますと、その場所が初期画面になります。
[TatukGIS]
VisibleExtent.XMax=-33695.989 ← ①
VisibleExtent.XMin=-46461.553 ← ②
VisibleExtent.YMax=-137101.427 ← ③
VisibleExtent.YMin=-149305.367 ← ④


プロジェクト全体の設定は他にもありますが、よく使うものとしての一例です。表示させる矩形座標値はとても強力であり、データを開いた直後に描画する量がここで決まりますので相当量のデータサイズのものでも、この辺りをきちんと用途に合わせて定義すると、更に高速に動作します。

レイヤー n の設定について
ここでは各レイヤーの定義を行います。例として以下にサンプルを記します。 基本的にはこのプロパティダイアログで設定した内容が以下のようにテキスト出力されるので簡単なのですが、仕組みを明確にするために以下、記しています。


[TatukGIS n] ←n はレイヤー数のユニーク番号
Active=YES  ← レジェンドバーのレイヤーのチェックをON(表示する)
Area.OutlineColor=RED  ← 線は赤色(RGB色でも指定可能)
Area.OutlineStyle=DASHDOT  ← 線パターンは一点鎖線
Area.OutlineWidth=40  ← 線幅は40
Area.Pattern=TRANSPARENT  ← 塗り潰しをしない
Area.ShowLegend=YES  ← レジェンドバーに凡例を表示する
Caption=行政界  ← 左のレジェンドバーでの表示名
CodePage=932  ← 日本語文字列コード
Label.Color=AQUA  ← ラベルの色はアクア色(水色)(RGB色でも指定可能)
Label.Font.Size=12  ← フォントサイズは12
Label.FontSize=240  ← フォントラベルの領域サイズは240
Label.OutlinePattern=TRANSPARENT  ← 文字のカーブに沿った色マットを敷く
Label.Value={MEISHO}  ← DBFの中から「MEISHO」というフィールドを使って表示する
Name=azakai ← レイヤーのユニーク名(他と重複してはいけない名前)
Path=azakai.shp ← シェープファイル名
Visible=YES ← レジェンドバーのセクションのチェックをON(表示する)

レイヤーの透過処理について
透過処理を行うとそのレイヤーの下に写っているものがうっすら見えるようになります。

[TatukGIS Layer1]
・・・Layer nと同様の設定(省略)・・・
Transparency=70 ←透過値を70%にする

ベクトルおよびラスター、両方とも透過処理が可能です。

シェープファイルパスについて
プロジェクトファイルに定義できる「レイヤー n」の定義の中の地図データは、純粋なシェープファイルをパスとして指定する方法と、データベースベクトルとしてテーブルに保存されているものをパスとして指定する方法があります。

純粋なシェープファイルのとき

Path=azakai.shp

フルパス指定、相対パス指定の両方が可能です。相対パスにしていると、フォルダを後ほど変更しても正常に読み込めます。

Access MDBベクトルのパス
次のように設定します。

Path="[TatukGIS Layer]\\nStorage=Native\\n LAYER=azakai\\nDIALECT=MSJET\\nADO=Provider=Microsoft.Jet.OLEDB.4.0;Data Source= osaka.mdb\\n.ttkls"

データベースのテーブル図形を指定するときは、このように全て1行で書く必要がありますが、 データベース本体ファイルの名前と、テーブル名 を指定する必要があります。この記述は長いように見えますが、必要最低限の事しか書いておらず、DBエンジンは何を使うか、DBへの接続文字列は何か、データベース名は何かという事だけなのです。

SQLServer DBベクトルのパス
次のように設定します。

Path="[TatukGIS Layer]\\nStorage=Native\\n LAYER=筆界\\nDIALECT=MSSQL\\nADO=Provider=SQLOLEDB.1;Password=xxxxxxxx;Persist Security Info=True;User ID=xxxxxxxx ;Initial Catalog=DatabaseName;Data Source= xxx.xxx.xxx.xxx,nnn\\n.ttkls

赤字の部分は任意の情報を入れる必要があります。SQLServerの場合は外部サーバーで利用することも可能なので、例えば東京と大阪の別々の会社の作業室から同時に閲覧や図形や属性データ編集が可能という事になります。
サーバーについては最新のAmazonRDSなどクラウドサーバーが利用可能です。


ESRIのFileGEOベクトルのパス
次のように設定します。

Path=[TatukGIS Layer]\\nStorage=FileGDB\\nPath= osaka.gdb\\nDialect=FILEGDB\\nLayer=\\\\ azakai\\n.ttkls

FileGEOのレイヤーを指定するときも、このように全て1行で書く必要がありますが、 FileGEOファイル(フォルダ名)の名前と、レイヤー名を指定するだけで、必要最低限の事しか書いておらず、とてもシンプルな情報だけなのです。

ただし、FileGEOを扱うときはこのDLLを解凍してmatilda.exeと同じフォルダに置いておく必要があります。

SQLITE DBベクトルのパス
次のように設定します。

Path="[TatukGIS Layer]\\nStorage=Native\\nSqlite=tokai.sqlite\\nDialect=SQLITE\\nLayer=zukaku\\n.ttkls"

レジェンドバーの凡例について
レイヤーがどんな表示色を使っているのか等の凡例が付いているとちょっとカッコイイです。付けた途端に一気にGISっぽくなります。


指定方法は次の通りです。

Area.ShowLegend=YES ← ポリゴンの凡例を付けたい時
Line.ShowLegend=YES ← ラインの凡例を付けたい時
Label.ShowLegend=YES ← ラベルの凡例を付けたい時
Marker.ShowLegend=YES ← シンボルの凡例を付けたい時


対象のレイヤーにはポリゴンしかないのにLabelなど他のデータタイプの設定を記述をすると、当然記述した他のデータタイプの凡例も付いたりしますので、不要なものがないか等の注意が必要です。

スケールフィルタについて
スケールフィルタとは、表示画面が一定の拡大率になった時に表示制御を発生させる機能です。例えば地球儀レベルの縮尺表示に道路線は不要なわけであり、ある程度拡大した時に表示させるように設定できます。従ってこの機能を有効活用することでアプリケーションレスポンスがグンっと向上します。


プロジェクトファイル内では次のように10進数で書きます。

MinScale=0.0004 ←1/2500スケールの意味(1÷2500)
MaxScale=0.1 ←1/10スケールの意味(1÷10)


グループ階層定義(シンプル)について
グループ階層とは同じような種類のレイヤーをひとまとめにして制御する機能です。
ここではグループ階層の構成を決めるところです。シンプルに1階層の場合は次のように定義します。


[TatukGIS Hierarchy]
Index1=グループ1=レイヤー1 ;レイヤー2 ;レイヤー3 ;レイヤー4 ;
Index2=グループ2=レイヤー5 ;レイヤー6 ;レイヤー7 ;レイヤー8 ;


各グループに属するレイヤーはセミコロン「 ;」で区切って連記します。行末尾にも必要です。

グループ階層定義(ネスト)について
入れ子のような階層の場合は次のように定義します。


[TatukGIS Hierarchy]
Index1=グループ1=レイヤー1;レイヤー2;レイヤー3;レイヤー4;
Index2=グループ2=レイヤー5;レイヤー6;レイヤー7;レイヤー8;
Index3=グループ3 \グループ3-1=レイヤー9;レイヤー10;
Index4=グループ3 \グループ3-2=レイヤー11;


この例では、グループ3の中にグループ3−1、グループ3−2があります。グループ自体を入れ子状態にするには¥マーク「 ¥」で区切って連記します。


グループ本体の設定ついて
[TatukGIS Hierarchy] で取り決めた、Index( n )の設定についてここで定義します。
(例)グループ階層の設定例
[TatukGIS Group n ]
Active=YES←レジェンドバーのチェックをON(表示する)
Caption=グループ1←レジェンドバーでの表示名
CodePage=932  ← 日本語文字列コード
Name=グループ1 ← グループのユニーク名
Visible=YES ← 表示を有効にする


セクションの設定ついて
セクションの機能を使うと、既存のレイヤーからクエリ式を使って仮想でレイヤーを追加表示できます。 いわゆるサブレイヤーのようなもので、実際にはデータを読み込んでいないのにあたかも条件に一致する図形を別に追加したような表示できます。

[TatukGIS Layer1 1]
・・・Layer nと同様の設定(省略)・・・
Query= 大きさ>100

[TatukGIS Layer1 2]
・・・Layer nと同様の設定(省略)・・・
Query= 地域=都島区

このように「 Query= 」で定義したdbfの中のデータベース項目に対する式を書きます。定義した式は図形となって別途追加で表示されます。条件にあったデータを着色したり強調表示したりするときに便利です。

 
(デスクトップ版マチルダの詳細マニュアル一覧に戻る)
(デスクトップ版マチルダの全体的な紹介ページを表示)
(デスクトップ版のアプリケーション更新履歴)