Sets the MarkerRotation property for multiple CogoPoints with the same value.

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

Syntax

C#
public ObjectIdCollection SetMarkerRotation(
	IEnumerable<ObjectId> pointIds,
	double rotation
)
Visual Basic
Public Function SetMarkerRotation ( _
	pointIds As IEnumerable(Of ObjectId), _
	rotation As Double _
) As ObjectIdCollection
Visual C++
public:
ObjectIdCollection^ SetMarkerRotation(
	IEnumerable<ObjectId>^ pointIds, 
	double rotation
)

Parameters

pointIds
Type: System.Collections.Generic..::..IEnumerable<(Of <(<'ObjectId>)>)>
A sequence of ObjectIds of the points you want to set the MarkerRotation property for.
rotation
Type: System..::..Double
The new MarkerRotation value.

Return Value

An ObjectIdCollection containing the CogoPoints for which the MarkerRotation property has been set successfully.

Examples

CopyC#
 1// _civildoc is the active CivilDocument instance.
 2// 
 3CogoPointCollection cogoPoints = _civildoc.CogoPoints;
 4ObjectId pointId = cogoPoints.Add(new Point3d(100, 100, 50));
 5double rotationAngle = 0.785398163; // 45 degres in rads
 6
 7// set value for single point
 8if (cogoPoints.SetMarkerRotation(pointId, rotationAngle) == ObjectId.Null)
 9    write("SetMarkerRotation failed.\n");
10
11Point3dCollection points = new Point3dCollection();
12points.Add(new Point3d(50, 50, 25));
13points.Add(new Point3d(200, 200, 15));
14ObjectIdCollection pointIds = cogoPoints.Add(points);
15List<ObjectId> pointIdList = GetListFromCollection(pointIds);
16
17// set multiple points to a single value
18ObjectIdCollection success = cogoPoints.SetMarkerRotation(pointIdList, rotationAngle);
19write(String.Format("SetMarkerRotation success for {0} of {1} points\n",
20  success.Count, pointIdList.Count));
21
22List<double> angles = new List<double>();
23for (int i = 0; i < pointIdList.Count; i++)
24    angles.Add(6.28318531 / pointIdList.Count * i);
25
26// set multiple points to multiple values
27success = cogoPoints.SetMarkerRotation(pointIdList, angles);
28write(String.Format("SetMarkerRotation success for {0} of {1} points\n",
29    success.Count, pointIdList.Count));
CopyVB.NET
 1' _civildoc is the active CivilDocument instance.
 2'
 3Dim cogoPoints As CogoPointCollection = _civildoc.CogoPoints
 4Dim pointId As ObjectId = cogoPoints.Add(New Point3d(100, 100, 50))
 5Dim rotationAngle As Double = 0.785398163
 6' 45 degres in rads
 7' set value for single point
 8If cogoPoints.SetMarkerRotation(pointId, rotationAngle) = ObjectId.Null Then
 9    write("SetMarkerRotation failed." & vbLf)
10End If
11
12Dim points As New Point3dCollection()
13points.Add(New Point3d(50, 50, 25))
14points.Add(New Point3d(200, 200, 15))
15Dim pointIds As ObjectIdCollection = cogoPoints.Add(points)
16Dim pointIdList As List(Of ObjectId) = GetListFromCollection(pointIds)
17
18' set multiple points to a single value
19Dim success As ObjectIdCollection = cogoPoints.SetMarkerRotation(pointIdList, rotationAngle)
20write([String].Format("SetMarkerRotation success for {0} of {1} points", success.Count, pointIdList.Count))
21
22Dim angles As New List(Of Double)()
23For i As Integer = 0 To pointIdList.Count - 1
24    angles.Add(6.28318531 / pointIdList.Count * i)
25Next
26
27' set multiple points to multiple values
28success = cogoPoints.SetMarkerRotation(pointIdList, angles)
29write([String].Format("SetMarkerRotation success for {0} of {1} points", success.Count, pointIdList.Count))

See Also