.NET Changes in Autodesk Civil 3D
This section covers changes to the Autodesk Civil 3D .NET API for Autodesk Civil 3D.
New in 2023.2
- Added CorridorSurfaceBoundary.GetExtentsBoundaries(). This new API is used to get all boundaries points if the corridor surface's shrinkwrap mask contains multiple boundaries.
For the .COM API, updated AeccXCorridorSurfaceBaseMask::GetPolygonPoints() to get all points of multiple boundaries.
- Added BaselineRegion.ExportSolids.
- Class ExportCorridorSolidsParams is used to specify the parameters for exporting solids.
- Corridor.ExportSolids was added to export solids for the whole corridor.
- Baseline.ExportSolids was added to export solids for the whole baseline.
- BaselineRegion.ExportSolids was added to export solids for the region. For region, you can specify the station range.
-
A new .NET API (Cpp Wrapper) was added to MgAeccCorridorState. It can be accessed by calling CorridorStateInstance.CurrentSubassemblyVersion = newVersion.
It can be used to set the version of the current subassembly being applied.
- Added properties for the Pipe class of Gravity Network and Pressure Network, and enabled the ability to change the curve geometry.
- PipeCurveGeometry Pipe.CurveGeometry (get/set)
- PipeCurveGeometry PressurePipe.CurveGeometry (get/set)
- Added a new class PipeCurveGeometry which represents the curved pipe's geometry.
Added two new methods to create curved Pipe and Pressure Pipe:
- PipeNetwork.AddCurvePipe (PipeCurveGeometry)
- PressurePipeNetwork.AddCurvePipe (PipeCurveGeometry)
- Added API support to get the inflow catchment from the structure.
API added:
- Structure.GetConnectedCatchmentIds();
- Structure.CatchmentsArea (get/set)
- Structure.CatchmentsTimeOfConcentration (get/set)
- Structure.CatchmentsRunoffCoefficient (get/set)
API modified:
- Catchment.ReferencePipeNetworkStructureId now supports setting Object.Null.
- Added API support to Create/Delete/Modify/Read Data for Catchment Flow Path and Catchment Flow Segments.
Added properties and methods for Catchment Flow Path:
- FlowPath.GetPath()
- FlowPath.SetPath()
- FlowPath.SetPathFromSurface()
- FlowPath.Clear()
- FlowPath.AddSegment()
- FlowPath.RemoveSegment()
Added properties and methods for Catchment Flow Path Segment:
- FlowSegment.Index (get)
- FlowSegment.FlowType (get)
- FlowSegment.SetFlowType()
- FlowSegment.Length (get)
- FlowSegment.Slope (get/set)
- FlowSegment.Rainfall2yr24hr (get/set)
- FlowSegment.SurfaceType (get/set)
- FlowSegment.ManningRoughness (get/set)
- FlowSegment.CrossSectionArea (get/set)
- FlowSegment.WettedPerimeter (get/set)
- FlowSegment.Velocity (get)
- FlowSegment.TravelTime (get)
- FlowSegment.IsTravelTimeCalculated (get)
The following properties and methods are deprecated:
- Catchment.GetFlowPath()
- Catchment.SetFlowPath()
- Added CatchmentGroupCollection to manage CatchmentGroup including:
- CatchmentGroupCollection.Count
- CatchmentGroupCollection[index]
- CatchmentGroupCollection[name]
- CatchmentGroupCollection.Remove
- CatchmentGroupCollection.ForceRemove
Added methods to get CatchmentGroupCollection in the current database/document:
- Autodesk.Civil.ApplicationServices.CivilDocument.GetCatchmentGroups()
- Autodesk.AutoCAD.DatabaseServices.Database.GetCivilCatchmentGroups()
- Marked Catchment.PreferencePipeNetworkId as read-only, deprecating the property set.
- Made Catchment.ReferencSurfaceId accept Object.Null as a reference surface because a reference surface is not required.
- Added 6 flow segment properties for TR-55 TOC method:
- Catchment.SheetFlowSegments
- Catchment.SheetFlowTravelTime
- Catchment.ShallowFlowSegments
- Catchment.ShallowFlowTravelTime
- Catchment.ChannelFlowSegments
- Catchment.ChannelFlowTravelTime
- Added CatchmentGroup.MoveCatchment.
-
Added API to connect and disconnect pressure pipes to or from structures.
Pressure Pipe:
- ConnectToStructure()
- DisconnectFromStructure()
- GetConnectedStructureIdAt()
Structure:
- GetConnectedPressurePipeIds()
- A new .Net API was added for Subassembly as a property which can be accessed by
Subassembly.Version. It will return the version information of a particular subassembly object as a String. For an older subassembly without version information, it will return an empty string "".
New in 2023
Corridor Solids
- Added APIs for to allow users to track back to the applied subassemblies from the corridor solid's GUID:
- OffsetBaselineCollection[System::Guid offsetGUID]: get OffsetBaseline from OffsetBaselineCollection by its GUID
- OffsetBaseline.OffsetGUID: get OffsetBaseline's GUID
- BaselineRegionCollection[System::Guid regionGUID]: get BaselineRegion from BaselineRegionCollection by its GUID
- BaselineRegion.RegionGUID: get BaselineRegion's GUID
COM Changes
New in 2023.2
Updated AeccXCorridorSurfaceBaseMask::GetPolygonPoints() to get all points of multiple boundaries.
New in 2023
If you are using the COM API, you need to update the object version to 13.5 (from 13.4 used in Autodesk Civil 3D 2022). The objects and interfaces exposed have remained the same, but you should reference the new libraries, which are installed by default to: C:\Program Files\Common Files\Autodesk Shared\Civil Engineering 135.