0

Python(2.7)を使用すると、4点で作られたボックスを通る線がどのようになっているかをどのように知ることができますか?ボックスを通過する線(Python)

例えば

、のは、私がポイントのキューブを構築してきたとしましょう:

from matplotlib import pyplot 
import pylab 
from mpl_toolkits.mplot3d import Axes3D 
import numpy as np 

fig = pylab.figure() 
ax = Axes3D(fig) 

sequence_containing_x_vals = np.array([0,0,0,0,1,1,1,1]) 
sequence_containing_y_vals = np.array([0,0,1,1,0,0,1,1]) 
sequence_containing_z_vals = np.array([0,1,0,1,0,1,0,1]) 

ax.scatter(sequence_containing_x_vals, sequence_containing_y_vals, sequence_containing_z_vals) 
pyplot.show() 

さあ、言わせて、私は(0.5,0.5に(0.5,0.5、-3)から通る垂直ラインを持っています、3)。その行が私の立方体を通過するかどうかはどうすればわかりますか?

+0

https://www.scratchapixel.com/lessons/3d-basic-rendering/minimal-ray-tracer-rendering-simple-shapes/ray-box-intersection – user4421975

答えて

0

これは、あなたが探しているアルゴリズムの種類かもしれません。

最初に、立方体の面がサブセットである面を表す方程式と、その線を表す方程式のペアを計算します。

ここで、線の方程式の対と与えられた面の方程式からなるトリプルを作成し、このシステムを解くことによって、各平面と線の交点を計算します。

ソリューションのいずれかが指定された線分内にあり、キューブのエッジ内にあるかどうかをテストします。

私は、2つの点が与えられた線を定義する2つの方程式の便利な解は見つけられませんでした。ただし、次のURLは、3つの点が与えられたプレーンの式を取得する方法を提供します:https://math.stackexchange.com/questions/1156983/find-the-equation-of-the-plane-knowing-that-it-passes-through-3-points

関連する問題