こんにちわ。大げさなスレですね(^^;
できれば、そのスクリプトを載せて欲しかったです。
頭悪いんで公式が分からないんです(汗)
一応、分かる範囲で書いてみたんですが、間違っていたらすみません。
x1 = double( 2 ) :y1 = double( 2 )
x2 = double( 4 ) :y2 = double( 4 )
x3 = double( -1 ) :y3 = double( 5 )
x4 = double( 4 ) :y4 = double( 0 )
a = ( y2 - y1 ) / ( x2 - x1 ) // 傾き
b = y1 - ( x1 * a ) // 切片
c = ( y4 - y3 ) / ( x4 - x3 ) // 傾き
d = y3 - ( x3 * c ) // 切片
p = ( d - b ) / ( a - c ) // 交点 x 座標
q = a * p + b // 交点 y 座標
mes "点(" + int(x1) + "," + int(y1) + ")と点(" + int(x2) + "," + int(y2) + ")を通る直線は"
mes "y= " + a + "x + " + b
mes
mes "点(" + int(x3) + "," + int(y3) + ")と点(" + int(x4) + "," + int(y4) + ")を通る直線は"
mes "y= " + c + "x + " + d
mes
mes "この2つの直線の交点は(" + p + "," + q + ")です"
公式を知らないので、
傾きは変化率(Δy/Δx)を考えて、
切片は y = ax + b ⇒ b = y - ax としてます。
交点は、
x座標は、q = ap + b と q = cp + d を減算してます( p = ( d - b ) / ( a - c ) )
y座標は、そのまま q = ap + b をしてます。
部分部分で分けて計算してますが、
この方法だと、誤差も出やすいかもしれません。
もっといい方法があると思いますので、それは他の方に・・・m(_ _)m