Skip To Content

FeatureLayer.ElevateToField (.NET)

FeatureLayer.ElevateToField 方法用于修改指定要素图层的实体的 z 坐标,以及链接到这些要素的任何 TEXT 实体。

  • 如果未包含任何选择集,将修改要素图层的所有要素。
  • 此函数支持来自点、折线、面和注记要素图层的实体。

声明

public int? Esri.ArcGISForAutoCAD.FeatureLayer.ElevateToField(Document doc, string flName, string field, string fieldUnits = null, double? zFactor = null, SelectionSet selectionSet = null)

参数

类型名称描述必填

文档

doc

要进行操作的 AutoCAD 文档。

必填

string

flName

工程图中现有的要素图层名称。

必填

string

field

数值要素属性字段。

必填

string

fieldUnits

测量单位:"Feet""USFeet""Meters"

可选(默认设置为地图单位)

双精度

zFactor

乘以每个要素的 field 值以确定高程的数值。 此参数将覆盖 fieldUnits 参数。

可选(默认值为 1.0)

SelectionSet

selectionSet

AutoCAD 选择集,用于限制将修改的要素。 如果未提供任何值,则将修改要素图层的所有要素。

可选(默认为要素图层的 ALL 要素)

返回

类型描述

int?

已修改实体的计数。

错误条件备注

如果参数无效,则此方法可能会抛出异常或者返回 0null

示例 1

根据 Elevation 要素属性字段修改 Contours 要素图层所有要素的高程,并打印已修改要素的计数。

// Initialize
var doc = Application.DocumentManager.MdiActiveDocument;

// Modify the z-values of the features
var count = Esri.ArcGISForAutoCAD.FeatureLayer.ElevateToField(doc, "Contours", "Elevation");

// Print the number of features with modified z-values
doc.Editor.WriteMessage ("Number of modified features: " + count);

/* Example output
Number of modified features: 49
*/

示例 2

修改 Spot_Elevation 要素图层中所选要素集的高程,其中 Elevation 字段中存储的高程需要乘以比例因子以考虑从米到英尺的转换,并打印已修改要素的计数。

// Initialize
var doc = Application.DocumentManager.MdiActiveDocument;
var selectionSet = doc.Editor.GetSelection().Value;

// Modify the z-values of the selected features
var count = Esri.ArcGISForAutoCAD.FeatureLayer.ElevateToField(doc, "Spot_Elevation", "Elevation", null, 3.28084, selectionSet);

// Print the number of features with modified z-values
doc.Editor.WriteMessage("Number of modified features: " + count);

/* Example output
Number of modified features: 3
*/

另请参阅

esri_featurelayer_elevatetofield - 此 AutoLISP 函数用于修改指定要素图层的实体的 z 坐标,以及链接到这些要素的任何 TEXT 实体。