横断勾配摺り付け

線形の特定の測点に適用できるもう 1 つの設定は、横断勾配摺り付けです。これは、線形に基づいてコリドーの道路横断コンポーネントの角度を調整するために使用します。道路の右側と左側の両方について、内側および外側路肩と道路サーフェスを調整できます。線形のすべての横断勾配摺り付け情報のコレクションは、AeccAlignment.SuperelevationData プロパティに格納されます。 ほとんどの AutoCAD Civil 3D コレクションとは異なり、Add メソッドは新しい既定の図形を返さず、代わりに新しいオブジェクトのその参照を 2 番目のパラメータを通して渡します。個々の横断勾配摺り付けデータ要素(AeccSuperelevationDataElement 型)には、AeccAlignment.SuperelevationAtStation メソッドを通してアクセスできます。

次のコードは、新しい横断勾配摺り付けデータ要素を測点 11+00.00 に作成し、その要素のプロパティを設定します。

Dim oSuperElevationData As AeccSuperElevationData
Dim oSuperElevationElem As AeccSuperElevationDataElem
 
' Create an element at station 11+00.0.  A new default
' superelevation data element is assigned to our
' oSuperElevationElem variable.
Set oSuperElevationData = oAlignment.SuperelevationData
oSuperElevationData.Add 1100, oSuperElevationElem
 
oSuperElevationElem.SegmentCrossSlope _
   (aeccSuperLeftOutShoulderCrossSlope) = 0.05
oSuperElevationElem.SegmentCrossSlope _
   (aeccSuperLeftOutLaneCrossSlope) = 0.02
oSuperElevationElem.SegmentCrossSlope _
   (aeccSuperLeftInLaneCrossSlope) = 0.01
oSuperElevationElem.SegmentCrossSlope _
   (aeccSuperLeftInShoulderCrossSlope) = 0.03
oSuperElevationElem.SegmentCrossSlope _
   (aeccSuperRightInShoulderCrossSlope) = 0.03
oSuperElevationElem.SegmentCrossSlope _
   (aeccSuperRightInLaneCrossSlope) = 0.01
oSuperElevationElem.SegmentCrossSlope _
   (aeccSuperRightOutLaneCrossSlope) = 0.02
oSuperElevationElem.SegmentCrossSlope _
   (aeccSuperRightOutShoulderCrossSlope) = 0.05
oSuperElevationElem.TransPointType = aeccSuperManual
oSuperElevationElem.TransPointDesc = "Manual adjustment"
oSuperElevationElem.RawStation = 1100

個々の横断勾配摺り付けデータ要素は、道路横断の摺り付け内のポイントを表します。標準横断勾配摺り付けから完全横断勾配摺り付けまでの単一の摺り付けは、ゾーンです。1 つのゾーンを表すデータ要素のコレクションは、AeccAlignment.SuperelevationZoneAtStation メソッドを呼び出すことによって取得できます。

次のサンプルでは、測点 0+00.00 で始まる横断勾配摺り付けゾーンの一部であるデータ要素を取得し、それらのすべての説明を出力します。

Set oSuperElevationData = _ 
   oAlignment.SuperelevationZoneAtStation(0)
 
For Each oSuperElevationElem In oSuperElevationData
    Debug.Print oSuperElevationElem.TransPointDesc
Next