Indexへ
(33322)//【33323】→(33326)
------------------------
【タイトル】面積根拠の計算式
【記事番号】 33323 (*)
【 日時 】09/03/04 16:01
【 発言者 】kaeru omuraisu@vmail.plala.or.jp

はじめまして。
jwwの初心者です。

根切図をjwwで書いています。
提出の際はiwwで算出した面積に高さを掛けて出していますが、
面積の根拠(計算式)が必要になりました。

計算式が出るソフトをお持ちの方、
教えて頂けないでしょうか?
(根切図の形はさまざまです)
(出来れば、計算式をエクセルに落としたいです)


Indexへ
(33323)←【33326】→(33333)
------------------------
【タイトル】Re(1):面積根拠の計算式
【記事番号】 33326 (33323)
【 日時 】09/03/04 18:29
【 発言者 】hayabusa

▼kaeruさん:
>はじめまして。
>jwwの初心者です。
>
>根切図をjwwで書いています。
>提出の際はiwwで算出した面積に高さを掛けて出していますが、
>面積の根拠(計算式)が必要になりました。
>
>計算式が出るソフトをお持ちの方、
>教えて頂けないでしょうか?
>(根切図の形はさまざまです)
>(出来れば、計算式をエクセルに落としたいです)

こんにちは。

求積の計算式(根拠)は幾つか種類があると思います。
1.三斜計算の場合の倍面積法(JWW_SMPL.BAT)、ヘロン法
2.閉鎖図形の場合の直角座標法(ZAHYOU.BAT)、倍横距法
3.矩形の場合の縦×横

閉鎖の種類
1.結合点のみの閉鎖図形
2.交点、結合点の閉鎖図形
3.延長交点を含む閉鎖図形

具体的な計算対象を特定できればあるいは適切な解決法
があるかもしれません・・?

また図形に円弧、楕円弧を含む場合はやっかいな事に
なると思います。


Indexへ
(33326)←【33333】→(33337)
------------------------
【タイトル】Re(2):面積根拠の計算式
【記事番号】 33333 (33326)
【 日時 】09/03/05 09:53
【 発言者 】kaeru omuraisu@vmail.plala.or.jp

▼hayabusaさん:
>▼kaeruさん:
>>はじめまして。
>>jwwの初心者です。
>>
>>根切図をjwwで書いています。
>>提出の際はiwwで算出した面積に高さを掛けて出していますが、
>>面積の根拠(計算式)が必要になりました。
>>
>>計算式が出るソフトをお持ちの方、
>>教えて頂けないでしょうか?
>>(根切図の形はさまざまです)
>>(出来れば、計算式をエクセルに落としたいです)
>
>こんにちは。
>
>求積の計算式(根拠)は幾つか種類があると思います。
>1.三斜計算の場合の倍面積法(JWW_SMPL.BAT)、ヘロン法
>2.閉鎖図形の場合の直角座標法(ZAHYOU.BAT)、倍横距法
>3.矩形の場合の縦×横
>
>閉鎖の種類
>1.結合点のみの閉鎖図形
>2.交点、結合点の閉鎖図形
>3.延長交点を含む閉鎖図形
>
>具体的な計算対象を特定できればあるいは適切な解決法
>があるかもしれません・・?
>
>また図形に円弧、楕円弧を含む場合はやっかいな事に
>なると思います。

おはようございます。
ご連絡、ありがとうございます。

求積の計算式はどんな方法でも構わないと思います。
(ヘロンが一番分かりやすいですかね)

閉鎖の種類は
延長交点を含む閉鎖図形
(山留の位置と根切線はレイヤーを変えています)

円弧、楕円弧は殆ど出てきません。
斜線を使うことはありますが。

適切な解決策があれば教えて下さい。
宜しくお願いします。


Indexへ
(33333)←【33337】→(33327)
------------------------
【タイトル】Re(3):JWW_SMPL連携編
【記事番号】 33337 (33333)
【 日時 】09/03/05 10:53
【 発言者 】hayabusa

