AeccProfiles.Add メソッドは、標高情報を含まない新しい縦断を作成します。 次に、図形を使用して縦断の垂直シェイプを指定できます。図形は、ジオメトリ要素(接線または対称放物線)です。縦断を構成するすべての図形のコレクションは、AeccProfile.Entities コレクションに含まれています。 AeccProfile.Entities には、新しい図形を作成するためのすべてのメソッドも含まれています。
次の例では、線形 oAlignment に沿って新しい縦断を作成し、3 種類の図形を追加して縦断のシェイプを定義します。2 つの直線図形が各端に追加し、1 つの対称放物線を中央に追加し、それらを結合して谷の凹型を表現します。
Dim oProfiles As AeccProfiles Set oProfiles = oAlignment.Profiles Dim oProfile As AeccProfile ' NOTE: The second parameter (aeccFinishedGround) indicates ' that the shape of the profile is not drawn from the existing ' surface. We will define the profile ourselves. Set oProfile = oProfiles.Add _ ("Profile03", _ aeccFinishedGround, _ oProfileStyle.Name) ' Now add the entities that define the profile. ' NOTE: Profile entity points are not x,y,z point, but ' station-elevation locations. Dim dLoc1(0 To 1) As Double Dim dLoc2(0 To 1) As Double Dim oProfileTangent1 As aeccProfileTangent dLoc1(0) = oAlignment.StartingStation: dLoc1(1) = -40# dLoc2(0) = 758.2: dLoc2(1) = -70# Set oProfileTangent1 = oProfile.Entities.AddFixedTangent _ (dLoc1, dLoc2) Dim oProfileTangent2 As aeccProfileTangent dLoc1(0) = 1508.2: dLoc1(1) = -60# dLoc2(0) = oAlignment.EndingStation: dLoc2(1) = -4# Set oProfileTangent2 = oProfile.Entities.AddFixedTangent _ (dLoc1, dLoc2) Dim dCrestLen As Double dCrestLen = 900.1 Call oProfile.Entities.AddFreeSymmetricParabolaByLength _ (oProfileTangent1.Id, _ oProfileTangent2.Id, _ aeccSag, _ dCrestLen, _ True)