平面の式
import math
import numpy as np
X = 100*math.sqrt(3)
Y = 100
Z = 100
L = math.sqrt(pow(X,2) + pow(Y,2) + pow(Z,2))
A = X/L
B = Y/L
C = Z/L
D=-(X*A + Y*B + Z*C)
print('[A,B,C,D]=', [A,B,C,D])
平面に大きさを設定
z_x = -((X+1)*A + Y*B + D)/C
v_x = np.array([1,0,z_x-Z])/math.sqrt(1 + pow((z_x-Z),2))
z_y = -(X*A + (Y+1)*B + D)/C
v_y = np.array([0,1,z_y-Z])/math.sqrt(1 + pow((z_y-Z),2))
print(v_x)
print(v_y)
H=20
W=20
print(v_x*(-W))
print(v_x*(W))
print(v_y*(-H))
print(v_y*(H))
直線と交点
a=0.5
b=0.5
c=5
x = -D/(A+B*b/a+C*c/a)
y = x*b/a
z = x*c/a
print(x,y,z)