こんにちは。

私の知る限り延長交点を含めた閉鎖図形の求積根拠をエクセルなどの
表計算ソフトに送る外部変形は公開されていないと思います。
但し、直角座標法である程度の条件が揃えば可能だと思います。(検証中)

とりあえずJw_cadに装備されているJWW_SMPL.BATと連携した外部変形
を書き込みますのでエクセルで検証してみてください。

----外部変形動作条件---------------------------------------------------
1.このバッチファイルをJWW_SMPL.EXEと同じディレクトリに置いてください。
 通常はjwwフォルダ内にあります。
2.msw32-ruby1.6〜1.8.6(1.8.7および1.9系は未対応)必要
※参考
msw32-rubyが導入されている場合はBAT編集項目を選択した時、左上にrubyの
バージョンが表示されます。(ruby 1.8.1 等)
表示されない場合は下記、陽建築設計事務所様のHPから
導入してください。
http://officehikari.art-studio.cc/
JWW外変環境設定支援ソフト J_GARU Ver2.0
というソフトで自動導入できます。
※他のmswin32rubyパッケージとの重複インストールはトラブルの元ですので
注意してください。

3.jwwおよび線分交点検索.batのパスに空白があると動作しません。(2000,XP)
------------------------------------------------------------------------

バッチファイル名は「三斜計算.bat」として動作確認後必要の場合は
適当な名前に変更してください。
(start notepad.exe 三斜計算.bat---修正必要)

