Re: 点の追加について ( No.1 ) |
- 日時: 2008/05/02 13:05
- 名前: NCG
- 問い合わせの件ですが、コマンドFGBUNKのパラメータ4に中間ファイルを指定しますと、追加された点が中間ファイルに格納されます。
格納された中間ファイルをFGMOVのコマンドに使用することで、追加された点を移動することができます。 以下サンプル ---------------------------------------------------------- //ALLTMP :点追加対象の図形中間ファイル //WTMP :点を追加する範囲の中間ファイル //BUNKTNP :追加された点を格納する中間ファイル(FGBUNK成功時)
if ( 0 != Gexec(GeoMap,"FGBUNK","ALLTMP WTMP ON BUNKTMP")) {} else if ( 0 != Gexec(GeoMap,"FGMOV","BUNKTMP PNT")) {} else { MessageBox.Show("移動しました。"); }
|
Re: 点の追加について ( No.2 ) |
- 日時: 2008/05/02 13:22
- 名前: GEOSISサポート受付
- > ----------------------------------------------------------
> //ALLTMP :点追加対象の図形中間ファイル > //WTMP :点を追加する範囲の中間ファイル > //BUNKTNP :追加された点を格納する中間ファイル(FGBUNK成功時) > > if ( 0 != Gexec(GeoMap,"FGBUNK","ALLTMP WTMP ON BUNKTMP")) {} else if > ( 0 != Gexec(GeoMap,"FGMOV","BUNKTMP PNT")) {} else { > MessageBox.Show("移動しました。"); > } > ---------------------------------------------------------- ↓VBに変更 georet = gexec("FGBUNK", "aTMP wTMP ON mTMP") '構成点を追加 georet = gexec("FGMOV", "mTMP PNT ST") '移動 で良いと思うのですが、、、 質問の前に試して見たのですが、パラメータ2の「点を追加する範囲の中間ファイル」の意味が良くわかりません。 この中間ファイルはどのような内容で作成すればよいのでしょうか?マウスの左範囲(MSEVTL)で試しましたが、ダメだったと思います。 ついでで済みませんが、マウス指示での「引き出し線」の登録についてお願いします。 georet = gexec("FGCURDB", "annTMP C hEL ! ! 0 0 ANN 5 !", .Lay, "! ! あいう ! CL") georet = gexec("FGPULL", "annTMP 5 ? ? ?")
次へ続く↓
|
Re: 点の追加について ( No.3 ) |
- 日時: 2008/05/02 13:06
- 名前: GEOSISサポート受付
- @引き出しを作成するには?位置の値をどのように定義したらよいのでしょうか?
A(FGPULL)で作成される引出しは、(FGPULLMOVE)で移動できるでしょうか? B文字の配置は、左45°と右45°では原点を自動に設定してくれるのでしょうか? CDB図形として登録した場合、線のプロパティや文字のプロパティは、個々に変更するという解釈で良いでしょうか?
georet = gexec("FGPULL", "annTMP 5 TMP DOS") で試したのですが、一瞬表示するだけで図形登録できません
|
Re: 点の追加について ( No.4 ) |
- 日時: 2008/05/02 13:23
- 名前: NCG
- 点の追加について以下サンプルコードを記載いたしますのでご確認ください。
処理の流れのイメージがつかめると思います。
トレランス枠内に存在する図形に点を追加するサンプルコードです。 この場合"点を追加する範囲の中間ファイル"はトレランス枠になります。
以下サンプルコード -------------------------------------------------------------------------------- //グループ999、レイヤ999の図形(ポリゴン・ライン)に点を追加し追加した点の移動を行います。
Gexec(GeoMap,"SETDEFAULTGRP","999"); //デフォルトグループ設定 Gexec(GeoMap,"SAVEGRP","SAVEGRP"); //グループ定義を保存 Gexec(GeoMap,"SAVELAY","SAVELAY"); //レイヤ定義を保存 Gexec(GeoMap,"SETSGRP","OFF"); //検索グループ設定 Gexec(GeoMap,"SETSGRP","ON ! ! 999"); Gexec(GeoMap,"SETSLAY","OFF"); //検索レイヤ設定 Gexec(GeoMap,"SETSLAY","ON ! ! 999");
次へ続く↓
|
Re: 点の追加について ( No.5 ) |
- 日時: 2008/05/02 13:07
- 名前: NCG
- if ( 0 != Gexec(GeoMap,"FGO2T","TMP 5")) {} //表示画面枠の中間ファイル作成
else if ( 0 != Gexec(GeoMap,"FGGETFIG","TMP GTMP GRP PL")) //表示画面に図形があるか確認 { MessageBox.Show("画面内にデータが見つかりません。");} else { if ( 0 != Gexec(GeoMap,"FGO2T","WTMP 7 2")) {} //点を追加する範囲の中間ファイル作成 WTMP else if ( 0 != Gexec(GeoMap,"FGGETFIG","WTMP GTMP LIN PL")) // 範囲内に図形があるか確認 { MessageBox.Show("データが見つかりません。"); } else if ( 0 != Gexec(GeoMap,"FGGETCUR","GTMP CTMP")) {} //図形カレントレコードを取得 else if ( 0 != Gexec(GeoMap,"FGGTOA","CTMP ALLTMP")) {} //図形中間ファイルを全点状態に設定 else if ( 0 != Gexec(GeoMap,"FGBUNK","ALLTMP WTMP ON BUNKTMP")) {} //点の追加処理実行 WTMP else if ( 0 != Gexec(GeoMap,"FGMOV","BUNKTMP PNT")) {} //追加した点を移動 else { MessageBox.Show("移動しました。"); } } Gexec(GeoMap,"RESTOREGRP","SAVEGRP"); //グループ定義をレストア Gexec(GeoMap,"RESTORELAY","SAVELAY"); //レイヤ定義をレストア Gexec(GeoMap,"DSPREFRESH","CLR); //再描画
|
|