Indexへ
(15965)// 【15883】→(15886) ------------------------ 【タイトル】レイヤーのファイル間コピーについて
【記事番号】 15883 (*)
【 日時 】06/10/01 20:14
【 発言者 】りえ
図面枠(様式)をAファイルのAレイヤーにつくって、BファイルにAレイヤーごと
コピーをすることはできますか?
図面枠(様式)を選択してコピー、ペーストしようとしたのですが、ファイル間でのペーストでは貼り付ける位置を座標で指定できないのでしょうか?
いい方法があれば、教えてください。お願いします。
Indexへ
(15883)← 【15886】→(15888) ------------------------ 【タイトル】Re(1):レイヤーのファイル間コピーについて
【記事番号】 15886 (15883 )
【 日時 】06/10/01 21:29
【 発言者 】somem
【 リンク 】http://homepage2.nifty.com/cad_dwg/
▼りえさん:
> 図面枠(様式)をAファイルのAレイヤーにつくって、BファイルにAレイヤーごと
>コピーをすることはできますか?
> 図面枠(様式)を選択してコピー、ペーストしようとしたのですが、ファイル間でのペーストでは貼り付ける位置を座標で指定できないのでしょうか?
> いい方法があれば、教えてください。お願いします。
用紙枠は表示されていますか?
表示していなければ、設定⇒基本設定⇒一般(1)で「用紙枠を表示する」
にチェックを入れてください。
ファイル間でコピーペーストする時は、用紙枠の四隅のいづれかを基点に
設定する方法があります。
Indexへ
(15886)← 【15888】→(15908) ------------------------ 【タイトル】Re(1):レイヤーのファイル間コピーについて
【記事番号】 15888 (15883 )
【 日時 】06/10/01 21:58
【 発言者 】coolyoppe
▼りえさん:
> 図面枠(様式)をAファイルのAレイヤーにつくって、BファイルにAレイヤーごと
>コピーをすることはできますか?
> 図面枠(様式)を選択してコピー、ペーストしようとしたのですが、ファイル間でのペーストでは貼り付ける位置を座標で指定できないのでしょうか?
> いい方法があれば、教えてください。お願いします。
こんにちは。
レイヤAのデータだけ用紙の同じ位置に複写したいということなら、
まず、基本設定「一般(1)」から「用紙枠を表示する」にチェックし、
レイヤA以外を非表示(または表示のみ)として、範囲コマンドから
「全選択」>「基準点変更」(画面表示をちょっと縮小して用紙枠を
表示させ範囲基準点を用紙左下など)>「コピー」します。
(他のレイヤを非表示にしたくない場合は、レイヤAを書込レイヤに
しておけば「全選択」後「<属性選択>」から、「書込【レイヤ】のみ
選択」にチェックしてもOKです。)
後は他図面に移って、「貼付」から用紙枠(はあらかじめ表示しておく)
の同じ角を右クリックして配置すればOKです。
(「作図属性」から「◆元グループに作図」にチェックしておくのを
忘れないようにして下さい。Bファイルで違うグループの同じレイヤに
したい場合は、「◆元レイヤに作図」にチェックです。)
※レイヤ名などはコピーされませんので、手動で設定して下さい。
(環境設定ファイルなどでレイヤ名のみコピーすることは可能です。
ただ一つだけなら手入力したほうが簡単です。)
Indexへ
(15888)← 【15908】→(15913) ------------------------ 【タイトル】Re(1):レイヤーのファイル間コピーについて
【記事番号】 15908 (15883 )
【 日時 】06/10/02 13:11
【 発言者 】りえ
somemさん、coolyoppeさん、ありがとうございます。
図面枠は上手くいきました。
ファイル間でレイヤーをコピーできると便利なんですけどね。
Indexへ
(15908)← 【15913】→(15924) ------------------------ 【タイトル】Re(2):レイヤーのファイル間コピーについて
【記事番号】 15913 (15908 )
【 日時 】06/10/02 14:04
【 発言者 】コジマ
▼りえさん:
>ファイル間でレイヤーをコピーできると便利なんですけどね。
レイヤーはファイル毎に備えられている、透明なシートのようなものです。
ファイル間で、追加したり、削除できません。
(追加したり、削除できるのはデータのみ)
ファイル間では、必ずしも縮尺が同じとはかぎりません。
図面枠は、単独のレイヤグループに縮尺1/1で作図するのが基本のような気がします。(そのレイヤグループの別レイヤは使用しない)
Indexへ
(15913)← 【15924】→(15922) ------------------------ 【タイトル】Re(2):レイヤーのファイル間コピーについて
【記事番号】 15924 (15908 )
【 日時 】06/10/03 00:01
【 発言者 】七誌
▼りえさん:こんばんは。
レイヤの配置(?)がいつも同じならファイルをコピーしてデータだけ描き直すという手もありますが・・・。(誰でもやってますよね、失礼。)
>somemさん、coolyoppeさん、ありがとうございます。
>図面枠は上手くいきました。
>ファイル間でレイヤーをコピーできると便利なんですけどね。
Indexへ
(15924)← 【15922】//(15884) ------------------------ 【タイトル】Re(1):レイヤーのファイル間コピーについて
【記事番号】 15922 (15883 )
【 日時 】06/10/02 23:16
【 発言者 】コジマ
▼りえさん:
> 図面枠(様式)をAファイルのAレイヤーにつくって、BファイルにAレイヤーごと
>コピーをすることはできますか?
> 図面枠(様式)を選択してコピー、ペーストしようとしたのですが、ファイル間でのペーストでは貼り付ける位置を座標で指定できないのでしょうか?
> いい方法があれば、教えてください。お願いします。
外部変形で可能(レイヤ名もコピーする)
但し、縮尺は、前もって合わせてください。
Aファイルで、deta_cpy.batを実行
bファイルで、deta_pst.batを実行
尚、この外部変形の実行には、mswin32 版 Ruby のインストールが必要です。
以下で、入手できます。
http://www61.tok2.com/home2/gravelroad/tips/inst_msw.html
◎バッチファイル(ファイル名 data_cpy.bat)
以下の文をコピペ後、全角スペースを半角スペースに一括置換してください。
@REM データの保存
@echo off
REM #jww
REM #cd
REM #ht10
REM #zz
REM #zw
REM #zc
REM #h1
REM #hcブロック図形は対象外です
REM #hp
REM #g1
REM #gn
REM #e
copy jwc_temp.txt data.txt > nul
echo h#選択したデータをdata.txtに保存しました > jwc_temp.txt
◎バッチファイル(ファイル名 data_pst.bat)
以下の文をコピペ後、全角スペースを半角スペースに一括置換してください。
@REM データの書き出し
@echo off
REM #jww
REM #cd
REM #h4
REM #hp
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks data_pst.rb temp.txt> jwc_temp.txt
◎スクリプトファイル(ファイル名 data_pst.rb)
以下の文をコピペ後、全角スペースを半角スペースに一括置換してください。
by1=[]
while ARGF.gets
xy=split
if xy[0]=~/^hs/
xy[1..-1].each{|item|by1< end
end
ly_a=[];data=[];by2=[]
open("data.txt","r"){|f|
while line=f.gets
xy=split
data< if xy[0]=~/^hs/
xy[1..-1].each{|item|by2< end
if xy[0]=~/^lg[0-9]$|^lg[a-f]$/
lg=xy[0]
end
if xy[0]=~/^ly[0-9]$|^ly[a-f]$/
ly_a<<[lg,xy[0]]
end
break if $_ =~/^lg0 \d+$/
end
}
ly_a.uniq!
open("data.txt","r"){|f|
while line=f.gets
xy=split
if xy[0]=~/^hq|^lgn/
elsif xy[0]=~/^lg[0-9]|^lg[a-f]/
lgy=$&
print $_ if ly_a.flatten.include?(lgy)
elsif xy[0]=~/^ly[0-9]|^ly[a-f]/
lyy=$&
print $_ if ly_a.include?([lgy,lyy])
elsif xy[0]=~/^lyn/
print $_ if ly_a.include?([lgy,lyy])
else
print $_
end
end
}
zusun=[]
ly_a.each{|item|
unless by1[item[0][2,1].hex]==by2[item[0][2,1].hex]
zusun<<[item[0],by1[item[0][2,1].hex],by2[item[0][2,1].hex]]
end
}
str=[]
zusun.uniq.sort.each{|a,b,c|str<
moji=str.join("\s")
printf("h#縮尺が違っています#{moji}\n") if zusun.size>0