境界は、その内部にサーフェスの三角形の表示/非表示が定義された閉じたポリラインです。境界は、外部のすべての境界を隠すか、内部のすべての境界を隠すか、または隠されてしまう内部の三角形を表示できます。また、境界は、領域や三角形の数などのサーフェス統計を変更できます。境界は、非地形作成(境界を横切る三角形を完全に隠す)か、地形作成(境界を横切るポイントで三角形の辺をクリップする)のいずれかです。通常、TIN サーフェスは地形作成境界を使用し、グリッド サーフェスは非地形作成サーフェスだけを使用できます。
地形作成サーフェス
サーフェスに適用されるすべての境界は、AeccSurface.Boundaries コレクションに格納されます。 境界自体は、閉じたポリラインやポリゴンなどの AutoCAD 図形によって定義されます。サーフェスの三角形をクリップするときに図形の高さは影響しないので、2D 図形を使用できます。この図形には曲線が存在しても構いませんが、境界は常に線分で構成されます。これらの線分をモザイク分割する方法は、中央縦距によって定義されます。中央縦距は、曲線とその近似線分の間の最大距離です。
中央縦距
次の例では、境界の外部にある正方形をサーフェスに追加します。
' First we need an AutoCAD entity (in this case a polyline) ' which describes the boundary location. Dim oPoly As AcadPolyline Dim dPoints(0 To 11) As Double dPoints(0) = 1000: dPoints(1) = 1000: dPoints(2) = 0 dPoints(3) = 1000: dPoints(4) = 4000: dPoints(5) = 0 dPoints(6) = 4000: dPoints(7) = 4000: dPoints(8) = 0 dPoints(9) = 4000: dPoints(10) = 1000: dPoints(11) = 0 Set oPoly = oAeccDocument.Database.ModelSpace _ .AddPolyline(dPoints) oPoly.Closed = True ' The name of the boundary object. Dim sName as String sName = "Sample Boundary" ' The third parameter describes what the boundary does ' to triangles inside it. The fourth parameter is True ' if you want non-destructive boundary or false otherwise. ' The final parameter is the mid-ordinate distance. Dim oNewBoundary As AeccSurfaceBoundary Set oNewBoundary = oSurface.Boundaries.Add(oPoly, sName, _ aeccBoundaryOuter, True, 10.5)
新しい三角形を形成する原因となる操作(ポイントまたはブレークラインの TIN サーフェスへの追加など)によって、三角形が既存の境界線分を横切る場合があります。境界の追加は、常にポイントをサーフェスに追加する操作の後に行う必要があります。