ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

mapinfoコミュの☆How to 質問部屋☆

  • mixiチェック
  • このエントリーをはてなブックマークに追加
質問部屋というくくりがなかったので何か作業で困ったらここで質問してみてはいかがでしょうか゚・*:.。. .。.:*・゜

コメント(192)

>IceLightさん

コメントありがとうございます。
とんでもございません。
僕の説明が至らなくて、分かりづらくなってしまい申し訳ありませんでした。

取り込む時というのは、マップ→オプションから設定する投影法のことでしょうか?
そうでしたら、この系も日本測地系の平面直角座標の第IV系に設定しています。

500mずれるのは、取り込んだマップ同士がずれてしまいます。
ずれる方向は、斜め方向(左斜め上または右斜め下)です。

IceLightさんの仰る通り、UTで世界測地系(JGD2000)の平面直角座標系で取り込んでみましたところ、ずれ具合はなぜか、日本測地系の場合よりも少なくなりましたが、まだ多少ずれています。

説明不足ですいませんでした。
MapInfoの場合、基本的に表示上の投影法(マップ→オプションで設定する投影法)は、取り込みには影響しないと思いますので、そちらは何でも大丈夫です(たぶん)。

うーん、Shapeのデータが実は日本測地系じゃなくてJGD2000だったりしないかと思ったのですが、それも無いようですね。失礼しました。
実際、日本測地系と言って渡されたデータが実はJGD2000でしたッてこともたまにあるので・・・(^^;


ただ、単純に考えるとやはり、元々のShapeの投影法が正しくTABに指定されていない可能性はあると思います。
もともとのShapeの数は幾つぐらいあるんでしょう?
それらは全て、確実に平面直角座標の第IV系で作られたShape地図ですか?
(場所は香川県 愛媛県 徳島県 高知県あたりなんでしょうか??)

不思議ですねぇ・・・。
一度データを見てみたい気もします。
>IceLightさん

お返事が遅くなってしまいすいません。

IceLightさんの仰るとおり、投影法の問題ではないかと思い、
あれからマップが重なるような投影法をひたすら探していました。
すると、片方のマップを「緯度/経度(東京)」、もう一方のマップを「JGD2000」の投影法の組み合わせにしたところでやっとうまく重なりました。

日本測地系のデータといわれて受け取ったデータなのにびっくりしました。

この調子だとほかのデータも日本測地系ではなさそうなので、
うまく重なる投影法の組み合わせをひたすら探してみようと思います。

やはり、投影法の問題だったんですね。

IceLightさんには混乱させるような質問をしてしまい、申し訳ありませんでした。
ちなみに、もらったデータは、僕の書き間違いで第IV系ではなく第IX系(千葉県)です。すいませんでした。

とても丁寧なご回答どうもありがとうございました。
また何かありましたら、よろしくお願い致します。
はじめまして。りつこと申します。

「はじめまして」トピでもご挨拶させていただきましたが、
どうぞよろしくお願いいたします。

早速、質問なのですが、
数値地図2500(空間データ基礎)のXML形式を
Mapinfo対応の形式に変換できる良いフリーソフトをご存知ないでしょうか?
残念・・・数値地図25000(空間データ基礎)ならば変換できる良いフリーソフトがあるのですが・・・。
2500、良いソフトがあったら是非知りたいです。 私も少し探してみます。。。
はじめまして
MapBasicについての質問です

まずやりたい事は、テキストオブジェクトの四隅の座標を得たい、という事です。

角度のついてないテキストであれば
 ObjectGeography(tObj,obj_geo_minx)
等でMBRの値を得ればそのまま使えますよね?(行末部はちょっとスペース入りますが)

しかし回転したテキストオブジェクト(例えば30度)だと、MBRの値を使えません。
そこで、一旦回転を解除(0度)にして座標を得て、その座標を回転させる事で
テキストオブジェクトの四隅の座標を得ればよいのではと考えました。
MIPro上では簡単に回転できるので楽勝だろうと思ったのですが、
 Alter Object tObj Geography OBJ_GEO_TEXTANGLE,0
で得られるオブジェクトが、回転時(30度)のMBRに合わせて出るようで
得たい結果とはかけ離れたモノが出力されます。
(MiPro 7.5と9.5で確認しました)

MapBasicでMiPro上でのテキストオブジェクトの操作と同じ結果を得る事は可能でしょうか?
お知恵をお貸しくださいm(_ _)m

以下ソース
#testテーブルの最初の行にテキストオブジェクトを入れ、回転させてる状態とします

Dim tObj as Object
Fetch First From test
tObj = test.obj
Alter Object tObj Geography OBJ_GEO_TEXTANGLE,0
Insert Into test (obj) Values(tobj)

なるほど・・・やってみたら、想定外の面白い結果が出ました。
回転ですか・・・どうしたらいいのかな。ちょっと調べてみます。
同じ事を悩んでいる人はいるみたいですねぇ・・・
http://www.mail-archive.com/mapinfo-l@lists.directionsmag.com/msg08560.html

確かに、もともと「角度0のテキスト」をプログラム的に角度変更したものであれば、
その後さらに角度を変更しても、角度を0に戻しても、MBRが維持されているようです。
不思議〜

一番手っ取り早いのは、元々のテキストのフォントサイズを調べ、同じマップ所に新規にテキストOBJを角度0で再作成する感じでしょうか・・・。スマートでは無いですね。

どなたか、良い方法PLZ
調べていただいてありがとうございます。
同じ所に再作成、のために必要な座標を得られないのが問題なのです。
せめてMBRではないテキストオブジェクトの左上座標を得られれば
何かが見えると思うのですが。

しょうがないのでMiProでできるならMiProでやってしまえ。
という事でVBかまして自動で
オブジェクトをクリック、プロパティダイアログ表示
角度0、OKボタンを押す
ってのを作ろうかなと思ってます。

他アプリケーションへのマウス制御やキー送信はやった事ないので
今からグーグルウィンドウ地獄へ…
>イチスケさん
パーソナルではなく、プロフェッショナル(Professional)ではないですか?
Ver.7.0でも充分使えると思います。(私は主に、Ver.7.5を使っています)
最近のバージョンで作成したTABファイルは、取り込めないかもしれません。
どのような利用方法をお考えか、それによって、バージョンアップしたほうがいい場合があります。
私の記憶では、過去にMapInfoで扱える色数が増えた事は無いと思いますが、
ハッチングはどこかのバージョンで増えたことがあったと思います。
(MapInfo社のWEBページによるとバージョン7.5からハッチング種類が増えたそうです)
新しいMapInfoで「追加された」ハッチングのポリゴンを作った場合、
古いバージョンのマップインフォではハッチングが表示されないかもしれませんね。

ところで、最近のMapInfoには「過去バージョンのTABで保存する」機能があります。
それで保存すれば、スタイルは変わってしまうかもしれませんが、少なくてもTABファイルだけは開けると思います。
ただし、ワークスペースは古いバージョンのMapInfoで開けないことが多いです。
個人的には、過去のバージョンのワークスペースを保存できる機能が、是非とも欲しいです。
MapInfoの「.TAB」ファイルは、テキストファイルなのですが、ファイルをNotePadでオープンすると、冒頭にバージョン情報が記されています。
これを無理やり、古いバージョン番号にして保存すると、古いバージョンのMapInfoで開くことが可能になります。
ただし、再現性と動作は保障できませんが・・・
MapinfoでグーグルMAPの航空写真を背景図として使いたいのですが、航空写真の取り込む方が分かりません。

もしよろしければ、取り込み方を教えてください。
やはり、MapInfo上にグーグルマップを直接表示することは難しいでしょうね。
逆に、MapInfoからGoogle Earth(3Dの衛星写真を表示する無料ソフトです)へKMLを通じてエクスポートする機能はありますので、それで代用はできませんか?

最も3Dになってしまうと、それはそれで不便なことも多いんですが・・・。
> IceLightさん


ありがとうございます。
ご返事が遅くなり申し訳ございません。

代用する方法で試してみたいと思います。
イツカさん、こんにちは。

Alpsジオコーダで未処理になったレコードには、シンボルが作成されていません。
ですので、1度テーブル「自動モード」で「全レコード」をジオコードした後に、再度同じテーブルを「対話モード」で「ポイントを持たないレコード」対象にジオコードをすると、自動モードで失敗したレコードだけ手動で住所の指定ができます。
ある程度の誤表記などは対話モードで原因が見つかることもあります。
しかしながら、対話モードも住所マスターに無い住所は完全補完できませんので、わりきって近傍の住所を選ぶなどの対応が必要かもしれません。
また、AlpsジオコーダのマニュアルがPDFで付いていたと思いますので、詳細はそれを見ると良いかもしれませんね。


MapInfoのTABの属性部分をmdbにする一番手っ取り早い方法は、[ファイル]>[名前を付けて保存]で、ファイルの種類を「Microsoft Accessデーターベース(*.mdb)」にて保存することだと思います。
この場合、属性部分だけが*.TABと*.mdbの2つのファイルで保存されます。
この時の*.mdbは通常のMS Access形式のデータベーステーブルです。
TABは捨てて、mdbだけMS Accessで利用することもできますよ。
イツカさんの認識でだいたい間違いありません。

例えば、「マッチングレベル以下・・・」のチェックが付いた状態で最高解析レベルを「街区レベル」にしている場合、
住所の街区(番地)まで解析できれば、もちろんその場所にポイントされます。
もし街区レベルで判別できなければ、丁目レベルで解析されて丁目の中心にポイントされます。
丁目で解析できなければ町大字レベルで、
それでも解析できなければ市区町村レベルでポイントされます。

ですので、「マッチングレベル以下」のチェックを付けた時は、
結果テーブルに「解析レベル」のフラグも付与しておくことがオススメです。
そうしないと、どのレベルまで解析できたのかがわからなくなってしまいます。

逆に、「マッチングレベル以下・・・」のチェックをつけない場合、
「街区」レベルで判別できないレコードはすべてスキップされポイントがつきません。
はじめまして。きよすぃと申します。
これから宜しくお願い致します。
早速ですがMapBasicについて質問させてください。

既存のテーブルをselect文のGroupBy句を用いてグループ分けし、グループ毎の小計値を含む新しいテーブルを作成しました。具体的には(図を見てください)上のテーブルのフィールド"mesh_i"をグループ分けし、フィールド"_COL1"の小計値が下のテーブルのフィールド"Sum"となっています。ここで、上のテーブルのフィールド"mesh_i"の番号に該当する小計値をフィールド"_COL3"に入れようとリファレンスとにらめっこしているのですが、なかなかいい方法が見つかりません。

初歩的なことなのかもしれませんが、もしご教授いただける方がいらっしゃいましたらどうぞよろしくお願いします。
MapBasicを使っているのであれば、
一番単純には合計値を出したあとに、この場合のQuery1テーブルを順に1レコードづつ参照できますよね。
1レコード目の合計値が例えば90だとします。
その後に
Select * from 練習 where mesh_i = 1 Into worktable
さらに
Update worktable set _COL3= 90
これをForループなどでQuery1の最終レコードまで繰り返すのが一番単純でしょうか。

Select文のIn句やAny句を使えばSQL1発で出来るかもしれませんが、色々考えるよりループ処理してしまうが楽じゃないかと思います。
>IceLight さん
お返事ありがとうございます。
MapBasic初心者の僕でも理解できるように分かりやすい方法を教えて頂きありがとうございます。

しかし、現在はMapBasicの練習中でフィールド"mesh_i","mesh_j"はそれぞれ1〜3の計9レコードとなっているのですが、今後はフィールド"mesh_i","mesh_j"をそれぞれ1〜400弱の計約160000レコードという多量なデータを処理していかなければならない状況にあります。また、最終的に求めたい値は小計値の割り振られた小計値フィールドと既存フィールドから得られる値(例えば、前回の図で言いますと、小計値フィールド"_COL3"を既存フィールド"_COL2"で除した値)であり、これらを踏まえて全ての過程が自動化できればと思っている次第です。

MapBasicでエクセルのvlookup関数のような役割を果たすプログラムが組めれば理想的ではありますが、なかなか難しそうですね。。。

とりあえず、まずはSelect文のIn句やAny句についてもうすこし調べてみて自動化できるか考えてみます。
3年ほど前に試行錯誤でMapInfoを使いこちらでも質問させていただいたのですが、育児休暇を経て仕事復帰しまたMapInfoを使うことになりました。
使っているのはMapInfo Professional Version 7.8です。

3年前は「数値地図2,500(空間データ基盤)」を国土地理院から無料でダウンロードして使っていたのですが、無料での提供は終わってしまったようです。
現在無料でダウンロード(http://fgd.gsi.go.jp/download/)できるものはJPGIS形式というものとJPGIS(GML)形式
があるようですが、この形式はMapInfoでは読めない?のですよね。

やりたいことはあるデータを元に市区町村の色の塗り分けです。有料の「数値地図2,500(空間データ基盤)」を買えばMapInfoでそのようなことができるのか?無料でダウンロードしてやる方法があるのか?

有料でも上記のようなことが確実にできるのであれば購入するのですが、MapInfoでその地図が使えるのかわからないと無駄になってしまいます。無料ならとりあえずやってみるんですが・・・。

当面必要なのは関東地方だけですが、ゆくゆくは全国でやりたいと思っています。

この地図が使える、この地図が無料でダウンロードできる、この地図なら全国そろえてもそんなに高くないといったことをご存知でしたらご教授いただけないでしょうか。
よろしくお願いいたします。
Take-Mさん、こんにちは。

そのページの下の方からダウンロードできる「基盤地図情報閲覧コンバートソフト」を使って、 GML形式(XMLじゃ無い方)をShape形式に変換して再保存が出来ませんでしょうか?
少なくても25000基盤地図ではShape形式への変換が可能でした。

Shape形式であればMapInfoで取り込み出来ますよね。
(Version7.8って、Shp形式の取り込みはできましたよね???)
IceLightさん、ありがとうございます。
今は他の業務で手がつけられないのですが、時間ができしだいやってみて報告させていただきます。
IceLightさん:
サーティーン課長さん:

IceLightさんに教えていただいた方法でShapeファイルに変換できました。

東京の「行政区画の境界線及び代表点」をダウンロードして、Shapeファイルに変換してMapInfoで読み込んだもののマップウィンドウが真っ白。

「AdmArea」という行政区画の境界線を表すファイルなんですが、ブラウザウィンドウを表示してみるとちゃんとデータは表示されるのです。
マップウィンドウの「レイヤ管理」で市区町村名をラベル表示してみると、「東京都町田市」というラベルは表示されるものの、ズームアウトしてもズームインしても他の地名は表示されず・・・。
リージョンスタイルも境界が黒、塗りつぶしが白と設定されているのですが。

投影法とか設定する必要があるのでしょうか。
確かに投影法の設定は必要ですね。
変換後のShapeのPRJファイルは何故かMapInfoで自動識別されないようです。
手動設定が必要です。

<<やりかた>>
基盤地図をFGDVでシェープファイルへ変換する際、ダイアログに投影法の「系」情報が表示されています。たとえば、東京都の場合は添付図のように「平面直角座標系 9系」であることがわかります。
この数値は後で必要になるのでメモしておくといいですね。(都道府県毎に決まってます。)

MapInfoに取り込む場合、Shape取り込み途中の「投影法を選択」を手動で指定します。
東京の場合だと「日本平面直角座標系」「第IX系(日本測地系2000-JGD2000)」でいいと思います。

やってみたら、ちゃんとAdmAreaが行政区画ポリゴンになりましたよ(^^)
IceLightさん:

できました!ありがとうございます!
できなかったら購入するしかないかと思い、AlpsMap(http://alpsmap.yahoo.co.jp/mapinfo/data/governmentmap/index.html)に問い合わせたところ、市区町村ポリゴン全国で75,000円って言われたので、購入はちょっと厳しいと思っていたところです。

ただちょっと疑問なのが、FGDVでシェープファイルへ変換する際のダイアログで同じ東京のデータなのですが、「14系」と表示されました。IceLightさんがやった場合と私がやった場合で違うのは環境が違うせいなのでしょうか?

もうひとつ教えていただけないでしょうか。都道府県毎に違うということなのですが、全国をいっきに表示させたい場合、投影法が違うと問題ありますよね?
その場合FGDVでシェープファイルへ変換する際の投影法の指定を全部の都道府県で統一させておけばすむのでしょうか?

質問ばかりで申し訳ありませんが、よろしくお願いします。

もともと系は、だいたいその地域で最適なものがルールで決まっています。
東京都の本体の方は9系が一般的だそうですね。東京でも島の方なんかは14系だったりするみたいです。詳しくはこちら
http://www.gsi.go.jp/LAW/heimencho.html

MapInfoの場合、投影法が異なるレイヤを同時に複数開いても、最初に開いたレイヤ合わせて自動的に投影変換されて正しく表示されます。
なので、全国表示させても問題はないはずです。
が、気になるようでしたら名前を付けて保存で「日本平面直角座標系」から「経度緯度(東京)」や「経度緯度(JGD2000)」に統一して再保存しておくと良いかと思います。
そうすれば、全国で1テーブルにまとめることもできますね。
IceLightさん:

ありがとうございました。
データベースが専門で(といっても、なんちゃってプログラマーですがあせあせ(飛び散る汗))地図は詳しくないので座標系といわれてもちんぷんかんぷんで・・・。

本当に助かりました。ありがとうございました。
■質問■

いつもお世話になります。
MapInfo9.0を使用しております。

ひょっとすると、どちらかの質問にあるかもしれないのですが、
ポリゴンの中心座標を求める方法をご存知の方がいらっしゃいましたら、
ご教示願えませんでしょうか?

オブジェクト関数のCentroidX もしくはYで求められる重心ではなく、
ポリゴン内の中心座標を求める関数等がありましたでしょうか?

以前(10年前くらい)の講習で習ったような記憶があるのですが、
全く覚えておりません。
初めての書き込みです。
よろしくお願いします。

MapInfo10.5の新機能として
http://www.youtube.com/user/pbbijp#p/u/6/utb7dS1WcZk
この動画のようにAdobe readerにて地理情報(緯度経度)を
認識できるとなっていますが、
Adobe readerの拡張ツールバーが見つかりません。

試しにTerraGoツールバー
http://hitachisoft.jp/products/geopdf/faq/index.html
を入れてみましたが、これはあくまでTerraGoで
作成されたGeoPDFでないと使用できない模様。
(TerraGo GeoPDFのサンプルらしきもの
 http://japan.zdnet.com/release/30000535/
 でもプロテクトモードというのがかかっていて
 外し方が分からず使用できていない状況ですが。。。)

上記のyoutube動画で使用されているツールバーを
ご存知の方、いらっしゃいませんか?

ログインすると、残り161件のコメントが見れるよ

mixiユーザー
ログインしてコメントしよう!

mapinfo 更新情報

mapinfoのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。