Download presentation
Presentation is loading. Please wait.
1
軌跡とジオメトリー表示プログラム CGVIEW(Ver2.0)の高度化
第13回 「EGS研究会」 軌跡とジオメトリー表示プログラム CGVIEW(Ver2.0)の高度化 高エネルギー加速器研究機構 波戸 芳仁 平山 英夫 (有)科学システム研究所 高村 篤 杉田 武志
2
目的 軌跡とジオメトリー表示プログラム(以後CGVIEW)を公開し、使用実績を増してきたことにより、改良の要望がいくつか出てきた。
また、EGS5で使用できるCG(Combinatorial Geometry)形状が新たに追加されたためCGVIEWの表示に関しても同様の機能追加を行い、同時に操作性の向上を図るための改良も行った。
3
改良項目 CG形状の追加 入出力に使用するファイル形式の自由化 体系作成画面での編集機能追加 4桁の領域番号への対応 粒子表示機能拡張
ジオメトリー表示線の変更機能追加
4
CG形状の追加 EGSの最新版では従来のCG形状である四角形、円柱、球、円錐、トーラスに新規形状が8種類追加され、全部で13種類のCG形状を使用することが出来るようになった。 その変更に伴い、CGVIEWでも新規に追加した8種類の形状に対応できるように改良を行った。
5
追加形状(1):BOX BOXは基準点PとベクトルA1とA2の辺で形成される四角形をベクトルA3方向に沿って移動した跡にできる四角柱。ただし、A1、A2及びA3のベクトルは直交している。 [ 形式 ] Px Py Pz A1x A1y A1z A2x A2y A2z A3x A3y A3z Px,Py,Pz :基準点となる頂点のX,Y,Z座標 A1x,A1y,A1z : 基準点から延ばした辺1のX,Y,Zベクトル A2x,A2y,A2z : 基準点から延ばした辺2のX,Y,Zベクトル A3x,A3y,A3z : 基準点から延ばした辺3のX,Y,Zベクトル
6
追加形状(2):REC RECは基準点Pを中心に短軸R1と長軸R2で作成される楕円をベクトルH方向に沿って移動した跡にできる楕円柱。ただし、ベクトルHとR1,R2は直交している。 [ 形式 ] Px Py Pz Hx Hy Hz R1x R1y R1z R2x R2y R3z Px,Py,Pz : 基準点となる楕円の中心X,Y,Z座標 Hx,Hy,Hz : 楕円柱の高さ方向のX,Y,Zベクトル R1x,R1y,R1z : 楕円の短軸を示すX,Y,Zベクトル R2x,R2y,R2z : 楕円の長軸を示すX,Y,Zベクトル
7
追加形状(3):TEC TECは基準点Pを中心に短軸R1と長軸R2で作成される楕円をベクトルH方向に沿って比率Wの楕円に移動した跡にできる楕円錐。ただし、ベクトルHとR1,R2は直交している。 [ 形式 ] Px Py Pz Hx Hy Hz R1x R1y R1z R2x R2y R3z W Px,Py,Pz : 基準点となる楕円の中心X,Y,Z座標 Hx,Hy,Hz : 楕円錐の高さ方向のX,Y,Zベクトル R1x,R1y,R1z : 楕円の短軸を示すX,Y,Zベクトル R2x,R2y,R2z : 楕円の長軸を示すX,Y,Zベクトル W : 楕円の比率(=b/a) a=基準面の長軸長さ(R2) b=天井面の長軸長さ
8
追加形状(4):ELL ELLは焦点座標P1とP2を結ぶ主軸Rの長さが一定の距離を保つ軌跡でできる楕円球。
[ 形式 ] P1x P1y P1z P2x P2y P2z R P1x,P1y,P1z : 1つ目の焦点座標(X,Y,Z) P2x,P2y,P2z : 2つ目の焦点座標(X,Y,Z) R : 主軸の長さ
9
追加形状(5):WED WEDは基準点PとベクトルA1とA2の辺で形成される三角形をベクトルA3方向に沿って移動した跡にできる三角柱。ただし、A1、A2及びA3のベクトルは直交している。 [ 形式 ] Px Py Pz A1x A1y A1z A2x A2y A2z A3x A3y A3z Px,Py,Pz : 基準点となる頂点のX,Y,Z座標 A1x,A1y,A1z : 基準点から延ばした三角形辺1の X,Y,Zベクトル A2x,A2y,A2z : 基準点から延ばした三角形辺2の A3x,A3y,A3z : 基準点から延ばした高さの
10
追加形状(6):ARB ARBは任意の4,5または6面体。頂点のXYZ座標P1~P8を指定し、面データS1~S6を十進数で表した4桁の整数で指定する。4桁の整数は各桁が面の頂点番号を示し、順序は任意とする。4点より少ない頂点で構成される面は余りの頂点番号に0を入力する。使用しない頂点座標はXYZに0を入力する。 [ 形式 ] P1x P1y P1z P2x P2y P2z P3x P3y P3z P4x P4y P4z P5x P5y P5z P6x P6y P6z P7x P7y P7z P8x P8y P8z S1 S2 S3 S4 S5 S6
11
追加形状(6):ARB P1x,P1y,P1z : 頂点1のX,Y,Z座標 P2x,P2y,P2z : 頂点2のX,Y,Z座標
※使用しない頂点にはダミー数値(0.0等)を入力する S1,S2,S3,S4,S5,S6 : 6つの面を記述する4桁の整数。4桁の整数は各桁が面の頂点番号を示し、順序は任意とする。4点より少ない頂点で構成される面は余りの頂点番号に0を入力する。
12
追加形状(6):ARB 6つの頂点を持つ6面体を例に入力例を示す。
頂点は6つなので残りの2つの座標を全て0にすると頂点データは以下のようになります。 次に面データは以下のようになります。 123 (頂点1,2,3 を通る三角面) 1245 (頂点1,2,4,5を通る四角面) 1346 (頂点1,3,4,6を通る四角面) 456 (頂点4,5,6 を通る三角面) 236 (頂点2,3,6 を通る三角面) 256 (頂点2,5,6 を通る三角面)
13
追加形状(7):HAF HAFは指定したベクトルN方向を領域とする半空間。 [ 形式 ] Nx Ny Nz L
Nx,Ny,Nz : 内側領域方向を示すベクトルX,Y,Z (マイナスも入力可) L : ベクトルNに沿った原点(0,0,0)から平面までの距離 (マイナスも入力可)
14
追加形状(8):HEX HEXは基準点Pを中心に幅Wで側面がベクトルAを向く六角形をベクトルH方向に沿って移動した跡にできる六角柱。ただし、ベクトルHとAは直交している。 [ 形式 ] Px Py Pz Hx Hy Hz W Ax Ay Az Px,Py,Pz : 基準点となる円の中心X,Y,Z座標 Hx,Hy,Hz : 円柱の高さ方向のX,Y,Zベクトル W : 六角形の幅 Ax,Ay,Az : 側面の一つに垂直なベクトルA (長さは任意)
15
入出力に使用するファイル形式の自由化 CGVIEWで扱うファイルには軌跡ファイルと体系作成ファイルがあり、以下の改良を行った。
・軌跡ファイルは拡張子(*.pic)で固定フォーマットを使用してい たが、拡張子による制限を廃止し、フリーフォーマット及び CSV(コンマ区切り)フォーマットのファイルも読み込みが出来るよ うにした 。 ・体系作成ファイルは拡張子(*.geo)でフリーフォーマットを使用 していたがたが、拡張子による制限を廃止し、CSV(コンマ区切り) フォーマットのファイルも読み込みが出来るように改良を行った。
16
軌跡ファイル形式の変更点(1) 従来の軌跡ファイル形式である固定フォーマットとフリーフォーマット及びCSV(コンマ区切り)フォーマットでは出力に以下の違いがある。 [全般] 固定フォーマットはデータの区切り位置が固定であったが、フリーフォーマットでは1つ以上の空白(半角)、CSVフォーマットではカンマ(,)でデータを区切る必要がある。 [タイトル] 軌跡ファイルの先頭行にはCGファイルであることを示す記号CSTAを入力するが、フリーフォーマットの場合はCSTA-FREE、CSV形式の場合はCSTA-CSVを出力する。 また、CG以外の形状も同様に記号をGSTA-FREE、GSTA-CSVに変更することで形式を変えることができる。
17
軌跡ファイル形式の変更点(2) [粒子データ]
粒子の反応位置を示すXYZ座標のデータは負の値の場合、数字がつながってしまう。そこで空白が入らように1カラムずらす必要がある。 また、固定フォーマットはデータ無し(指定領域が空白)という入力が可能であるが、フリーフォーマット及びCSVフォーマットではこのような入力が出来ないため、デフォルト値を必ず入力する必要がある。 固定フォーマットでは粒子データのウエイトとLATCHが未入力の場合デフォルト値(ウエイト=1、LATCH=1)を使用するが、フリーフォーマット及びCSVフォーマットではユーザーが値を設定する必要がある。
18
軌跡ファイル形式の変更点(3) [EGSコード側の変更点]
EGSコードではplotxyzルーチンを使用して軌跡をファイルに出力しているが下表に示すように従来形式(固定)の場合はNPRECIを2に、フリー形式で出力する場合は3に変更する必要がある。 NPRECI 円筒平板 CG Medium 粒子情報書式 対応プログラム ○ × × I5 EGS4WIN32 1 ○ × × I8 EGS4WIN32 2 ○ ○ ○ 1PE13.6 CGVIEW(固定フォーマット) 3 ○ ○ ○ 1PE14.6 CGVIEW(フリーフォーマット)
19
体系作成ファイル形式の変更点 体系作成ファイルは従来のフリーフォーマットとCSV(コンマ区切り)フォーマットでは区切り記号(フリーフォーマットでは1つ以上の空白(半角)、CSVフォーマットではカンマ)が異なる。 ファイル入出力時のフォーマット判別は拡張子によって行われ、(.csv)のファイルはCSVフォーマット、その他の拡張子の場合はフリーフォーマットとして扱われる。 また、フリーフォーマットは下のようにデータ数に合わせて改行を追加しますが、 RCC 6 0 0 6.1 0 0 <-改行有り 7.9 1.9 CSVフォーマットの場合はExcel等での編集を考慮し、一つのデータは1行に全て羅列されます。 RCC,6,0,0,6.1,0,0,7.9,1.9, <-改行無し ただし、EGSでは1行を250文字までしか読めないためCSV形式でEGSに読み込ませる場合は注意が必要です。
20
体系作成画面での編集機能追加(1) CGVIEWの体系作成機能はグリッドに数値を入力していく形式を採用しているが、削除や挿入等の編集機能を有していないため、操作性が良くなかった。そこで一般的な表計算ソフトのような編集機能を追加し、操作性の向上を図った。
21
体系作成画面での編集機能追加(2) [セルの編集] セル上でポップアップメニューを表示させると以下の処理が出来る。
22
体系作成画面での編集機能追加(3) [列の編集]
列の最左の固定領域を選択すると列全体が選択状態になり、ここでポップアップメニューを表示させると以下の処理が出来る。
23
体系作成画面での編集機能追加(4)
24
4桁の領域番号への対応 従来のEGS及びCGVIEWでは領域番号をZ+2文字(Z00やZ18等)で設定していたが、最新のEGSではZ+4文字(Z0000やZ0018)で読み込むように拡張されているため、CGVIEWでの領域番号の取り扱いもZ+4文字に対応できるよう改良した。 また、体系作成画面において領域番号は自動で割り当てるように変更しているので注意してください。
25
粒子表示機能拡張(1) 従来のCGVIEWで粒子の表示ヒストリー範囲を指定するには表示設定画面を開く必要があるため、ヒストリー毎の粒子を順に表示して確認するような作業が行うには効率が良くなかった。 そこで、凡例画面内に表示ヒストリー範囲を前後させるボタンを追加し、ヒストリー範囲の粒子を順に表示できるように機能を拡張した。 ただし、この機能は設定画面で範囲指定をチェックしている場合のみ有効となる。
26
粒子表示機能拡張(2) 下図のようなボタンを追加し、次もしくは前のヒストリー範囲を表示できるようにした。移動量は指定範囲幅を1ブロックとして次の軌跡を表示します。 表示範囲が11-11(1粒子のみ表示)の場合は 12-12、 と移動します。 表示範囲が11-15(5粒子を1ブロックとする)の場合は16-20、 と移動します。
27
ジオメトリー表示線の変更機能追加 従来のCGVIEWでは線表示の時の線の太さは1ピクセルの固定であったが取り込んだ画像を拡大すると線が細いため表示が粗くなってしまう。 そこで線の太さを任意に変更できるよう機能を追加した。線の太さは[設定]-[表示設定]メニューで表示される下画面で指定する。指定した線幅×ピクセルが表示する線の太さとなる。デフォルトは今までどおり1とした。
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.