Share

CogoPointCollection.SetIsLocked(IEnumerable<ObjectId>, Boolean) Method

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



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

Syntax

C#

public ObjectIdCollection SetIsLocked(
	IEnumerable<ObjectId> pointIds,
	bool isLocked
)

VB

Public Function SetIsLocked ( 
	pointIds As IEnumerable(Of ObjectId),
	isLocked As Boolean
) As ObjectIdCollection

C++

public:
ObjectIdCollection^ SetIsLocked(
	IEnumerable<ObjectId>^ pointIds, 
	bool isLocked
)

Parameters

pointIds  IEnumerableObjectId
A sequence of ObjectIds of the points you want to set the IsLocked property for.
isLocked  Boolean
The new isLocked value.

Return Value

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

Example

C#

 1// _civildoc is the active CivilDocument instance.
 2// 
 3CogoPointCollection cogoPoints = _civildoc.CogoPoints;
 4ObjectId pointId = cogoPoints.Add(new Point3d(100, 100, 50), false);
 5
 6// set value for single point
 7if (cogoPoints.SetIsLocked(pointId, true) == ObjectId.Null)
 8    write("SetElevationByOffset failed.\n");
 9
10Point3dCollection points = new Point3dCollection();
11points.Add(new Point3d(50, 50, 25));
12points.Add(new Point3d(200, 200, 15));
13ObjectIdCollection pointIds = cogoPoints.Add(points, false);
14List<ObjectId> pointIdList = GetListFromCollection(pointIds);
15
16// set multiple points to a single value
17ObjectIdCollection success = cogoPoints.SetIsLocked(pointIdList, true);
18write(String.Format("SetIsLocked success for {0} of {1} points\n",
19  success.Count, pointIdList.Count));
20
21List<bool> locked = new List<bool>();
22for (int i = 0; i < pointIdList.Count; i++)
23    locked.Add(i % 2 == 1);
24
25// set multiple points to multiple values
26success = cogoPoints.SetIsLocked(pointIdList, locked);
27write(String.Format("SetIsLocked success for {0} of {1} points\n",
28  success.Count, pointIdList.Count));

VB

 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), False)
 5
 6' set value for single point
 7If cogoPoints.SetIsLocked(pointId, True) = ObjectId.Null Then
 8    write("SetElevationByOffset failed." & vbLf)
 9End If
10
11Dim points As New Point3dCollection()
12points.Add(New Point3d(50, 50, 25))
13points.Add(New Point3d(200, 200, 15))
14Dim pointIds As ObjectIdCollection = cogoPoints.Add(points, False)
15Dim pointIdList As List(Of ObjectId) = GetListFromCollection(pointIds)
16
17' set multiple points to a single value
18Dim success As ObjectIdCollection = cogoPoints.SetIsLocked(pointIdList, True)
19write([String].Format("SetIsLocked success for {0} of {1} points", success.Count, pointIdList.Count))
20
21Dim locked As New List(Of Boolean)()
22For i As Integer = 0 To pointIdList.Count - 1
23    locked.Add(i Mod 2 = 1)
24Next
25
26' set multiple points to multiple values
27success = cogoPoints.SetIsLocked(pointIdList, locked)
28write([String].Format("SetIsLocked success for {0} of {1} points", success.Count, pointIdList.Count))

See Also

Reference

Was this information helpful?