Jw_cad 相談室−その2 New

 Jw_cad についての相談の場としてお使いください
情報の交換には Jw_cad 情報交換室 をご利用ください
なお、情報交換室と相談室の両方に同じ内容を投稿するのはご遠慮ください

2009年9月以前の発言過去ログのページからご覧ください。

それ以降の過去ログは消失しています。
申し訳ありませんが、復活の予定はありません。


新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム
60 / 1489     ←次へ | 前へ→

Re:外部変形の紹介
 kojima  - 21/9/29(水) 12:59 -
土木は専門外なので説明が理解できません。

舗装展開図は以下を参考にすれば
https://www.city.anjo.aichi.jp/zigyo/nyusatsu/keiyaku/yoteikekka/documents/2014102840d.pdf


〇設定4.txtの内容

書込レイヤ__________________________________________a
書込文字種__________________________________________3
小数点以下桁数______________________________________3
数値丸め 四捨五入:1 切上:2 切捨:3___________________1
指示点からの文字の離れ(図寸)________________________1
書込線色____________________________________________1
書込線種____________________________________________1
書込点色____________________________________________6
幅員の記入位置 指示点上:1 指示点下:2 幅員中央:3_____1


〇バッチファイル

@REM 舗装展開図への長さ記入
@echo off
REM #jww
REM #cd
REM #h1
REM #1記入縦位置の中心を指示してください
REM #hp
REM #e
notepad 設定4.txt
copy jwc_temp.txt temp.txt > nul
ruby -x %~f0 temp.txt > jwc_temp.txt
pause
goto end
#!ruby -Ks
include Math
#指定の小数点以下で丸める
def keta_f(s,keta,marume)
s2=s*(10**keta)
if marume==1
s3=s2.round
elsif marume==2
s3=s2.floor
else
s3=s2.ceil
end

return (s3.to_f/(10**keta)).to_s
end
tuki=0
setei_a=[]
open("設定4.txt","r"){|f|
while f.gets
xy=$_.split(/\_+/)
setei_a<<xy[1]
end
}
k_ly=setei_a[0]
k_mojisyu=setei_a[1].to_i
keta=setei_a[2].to_i
marume=setei_a[3].to_i
hanare=setei_a[4].to_f
k_lc=setei_a[5].to_i
k_lt=setei_a[6].to_i
k_pn=setei_a[7].to_i
iti=setei_a[8].to_i
puts "ly#{k_ly}","cn#{k_mojisyu}","lc#{k_lc}","lt#{k_lt}","pn#{k_pn}"
tatesen_a=[];by_a=[];hch=[]
while ARGF.gets
xy=$_.split
if xy[0]=~/^hs/
xy[1..-1].each{|item|by_a<<item.to_f}
end
if xy[0]=~/^lg/
zusun=by_a[xy[0][2,1].hex]
end
if xy[0]=~/^hch/
xy.each{|item|hch<<item.to_f}
end
if xy[0]=~/^hp1/
hpx=xy[1].to_f
hpy=xy[2].to_f
end
if xy[0]=~/^\d|^-/
xy.collect!{|item|item.to_f}
if xy[0]>xy[2]
xy[0],xy[1],xy[2],xy[3]=xy[2],xy[3],xy[0],xy[1]
elsif xy[0]==xy[2]
xy[1],xy[3]=xy[3],xy[1] if xy[1]>xy[3]
tatesen_a<<xy
end
end
end
tatesen_a.sort!{|a,b|a[0]<=>b[0]}
x1=tatesen_a[0][0]-tuki*zusun
x2=tatesen_a[-1][0]+tuki*zusun
puts "z3"
printf(" %.11f %.11f %.11f %.11f\n",x1,hpy,x2,hpy)
if iti==1
puts "cc0"
elsif iti==2
puts "cc2"
else
puts "cc1"
end
tatesen_a.each{|xx1,yy1,xx2,yy2|
l=hypot(yy2-yy1,xx2-xx1)/1000
moji_x=xx1-hanare*zusun
if iti==1
moji_y=hpy+hanare*zusun
elsif iti==2
moji_y=hpy-hanare*zusun
else
moji_y=yy1+(yy2-yy1)/2
end
puts "z3"
printf("ch %.11f %.11f 0 1 \"%s\n",moji_x,moji_y,keta_f(l,keta,marume))
puts "z3"
printf("pt %.11f %.11f\n",xx1,hpy)
}
iti==2 ? keisu= -1 : keisu=1

if iti==2
puts "cc1"
else
puts "cc7"
end
total_l=0
0.upto(tatesen_a.size-2){|i|
xw=tatesen_a[i+1][0]-tatesen_a[i][0]
moji_x=tatesen_a[i][0]+xw/2
moji_y=hpy-hanare*zusun*keisu
puts "z3"
printf("ch %.11f %.11f 1 0 \"%s\n",moji_x,moji_y,keta_f(xw/1000,keta,marume))
total_l += xw/1000
}
moji_h=hch[k_mojisyu]
y=hpy-(moji_h+hanare*3)*zusun*keisu
puts "z3"
printf(" %.11f %.11f %.11f %.11f\n",x1,y,x2,y)
puts "z3"
printf("pt %.11f %.11f\n",x1,y)
puts "z3"
printf("pt %.11f %.11f\n",x2,y)
xw=x2-x1
moji_x=x1+xw/2
moji_y=y-hanare*zusun*keisu
puts "z3"
printf("ch %.11f %.11f 1 0 \"%s\n",moji_x,moji_y,keta_f(total_l,keta,marume))
__END__
:end


引用なし

パスワード


<Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.61 Safari/537.36 Edg/94.0.992.31@ai126170092065.41.access-internet.ne.jp>
・ツリー全体表示

外部変形の紹介 鋪装屋 21/9/28(火) 10:08
Re:外部変形の紹介 kojima 21/9/29(水) 12:59
Re:外部変形の紹介 鋪装屋 21/9/29(水) 15:08
Re:外部変形の紹介 kojima 21/9/29(水) 22:31
Re:外部変形の紹介 鋪装屋 21/9/30(木) 12:31
Re:外部変形の紹介 kojima 21/10/3(日) 22:10
Re:外部変形の紹介 鋪装屋 21/10/4(月) 7:18
Re:外部変形の紹介 鋪装屋 21/10/5(火) 9:30
Re:外部変形の紹介 鋪装屋 21/10/15(金) 8:30

60 / 1489     ←次へ | 前へ→
新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム
 898896
ページ:  ┃  記事番号:  

C-BOARD Moyuku v1.03b5
Jw_cad Copyright (C)1997-2021 Jiro Shimizu & Yoshifumi Tanaka