仕様書
正式な場所は不明だが,次の所にあり.
https://filemonger.com/specs/igs/devdept.com/version6.pdf
https://wiki.eclipse.org/IGES_file_Specification
形式
バイナリもある様に読み取れるが詳細は不明.
80 カラム長固定の形式(昔やった JCL のカードの様なもの?).
改行の方法は幾つか存在する模様.
整数などの表現として,Index などは 0 からではなく 1 から.
ファイルの構造
スタートセクション |
グローバルセクション |
ディレクトリエントリセクション |
パラメータデータセクション |
ターミネートセクション |
グローバルセクション
1H,,1H;, の表現は,「ホレリス定数」と呼ぶらしい.
nHstring の形式で,n は文字数,string 部分は文字列で空白も表現可能.
FORTRAN などでの表現方法の様だが,昔何かでこの様なのを利用した?PL/M?
パラメータ区切り(デフォルトは ',')で区切られた 26 個の情報がある.
「Table 1. Parameters in the Global Section」にある順に入っている.
Index 14 , 15 にある単位
14 の値が 3 の時,15 を使用する?
ディレクトリエントリセクション
表現の問題であるが,英文によると 2 行(80 文字 x 2)を 1 つのレコードと書かれている?
よって,以下 1 レコードは行数ではなく,";" までの範囲としている.
文字数でカウントすると,1 レコード >= 1 行
8 文字ずつで区切り,20 個の項目(Field)を持つことができる様になっている.
実際使用しているのは,16 と 17 以外.
1 , 11 エンティティタイプ 点,線,円などの要素を識別する番号.
10 , 20 他のセクションの行と同じで,"D0000001" から.
2 パラメータデータの最初の行へのポインタ.
3 .
4 線種.
5 レベル. AFsoft には,「レイヤ」とある.
6 .
7 .
8 .
9 .
11 .
12 線幅.
13 色番号.
14 パラメータデータの行数.
15 Form Number エンティティの詳細を決定する番号.例えば Entity 128 は 0-9 .
18 エンティティの識別子.右詰.
19 .
パラメータデータセクション
実際の座標データなどが入っている.
wiki にあるサンプルデータがわかりやすい.
version6.pdf の Table 3. Curve and Surface Entities より
116 Point
100 Circular Arc
110 Line
点 (116)
DE 13 が 5 なので,黄.
PD の 2 から 4 は,(0,0,0) と (5,0,0)
円弧 (100)
DE 13 が 2 なので,赤.
PD は 2D で中心点,弧の始点,終点.反時計回り.
(0,0) を中心として (0,1)-(0,-1) と (5,0) (5,-1)-(5,1)
PD の 1 が Z の様であるが,どの様に表されるかはまだ理解できていない.
線 (110)
DE 13 が 3 なので,緑.
PD の 2 から 7 は,(0,-1,0)-(5,-1,0) と (0,1,0)-(5,1,0)
Null Entity (Type 0)
読込み処理などではスキップされる.
igs を編集して無効にしたりするためのもの?
DE のエンティティフィールドと PD の最初のフィールドとの両方を 0 にする.
FreeCAD で出力
iges1.html
3D Object Converter で出力
iges2.html
version6.pdf Appendix A
iges_a1.html
iges_a2.html
iges_a3.html
VariCAD で出力
iges3.html
Spline 1
spline1.html
FreeCAD で Bスプライン曲線 の出力
iges4.html
Curve and Surface Geometry Entities
iges_3_2.html
円弧を 126 で表現
iges_100.html
Spline 2
spline2.html
Spline 3
spline3.html
Spline 4
spline4.html
Spline 5
spline5.html
Spline 6
spline6.html
Spline 7
spline7.html
Spline 8
spline8.html
Spline 9
spline9.html
2018/03/30 時間切れのため中断
参考にさせてもらった所
https://en.wikipedia.org/wiki/IGES
https://wiki.eclipse.org/IGES_file_Specification
http://afsoft.jp/cad/p08.html
http://www.nippaku.co.jp/~tamotsu/benchmark/translation/iges_entity.html
http://www-mm.hm.t.kanazawa-u.ac.jp/research/kodatuno/
http://www.infogoaround.org/JBook/bstobez.html
http://ja.wikipedia.org/wiki/B-スプライン曲線
http://www.ibiblio.org/e-notes/Splines/Intro.htm
http://kanamori.cs.tsukuba.ac.jp/lecture/2017/cg_basics/06/06_material.pdf
http://surf.ml.seikei.ac.jp/~nakano/doc/2dSpline.pdf
https://ci.nii.ac.jp/els/contentscinii_20180124162645.pdf?id=ART0009956858
http://www.idav.ucdavis.edu/education/CAGDNotes/homepage.html
http://kantoku.hatenablog.com/entry/2015/08/07/122722
http://www.las.osakafu-u.ac.jp/~yamaguti/jugyo/geom/surface.pdf
http://www.not-enough.org/abe/manual/math/nurbs.html
https://github.com/mrdoob/three.js/blob/master/examples/webgl_geometry_nurbs.html
http://web.cs.wpi.edu/~matt/courses/cs563/talks/nurbs.html
http://web.cs.wpi.edu/~matt/courses/cs563/talks/curves.html
http://pages.mtu.edu/~shene/COURSES/cs3621/NOTES/notes.html
http://www.lib.kobe-u.ac.jp/repository/thesis/d1/D1002380.pdf
http://research.nii.ac.jp/~takayama/teaching/utokyo-iscg-2015/slides/iscg-2015-02-modeling1.pdf
http://maicommon.ciao.jp/ss/Jalgo/Bspline/index.htm
http://ibiblio.org/e-notes/Splines/Intro.htm
http://geometrie.foretnik.net/files/NURBS-en.swf
http://www.martinreddy.net/gfx/3d/OBJ.spec
https://nccastaff.bournemouth.ac.uk/jmacey/RobTheBloke/www/source/obj.html