jw_cad 外部変形 - (1325) mshtaで2点間の勾配を計算する(ptslope) -

外部変形は データのやり取りをテキストファイルで行うので プログラム言語は 自由に選ぶことができます。図形は機能的かつシンプルなため、数多くのユーザーに受け入れられています。

 

mshtaで2点間の勾配を計算する(ptslope)

:mshtaで2点間の勾配を計算する(ptslope)
@echo off
if exist jwc_temp.txt (
  copy jwc_temp.txt myfiles > nul
  mshta %~f0 < myfiles > jwc_temp.txt
)
goto:eof

REM #jww
REM #1-%d 始点を指示してください
REM #2%d 終点を指示してください
REM #e

<script>
with (new ActiveXObject("Scripting.FileSystemObject")) {
  f = GetStandardStream(0) //stdin
  g = GetStandardStream(1) //stdout
  with (Math) {
    while (! f.AtEndOfStream) {
      F = ($_ = f.ReadLine()).split(/\s+/)
      if (/^hk/i .test($_)) hk = F[1];
      if (/^hp1-/i .test($_)) p1 = F.slice(1, 3);
      if (/^hp2 /i .test($_)) p2 = F.slice(1, 3);
    }
    f.close()
    lx = p2[0] - p1[0]
    ly = p2[1] - p1[1]
    d = atan2(ly, lx) * 180 / PI - hk
    g.WriteLine("h#2点間の勾配∠ = " + d.toFixed(3) + "゚")
  }
}
close()
</script>

 

 

スクリプト言語jscript を利用しています。