擁壁ブレークラインは、ブレークラインの片側のサーフェスの高が他方の高さと異なるときに使用します。この方法では、擁護壁の上部と下部に 1 本ずつ、合わせて 2 本のブレークラインを作成します。しかし、TIN サーフェスには完全に垂直な線分は存在できません。最初のブレークラインは BreaklineEntities パラメータによって指定されたパスに沿って配置され、2 番目のブレークラインは一方の側までわずかにオフセットされ、相対標高だけ上昇または下降して配置されます。擁壁ブレークライン作成メソッドのパラメータの中に、擁壁標高の配列と、高さ調整ブレークラインを配置する側を指定する配列があります。この値が True の場合、各図形終点の擁壁が右にオフセットされ、この値が False の場合、左にオフセットされます。ここで左と右は、ブレークラインに沿って始点から終点へと歩くときの方向です。
' This is an array of arrays of elevations, one array of ' elevations per entity. Dim vElevations(0) As Variant ' These are the elevations of the wall at each endpoint in ' the polyline entity. Dim dElevations(3) As Double ' This is an array of ooleans, one for each entity. Dim bOffsets(0) As Boolean dElevations(0) = 30.5: dElevations(1) = 93.3 dElevations(2) = 93.3: dElevations(3) = 46.2 vElevations(0) = dElevations ' Raise the surface at the right side of the breakline. bOffsets(0) = True: bOffsets(1) = True bOffsets(2) = True: bOffsets(3) = True Set oBreakline = oTinSurf.Breaklines.AddWallBreakline _ (oEntityArray, _ "Sample Wall Break", _ 1#, _ vElevations, _ bOffsets)