####下記より[メモ帳]にコピペして全角空白→半角空白の置換をしてください。
@REM 三斜計算CB出力
@echo off
goto do%1
rem
rem ----------------------------------------------------------------
rem ※このファイルを編集した場合は上書き保存して閉じてください。
rem ※ファイルを閉じなくても編集は反映されます。
rem ※作図設定はこのバッチファイルの82行目からです。
rem ----------------------------------------------------------------
rem ※概要
rem 1.この外部変形はJWW_SMPL.EXEと連携して三斜計算データをクリップ
rem  ボードにコピーするものです。
rem  タブ区切りですのでエクセル側に於いて右クリックからセル単位で
rem  貼付できます。(他の表計算ソフトでも可能)
rem 2.全てのオプションをコマンドラインに設定してありますので環境に
rem  応じて適宜修正して下さい。
rem ----------------------------------------------------------------
REM #jww
REM #cd
REM #hm |三斜計算 L|Excel 起動 R|BAT 編集|
REM #:1
REM #h1
REM #g0 書込みグループのみ選択対象
REM #hc 【 三 斜 計 算 】 三角形を選択(三角形の辺 200 まで)
REM #0 数値書き込み位置指示 (L)free (R)Read
REM #f 敷地名称(無指定 無)  : /_$1"
REM #c 番号の前に追加する文字(無指定 無) : /_$2"
REM #ht10 ブロック図形の書出しをしない
REM #ht40 ソリッドの書出しをしない
REM #hr
REM #e
REM #:2
REM #:3
REM #h0
REM #hr
REM #e
rem ---------------------------------------------------------------------------
rem  ※JWW_SMPL.EXEオプション(JWW_SMPL.BATより抜粋)※
rem
rem  起動オプション(IME ON)
rem  #f 敷  地  名  称  : /_$1"
rem  起動オプション(IME OFF)
rem  #c 番号の前に追加する文字 : /_$2"
rem
rem  オプション説明(指定レイヤに作図)
rem  /N* :初期番号指定       「*」  は初期No[1〜8001]  (無指定:1)
rem  /L* :レイヤ指定        「*」  はレイヤNo[0〜F]  (無指定:書込レイヤ)
rem  /M* :文字種類を指定      「*」  は文字種類No[1〜10] (無指定:2)
rem  /K* :小数点以下有効桁数を指定 「*」  は桁数No[1〜3]   (無指定:2)
rem  /T* :三角形頂点に点を作図   「*」  は点種類No[1〜6]  (無指定:1)
rem  /E*.*:三角形頂点に円を作図   「*.*」 は円半径[図寸 mm]  (無指定:1.0)
rem  /H* :三角形の辺を作図     「*」  は線色No[1〜6]   (無指定:1)
rem
rem  /C  :指定小数点以下桁数未満を切捨で寸法値作図 (無指定:四捨五入)
rem  /S  :敷地面積(小数点以下3桁を切捨)を作図
rem
rem  ※頂点点種、辺線色はNo[1〜9]の範囲内で再設定できます。
rem ----------------------------------------------------------------------------
:do1
JWW_SMPL.EXE /N1 /LF /M3 /K3 /T /E1.5 /C /S %1 %2 %3
copy jwc_temp.txt temp.txt > nul
ruby -x %~f0 temp.txt > jwc_temp.txt
del temp.txt
rem pause
goto END
:do2
start excel.exe > jwc_temp.txt
rem ※コマンドラインにファイルを設定する場合
rem  ---カレントの場合---
rem  start excel.exe sample.xls > jwc_temp.txt
rem  ---絶対パスの場合(パスに空白がある場合は""で囲む)---
rem  start excel.exe "C:\my excel\sample.xls" > jwc_temp.txt
goto END
:do3
start notepad.exe 三斜計算.BAT
ruby -e 'puts "h# ruby #{RUBY_VERSION} "' > jwc_temp.txt
goto END
#!ruby -Ks
def main
#============= 設 定 =============================================
#
waku_en = "1"  #番号枠種類(楕円枠 → 0 : 円枠 → 1 : 枠無 → 2)
waku_lc = "0"  #番号枠線色(1〜9)      0の場合は既定線色
waku_lt = "0"  #番号枠線種(1〜9)      0の場合は既定線種
waku_br = "0.8" #番号枠半径補正倍率(0.5〜2) 1の場合は元半径
#
line_lc = "0"  #高さ垂直線線色(1〜9)    0の場合は既定線色
line_lt = "0"  #高さ垂直線線種(1〜9)    0の場合は既定線種
#
apex_lc = "0"  #頂点円線色(1〜9)      0の場合は既定線色
apex_lt = "0"  #頂点円線種(1〜9)      0の場合は既定線種
#
apex_pn = "0"  #頂点点種(1〜9)       0の場合は既定点種
#
shen_lc = "0"  #三角形の辺線色(1〜9)    0の場合は既定線色
shen_lt = "0"  #三角形の辺線種(1〜9)    0の場合は既定線種
#
hyou_lc = "0"  #面積表線色(1〜9)      0の場合は既定線色
hyou_lt = "0"  #面積表線種(1〜9)      0の場合は既定線種
#
#=================================================================
 if waku_br.to_f < 0.5 or waku_br.to_f > 2.0
  puts "he 番号枠半径補正値設定エラー。"; exit
 end
 msg0 = "区画の三斜データをClipboardにコピーしました。"
 datas,hens,all,lcs,lts,msg = [],[],[],[],[],""
 while ARGF.gets
  datas << $_
 end
 (datas.reverse).each{|data|
  if data =~ /^h#/
   msg = data
  elsif data =~ /^\s[0-9-]/
   hens << data
  else
   break
  end
 }
 datas -= hens
 datas.each{|data|
  all << data
  if data =~ /^ci/
   en = data.split; en[3] = waku_br.to_f*en[3].to_f
   if en.size == 8
    if waku_lc == "0"
     puts lcs[-1]
    else
     puts "lc"+waku_lc
    end
    if waku_lt == "0"
     puts lts[-1]
    else
     puts "lt"+waku_lt
    end
    if waku_en == "1"
     puts en[0,4].join("\s")
    elsif waku_en == "0"
     puts en.join("\s")
    elsif waku_en == "2"
    else
     puts "he 枠種類設定エラー"; exit
    end
   else
    if apex_lc == "0"
     puts lcs[-1]
    else
     puts "lc"+apex_lc
    end
    if apex_lt == "0"
     puts lts[-1]
    else
     puts "lt"+apex_lt
    end
    puts data
   end
  elsif data =~ /^pt/
   if apex_pn != "0"
    puts "pn"+apex_pn
   end
   puts data
  elsif data =~ /^\s[0-9-]/
   if all[-2] =~ /^z3/
    if line_lc == "0"
     puts lcs[-1]
    else
     puts "lc"+line_lc
    end
    if line_lt == "0"
     puts lts[-1]
    else
     puts "lt"+line_lt
    end
   else
    if hyou_lc == "0"
     puts lcs[-1]
    else
     puts "lc"+hyou_lc
    end
    if hyou_lt == "0"
     puts lts[-1]
    else
     puts "lt"+hyou_lt
    end
   end
   puts data
  elsif data =~ /^lc/
   puts data
   lcs << data
  elsif data =~ /^lt/
   puts data
   lts << data
  else
   puts data
  end
 }
 if hens.size >= 3
  if shen_lc != "0"
   puts "lc"+shen_lc
  end
  if shen_lt != "0"
   puts "lt"+shen_lt
  end
  hens.each{|hen|
   puts hen
  }
 end
 henms = []; ii,ll = 0,datas.size-1
 for idx in ii .. ll
  if datas[idx] =~ /^cs/
   iidx = idx + 1
   ele = []
   while datas[iidx] =~ /^ch/
    no = datas[iidx].index(/\"/)
    ele << datas[iidx][no+1..-1].strip
    iidx += 1
   end
   if ele.size == 5
    henms << ele.join("\t")
   end
   ii = iidx
  end
 end
 setValue(henms.join("\n"))
 puts "h# #{henms.size} #{msg0}#{msg}\n"
end
def setValue(string)
 require 'Win32API'
 openClipboard = Win32API.new('user32','OpenClipboard',['I'],'I')
 emptyClipboard = Win32API.new('user32','EmptyClipboard',[],'I')
 setClipboardData = Win32API.new('user32','SetClipboardData',['I','I'],'I')
 closeClipboard = Win32API.new('user32','CloseClipboard',[],'I')
 globalAlloc = Win32API.new('kernel32','GlobalAlloc',['I','I'],'I')
 globalLock = Win32API.new('kernel32','GlobalLock',['I'],'I')
 globalUnlock = Win32API.new('kernel32','GlobalUnlock',['I'],'I')
 lstrlen = Win32API.new('kernel32','lstrlenA',['P'],'I')
 lstrcpy = Win32API.new('kernel32','lstrcpyA',['I','P'],'P')
 if openClipboard.Call(0) != 0
  emptyClipboard.Call()
  ll = lstrlen.Call(string)
  gMEM = globalAlloc.Call(0x2000, ll+1)
  pMEM = globalLock.Call(gMEM)
  lstrcpy.Call(pMEM, string)
  setClipboardData.Call(1, gMEM)
  globalUnlock.Call(gMEM)
  closeClipboard.Call
 end
end
main()
__END__
:END
########以上です。


Indexへ
(33337)←【33327】→(33334)
------------------------
【タイトル】Re(1):面積根拠の計算式
【記事番号】 33327 (33323)
【 日時 】09/03/04 20:21
【 発言者 】ban

▼kaeruさん:
>
>根切図をjwwで書いています。
>提出の際はiwwで算出した面積に高さを掛けて出していますが、
>面積の根拠(計算式)が必要になりました。
>
>計算式が出るソフトをお持ちの方、
>教えて頂けないでしょうか?
>(根切図の形はさまざまです)
>(出来れば、計算式をエクセルに落としたいです)

こんにちは。

計算式が三斜方式(直角三角形に区分して計算する)でよければ、

根切図を完了後に、

1.根切深さごとに色を変えて塗りつぶす。
※ぬりつぶしは外部変形『ソリッド発展系』が便利です。
下記サイト siegel's 『間』 でダウンロードできます。
http://homepage2.nifty.com/siegel/

2.次に、ソリッド部分の面積を計算します。
※面積計算は外部変形『gheron』が便利です。
下記サイト ぐらべる・ろぉど でぃばぃでい でダウンロードできます。
http://gravelroad.yh.land.to/category/2/subcatid/31

『gheron』を実行し、
計算対象をソリッド、計算方法を三斜、小計あり及びエクセルファイル出力にチェックする。
図面上及びエクセルファイルに色区分ごとに小計付きで面積表ができます。
又、ソリッド部分には計算根拠の直角三角形(辺長及び高さが表示される)が、
三角形内に番号が表示されます。
計算式はこの番号に対応しています。


外部変形『ソリッド発展系』及び『gheron』の使いこなしがポイントです。
この二つの外部変形をまずは習得して下さい。
二つの外部変形共、ダウンロードサイトに詳しい説明があります。


Indexへ
(33327)←【33334】→(33411)
------------------------
【タイトル】Re(2):面積根拠の計算式
【記事番号】 33334 (33327)
【 日時 】09/03/05 09:58
【 発言者 】kaeru omuraisu@vmail.plala.or.jp

▼banさん:
>▼kaeruさん:
>>
>>根切図をjwwで書いています。
>>提出の際はiwwで算出した面積に高さを掛けて出していますが、
>>面積の根拠(計算式)が必要になりました。
>>
>>計算式が出るソフトをお持ちの方、
>>教えて頂けないでしょうか?
>>(根切図の形はさまざまです)
>>(出来れば、計算式をエクセルに落としたいです)
>
>こんにちは。
>
>計算式が三斜方式(直角三角形に区分して計算する)でよければ、
>
>根切図を完了後に、
>
>1.根切深さごとに色を変えて塗りつぶす。
>※ぬりつぶしは外部変形『ソリッド発展系』が便利です。
>下記サイト siegel's 『間』 でダウンロードできます。
>http://homepage2.nifty.com/siegel/
>
>2.次に、ソリッド部分の面積を計算します。
>※面積計算は外部変形『gheron』が便利です。
>下記サイト ぐらべる・ろぉど でぃばぃでい でダウンロードできます。
>http://gravelroad.yh.land.to/category/2/subcatid/31
>
>『gheron』を実行し、
>計算対象をソリッド、計算方法を三斜、小計あり及びエクセルファイル出力にチェックする。
>図面上及びエクセルファイルに色区分ごとに小計付きで面積表ができます。
>又、ソリッド部分には計算根拠の直角三角形(辺長及び高さが表示される)が、
>三角形内に番号が表示されます。
>計算式はこの番号に対応しています。
>
>
>外部変形『ソリッド発展系』及び『gheron』の使いこなしがポイントです。
>この二つの外部変形をまずは習得して下さい。
>二つの外部変形共、ダウンロードサイトに詳しい説明があります。

おはようございます。
ご連絡、ありがとうございます。

いろりろなサイトがあるんですね。
ちょっと試したいと思います。
(私には難しいそうですが)

結果が出ましたら、
改めてご連絡ありがとうございます。

ありがとうございます。


Indexへ
(33334)←【33411】//(33324)
------------------------
【タイトル】Re(1):面積根拠の計算式
【記事番号】 33411 (33323)
【 日時 】09/03/10 23:12
【 発言者 】kaeru

こんばんは。
みなさん、ご返答ありがとうございます。

いろいろやってみました。
僕としてはいいのではと思いましたが、
面積計算表が膨大な量になり、
改善してくれと言われました。

教えて下さったみなさま、
ありがとうございます。
大変助かりました。


▼kaeruさん:
>はじめまして。
>jwwの初心者です。
>
>根切図をjwwで書いています。
>提出の際はiwwで算出した面積に高さを掛けて出していますが、
>面積の根拠(計算式)が必要になりました。
>
>計算式が出るソフトをお持ちの方、
>教えて頂けないでしょうか?
>(根切図の形はさまざまです)
>(出来れば、計算式をエクセルに落としたいです)