数値地図25000データーをAutoCADLTに変換するにあたり、決めなくてはならないことがある。2Dで扱うか3Dで扱うかということ。純粋2DCADはこの選択肢はないのだが、AutoCADLTは3Dを扱える。GISなら当然3Dが必要条件。ここをターゲットにするなら3Dで決まりだろう。 連続線を何で作るか。選択は直線の集合、3Dポリライン。地区界などがプロックデーターとして作成してあるので3Dポリラインとしよう。境界データーはX、Yの2Dポリラインとして入力しておいて、AutoCADLT内部で変換という方法もある。データー処理時間とファイルサイズの問題だが、基本的には最初から3Dとしよう。 以上よりXMLデーターとして読み取ったデーターは,次ぎのように処理をする。 変換前データー AutoCADLTはスペースを「enter」とみなす設定が一般なので、無だなスペースを挿入しないよう注意が必要。データーの最後は「enter」。これが改行、復帰なのか改行だけでいいのか。やってみないと分らない。 JavaScriptでは改行コードは¥nを使う。ブラウザ上のHTMLページはこれで問題はない。これをTEXTファイルに保存する。おそらく、この過程でMSwindowsOSは改行コード¥r¥nに自動変換していると推定する。AutoCADLTのScriptはキーボード入力値をファイルにして読ませるというもの。 「enter」は改行、復帰に対応する。この2つの過程の相性といった事だ。 やってみるのが一番早い。 |
Msxmlを利用したXMLデータファイル処理サンプル。エデイタで切った張ったをするより、このほうがスマートでしょう。(23220TKデーター変換はうまく行っていませんので注意) |
AutoCADLTのスクリプトは使い慣れているので、問題はクリヤー。予想した事は大体当たっていた。処理を考えなければならない些細な問題はいっぱいあるが、大きな問題がひとつある。 数値地図25000の場合、道路区間データは7MBにもなる。これは個人レベルのPCでXMLデーターを読めない。メモリーが少ないのだろうフリースする。僕のPCは124MBのメモリー。決して多いとは言わないが、貧弱ではない。じゃあ、200MBにしたらOKかといえば、多分問題は解決しないような気がする。 データー側の問題かMSXMLソフトの問題か。MSXMLを疑って、とうとう最新のMSXML4をインストールした。 こういう場合は、シンプルなXMLを作って問題を絞り込んで行く。結構時間が掛かるのだが、途中で曖昧にするわけにも行かない。知識としてのXMLならいいのだが、僕にとってはそうではなくなってしまった。少し時間を掛けよう。 |