平面加工のみの簡易CAMを作りたい。
ラスター情報を取得してNC言語に変換するものは作ったけど
やっぱりベクター情報じゃないと綺麗な加工ができない。
ということで、AutoCADさんで作成したdxf形式のファイルを
解析してみたりみなかったり。
オンラインで軽く調べたけどよくわからなかったので、自力でメモりながら解析。
とりあえず直線と円弧の情報だけ取り出せれば
NC言語に変換できそうなので、AutoCADで直線や曲線を描いてdxfで保存し
どう変わっているかを検証。
直線の位置情報は、「AcDbLine」と「LINE」に囲まれてました。
「AcDbLine」の上には必ず「AcDbEntity」とありましたが
多分あんまし気にしなくても良さそう。
その部分のコードはこんな感じ。
AcDbLine
10
0.024396417365324(始点X座標)
20
0.0192004409797164(始点Y座標)
30
0.0(始点Z座標(?))
11
0.077854290469304(終点X座標)
21
0.0192004409797164(終点Y座標)
31
0.0(終点Z座標(?))
0
LINE
次に、円弧部分は
「AcDbCircle」と「AcDbArc」と「LINE」に囲まれていて、
コードはこんな感じ。
AcDbCircle
10
0.1031006901081582(円弧中心X座標)
20
0.1192004409797164(円弧中心Y座標)
30
0.0(始点Z座標(?))
40
0.1(半径)
100
AcDbArc
50
270.0(始点での角度)
51
0.0(終点での角度)
0
LINE
あれ?こんなこと前も書いた気がする。
まぁいいや。復習ってことで。
ラスター情報を取得してNC言語に変換するものは作ったけど
やっぱりベクター情報じゃないと綺麗な加工ができない。
ということで、AutoCADさんで作成したdxf形式のファイルを
解析してみたりみなかったり。
オンラインで軽く調べたけどよくわからなかったので、自力でメモりながら解析。
とりあえず直線と円弧の情報だけ取り出せれば
NC言語に変換できそうなので、AutoCADで直線や曲線を描いてdxfで保存し
どう変わっているかを検証。
直線の位置情報は、「AcDbLine」と「LINE」に囲まれてました。
「AcDbLine」の上には必ず「AcDbEntity」とありましたが
多分あんまし気にしなくても良さそう。
その部分のコードはこんな感じ。
AcDbLine
10
0.024396417365324(始点X座標)
20
0.0192004409797164(始点Y座標)
30
0.0(始点Z座標(?))
11
0.077854290469304(終点X座標)
21
0.0192004409797164(終点Y座標)
31
0.0(終点Z座標(?))
0
LINE
次に、円弧部分は
「AcDbCircle」と「AcDbArc」と「LINE」に囲まれていて、
コードはこんな感じ。
AcDbCircle
10
0.1031006901081582(円弧中心X座標)
20
0.1192004409797164(円弧中心Y座標)
30
0.0(始点Z座標(?))
40
0.1(半径)
100
AcDbArc
50
270.0(始点での角度)
51
0.0(終点での角度)
0
LINE
あれ?こんなこと前も書いた気がする。
まぁいいや。復習ってことで。
※コメント投稿者のブログIDはブログ作成者のみに通知されます