後からまとめて、値を代入
もっと短くなるような気もします。
#sympyで直線と直線の交点
from sympy import *
var('x1 y1 x2 y2 x3 y3 x4 y4')
ln12 = Line(Point(x1, y1), Point(x2, y2))
ln34 = Line(Point(x3, y3), Point(x4, y4))
ls=ln12.intersection(ln34)
#print(ls)
input={x1:0,y1:0, x2:1, y2:1, x3:0, y3:1, x4:1, y4:0};print(ls[0].x.subs(input),ls[0].y.subs(input))
input={x1:0,y1:0, x2:1, y2:1, x3:0, y3:1, x4:1, y4:2};print(ls[0].x.subs(input),ls[0].y.subs(input))
#1/2 1/2
#zoo zoo
--------------
(2021/02/10)
もっと短くなるような気もします。
#sympyで直線と直線の交点
from sympy import *
var('x1 y1 x2 y2 x3 y3 x4 y4')
ls=Line(Point(x1, y1), Point(x2, y2)).intersection(Line(Point(x3, y3), Point(x4, y4)))
#print(ls)
input={x1:0,y1:0, x2:1, y2:1, x3:0, y3:1, x4:1, y4:0};print(ls[0].x.subs(input),ls[0].y.subs(input))
input={x1:0,y1:0, x2:1, y2:1, x3:0, y3:1, x4:1, y4:2};print(ls[0].x.subs(input),ls[0].y.subs(input))
#1/2 1/2
#zoo zoo
最初から、値を代入
#sympyで直線と直線の交点
from sympy import *
print(Line(Point(0,0), Point(1,1)).intersection(Line(Point(0,1), Point(1,0))))
print(Line(Point(0,0), Point(1,1)).intersection(Line(Point(0,1), Point(1,2))))
# [Point2D(1/2, 1/2)]
# []