このQ&Aは役に立ちましたか?
座標(X,Y)出力できる安価なCADソフトはありますか?
2023/10/15 01:17
- 当方は現在2次元の板金向け汎用CADを使用していますが、座標をファイルとして出力することができません。
- そこで、図形作成後に複数の穴位置などのXY座標をテキスト出力できる安価なCADソフトを探しています。
- 座標(X,Y)出力ができるCADソフトについて知っている方がいらっしゃいましたら、教えていただけないでしょうか?
座標(X,Y)出力できるCAD
2006/05/21 00:44
図形作成後、複数の穴位置等のXY座標をテキスト出力できる安価なCADソフト有りますか。当方現在2次元の板金向け汎用CAD使用しており、座標の表示機能は有りますが、座標をファイルとして出力できません。どなたか知っていらしゃる方教えて下さい。宜しくお願い致します。
質問者が選んだベストアンサー
>AutoCADを使用してAutoCADで作成したポイントデータ
>(X,Y座標)をテキスト形式(CSVでも可)にファイル
>出力する方法はありませんか?
以前、上記のような質問があり、多くの方々が回答され
ていました。同様に、CADからDXFファイルが出力可能
ならば、簡単なプログラムで抽出が出来ると思います。
あまりコストを掛けないで実施を考えますと。
一例として(前回の回答をポイントから円に変更したのみ)
10 CLOSE #1,#2
20 OPEN "c:\A.DXF" FOR INPUT AS #1
30 OPEN "c:\Aa.txt" FOR OUTPUT AS #2
40 INPUT #1,A$
50 IF EOF(1) THEN CLOSE #1,#2:END
60 IF A$="100" THEN 70 ELSE 40
70 INPUT #1,B$
80 IF B$="AcDbCircle" THEN 90 ELSE 110
90 INPUT #1,A1$,AA1$,B1$,BB1$
100 PRINT #2,AA1$,BB1$
110 GOTO 40
というBASICプログラムでDXFファイルから円の中心
座標を書き出すことが可能です。
動作に関しては、AドライブのA.DXFを読んで、Aドライブに
Aa.textとして書き出しです。
動作環境ですが、窓の杜からフリーのBASIC(N88互換)
を入手され、上記のプログラムで可能です。あとは、使い勝手
が変更可能です。
ただし、DXFファイル形式が異なる場合は、多少のプログラム
変更が必要になると思います。
このQ&Aは役に立ちましたか?
この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。
その他の回答 (7件中 1~5件目)
「Pro'sNC」はどうでしょう。
http://www.east.jdmia.or.jp/pronc/
フリーソフトで、一応CAD/CAM、位置決めモードで円の中心をマウスで順に拾っていき、NCプログラムを生成したりできます。
フリーでは安すぎですか?
お礼
2006/05/25 22:32
ご回答有難うございます。
早速ダウンロードして試してみます。
Perl だとこんな感じです
#CIRCLE.PL DXFファイルから真円データのみを出力する.
$circlef = 0;
print STDERR "\n";
print STDERR "DXFファイルから真円データを取り出す.\n";
print STDERR "------------------------------------\n";
#$*=1;
while(<>){
chop; # 改行文字の削除
s/ *//; # スペース削除
if ( /^CIRCLE/ ){ # 真円 ?
$circlef = 1;
}elsif( $circlef == 1 ){
if( /[0-9]*/ ){ # 念のため確認
$command = $_; #
$_ = <ARGV>; # 次の行の取り込み
chop; # 改行文字の削除
s/ *//; # スペース削除
$data = $_; # データ部取り出し
if( $command eq "10" ){ # 10 : x
$x = $data;
}elsif( $command eq "20" ){ # 20 : y
$y = $data;
}elsif( $command eq "8" ){ # 8 : レイヤ
$ray = $data;
}elsif( $command eq "62" ){ # 62 : 色
$col = $data;
}elsif( $command eq "40" ){ # 40 : 半径
$radius = $data;
}elsif( $command eq "0" ){ # 次のデータの先頭
print "X,",$x,",Y,",$y,",φ,",$radius * 2,",R,",$ray,",C,",$col,"\n";
$circlef = 0;
}
}
}
}
print STDERR "\n";
print STDERR "終了.\n\n";
出力結果は
X,-2740.0,Y,-2295.0,φ,8,R,V1,C,0
X,-3446.0,Y,-1854.5,φ,3,R,V1,C,0
X,-2740.0,Y,-2330.0,φ,8,R,V1,C,0
X,-3446.0,Y,-1854.5,φ,4,R,V1,C,0
X,-2740.0,Y,-2365.0,φ,6.75,R,V1,C,0
X,-3446.0,Y,-1832.5,φ,3,R,V1,C,0
拡張子をCSVにしてリダイレクトすればEXCELなどで編集できます。
DXFに変換する前にスケールを1:1に、(0,0)がDXFに出力した際に(0,0)となるように移動する必要があります。
DXFに出力した際に(0,0)となる場所は使用するCADによって異なると想いますのでメーカーに聞いてみて下さい。
標準フレームの四隅や基準マ-クなどに円を描いて試してみてもよろしいかと。
お礼
2006/05/22 23:53
ご回答有難うございます。
座標の計算にあたり、基準となるポイント(原点)はどのように考慮するのでしょうか。
AutoCADか、AutoCAD LTが使える環境でしたら
南九州総合設計さんの以下のフリーソフトで座標を抽出出来るようです。
http://www.e-nankyu.co.jp/deta/sakuzu/Extract/extract3.html
ただし、使ったこと無いので詳細は不明です。
お礼
2006/05/22 23:47
ご回答有難うございます。
AutoCAD、AutoCAD LTについては名前はよく聞くのですが、使用したことがありません。よく調べてみようと思います。
以前に私も同じ悩みをもちDXFデータを呼込み穴あけのNCデータを作成するソフトを作成いたしました。(VBで)その時に参照したHPを参考に載せておきます。英文ですが4:TABLES Section の項を参照すればDXFの事多少分かるとおもいます。BASICを昔おやりでしたらVBはいかがですか?
もしもフリーでお探しなら誰か作成しているかもしれませんね。
ちなみに私のソフトはtara555さんもいおっしゃっていますが、精度や信用、安心が保証できませんし、サポートもしていくつもりがないので提供する事は止めておいたほうがいいと思っております。あくまで私の趣味で自社用DXF・NCポストで作成したものなので・・
お礼
2006/05/22 23:29
ご回答有難うございます。
当方勉強不足により、ご提供頂いた資料を理解するには、かなりの時間がかかりそうです。
以前 cad_data の 円を dxf file
に 変換して ncdata に 変換しました 事がありますので
よろしければ お渡しします。
お礼
2006/05/22 23:16
親切なご対応有難うございます。
お礼
2006/05/21 23:11
ご回答有難うございます。
現在使用しているCADにてDXFファイルの出力は可能です。
ファイルの中身は見たことがありませんが、
様々なことが出来るのですね。
ベーシックは数十年前に勉強したっきりで、
ほとんど忘れてしまっています。
当方説明不足でしたので補足致します。
出力する座標は、NC機械加工でキリ穴やタップ穴加工に使用するものです。穴数は製品にもよりますが10~400個程度です。
製品は板状のものもあれば、箱型(ベッド、コラム、ブラケット類)のものもあり、工具に対する加工面の高さが異なる場合もございます。その加工面毎に穴座標を分別して出力したいのです。CADにて作図した穴について、範囲指定などで指定し、1個1個自分の出力したいものから順番に選択して、座標出力するというやり方が出来る(CAMの機能かもしれませんが)CADソフトがあれば紹介して頂きたいのです。