Sets ScaleXY for multiple CogoPoints with different values.
Namespace: Autodesk.Civil.DatabaseServicesAssembly: AeccDbMgd (in AeccDbMgd.dll) Version: 13.4.2516.0
Syntax
C# |
---|
public ObjectIdCollection SetScaleXY( IEnumerable<ObjectId> pointIds, IEnumerable<double> values ) |
Visual Basic |
---|
Public Function SetScaleXY ( _ pointIds As IEnumerable(Of ObjectId), _ values As IEnumerable(Of Double) _ ) As ObjectIdCollection |
Visual C++ |
---|
public: ObjectIdCollection^ SetScaleXY( IEnumerable<ObjectId>^ pointIds, IEnumerable<double>^ values ) |
Parameters
- pointIds
- Type: System.Collections.Generic..::..IEnumerable<(Of <(<'ObjectId>)>)>
A sequence of ObjectIds of the points you want to set the ScaleXY property for.
- values
- Type: System.Collections.Generic..::..IEnumerable<(Of <(<'Double>)>)>
A sequence of doubles to set the corresponding point's ScaleXY property to.
Return Value
An ObjectIdCollection containing the CogoPoints for which the ScaleXY property has been set successfully.
Remarks
If there are fewer doubles than points, only the first n points in the list will have their ScaleXY property
set, where n is the number of items in the values list.
Examples

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

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 xyScaleFactor As Double = 1.5 6 7' set value for single point 8If cogoPoints.SetScaleXY(pointId, xyScaleFactor) = ObjectId.Null Then 9 write("SetScaleXY failed." & vbLf) 10End If 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) 15Dim pointIdList As List(Of ObjectId) = GetListFromCollection(pointIds) 16 17' set multiple points to a single value 18Dim success As ObjectIdCollection = cogoPoints.SetScaleXY(pointIdList, xyScaleFactor) 19write([String].Format("SetScaleXY success for {0} of {1} points", success.Count, pointIdList.Count)) 20 21Dim scales As New List(Of Double)() 22For i As Integer = 0 To pointIdList.Count - 1 23 scales.Add(1 + i * 0.1) 24Next 25 26' set multiple points to multiple values 27success = cogoPoints.SetScaleXY(pointIdList, scales) 28write([String].Format("SetScaleXY success for {0} of {1} points", success.Count, pointIdList.Count))