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