前提・実現したいこと
四角形の2つの辺の延長線を結んで三角形を作りたいです。
しかし求めたものは位置が歪んだものになってしまい、正しい三角形にならずにいるのが現状です。
これを実現するためにどんな式を使って座標を求めるのが好ましいか、
どうかご教授をお願い致します。
該当のソースコード/試したこと
Lua
1local function tipPos(x1,y1,x2,y2,x3,y3,x4,y4) --p1={x1,y1}, p2={x2,y2}, p3={x3,y3}, p4={x4,y4} 2 local vx2,vy2=(x2-x1),(y2-y1) 3 local vx3,vy3=(x3-x4),(y3-y4) 4 5 local deg2=math.deg(math.atan2(vy2,vx2)) 6 local deg3=math.deg(math.atan2(vy3,vx3)) 7 8 local vectorX2=math.cos(math.rad(deg2)) 9 local vectorY2=math.sin(math.rad(deg2)) 10 local vectorX3=math.cos(math.rad(deg3)) 11 local vectorY3=math.sin(math.rad(deg3)) 12 13 local t=(x2-x3-y2+y3)/(vectorX3-vectorX2+vectorY2-vectorY3) 14 -- tを出すための方程式 (x2+(vectorX2*t))-(x3+(vectorX3*t)=(y2+(vectorY2*t))-(y3+(vectorY3*t)) 15 16 local px=x2+(vectorX2*t) 17 local py=y2+(vectorY2*t) 18 19 return px,py 20end
この関数は、任意の4点のうちp2,p3を結ぶ点の座標を求めるものです。
式は、p2、p3の座標に、(ベクトル*距離t)を足して求めるという考えです。
回答1件
あなたの回答
tips
プレビュー