Share

SurfaceDefinitionContours.AddContours(ObjectIdCollection, Double, Double, Double, Double) Method

Adds contours to a surface from entities in an ObjectIdCollection.



Namespace: Autodesk.Civil.DatabaseServices
Assembly: AeccDbMgd (in AeccDbMgd.dll) Version: 13.8.0.280

Syntax

C#

public SurfaceOperationAddContour AddContours(
	ObjectIdCollection boundaryEntities,
	double midOrdinateDistance,
	double maximumDistance,
	double weedingDistance,
	double weedingAngle
)

VB

Public Function AddContours ( 
	boundaryEntities As ObjectIdCollection,
	midOrdinateDistance As Double,
	maximumDistance As Double,
	weedingDistance As Double,
	weedingAngle As Double
) As SurfaceOperationAddContour

C++

public:
SurfaceOperationAddContour^ AddContours(
	ObjectIdCollection^ boundaryEntities, 
	double midOrdinateDistance, 
	double maximumDistance, 
	double weedingDistance, 
	double weedingAngle
)

Parameters

boundaryEntities  ObjectIdCollection
A collection of ObjectIds used to create contours.
midOrdinateDistance  Double
When the contour is defined from a polyline with curves, the midOrdinateDistance value is used to tessellate the arcs in the polyline.
maximumDistance  Double
Specifies the maximum distance between vertices. If the distance between vertices on a contour is greater than the maximumDistance, then points are added along the contour at equal intervals that are less than or equal to the maximumDistance.
weedingDistance  Double
The distance value for the weeding factor.
weedingAngle  Double
The angle value for the weeding factor.

Return Value

SurfaceOperationAddContour

Exceptions

ExceptionCondition
ArgumentException Thrown when:
  1. There are invalid ObjectIds in contourEntities.
  2. midOrdinateDistance <= 0.0, maximumDistance < 0.0, weedingDistance < 0.0 or weedingDistance >= maximumDistance

Remarks

The weeding factors ignore both vertices that are closer together than the distance factor and vertices that deflect less than the angle factor.

Example

 1/// <summary>
 2/// Illustrates creating contours
 3/// </summary>
 4[CommandMethod("CreateContour")]
 5public void CreateContour()
 6{
 7    using (Transaction ts = Application.DocumentManager.MdiActiveDocument.Database.TransactionManager.StartTransaction())
 8    {
 9        // Prompt the user to select a TIN surface and a polyline, and create a contour from the polyline
10        ObjectId surfaceId = promptForEntity("Select a TIN surface to add a contour to", typeof(TinSurface));
11        ObjectId polyId = promptForEntity("Select a polyline to create a contour from", typeof(Polyline));
12        TinSurface oSurface = surfaceId.GetObject(OpenMode.ForWrite) as TinSurface;
13        ObjectId[] contours = { polyId };
14
15        oSurface.ContoursDefinition.AddContours(new ObjectIdCollection(contours), 1, 85.5, 55.5, 0);
16
17        // commit the transaction
18        ts.Commit();
19    }
20}

See Also

Reference

Was this information helpful?