交点を調べる

サーフェスを使用する場合、ベクトルとサーフェスの交点が分かると便利な場合があります。交点を調べるには、サーフェスの IntersectPointWithSurface() メソッドを使用します。たとえば、構造物の上部がサーフェス上のポイントから見えるかどうかや、サーフェス上のあるポイントが別のポイントから見えるかどうかを調べることができます。次の例では、始点 20424.7541、20518.0409、100 で開始し、それぞれ 0.6、0.4、-0.5 の方向に伸びるベクトルが図面内の最初のサーフェスと交差するかどうかをテストし、交差する場合はその位置を出力します。

Dim objSurf As AeccSurface
Dim varStartPt As Variant, varDir As Variant, varIntPt As Variant
Dim darrStart(2) As Double
Dim darrDir(2) As Double
darrStart(0) = 20424.7541
darrStart(1) = 20518.0409
darrStart(2) = 100
darrDir(0) = 0.6
darrDir(1) = 0.4
darrDir(2) = -0.5
varStartPt = darrStart
varDir = darrDir
Set objSurf = g_oAeccDoc.Surfaces(0)
varIntPt = objSurf.IntersectPointWithSurface(varStartPt, varDir)
If UBound(varIntPt) = 2 Then
   Debug.Print varIntPt(0), varIntPt(1), varIntPt(2)
End If