Метод 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, на основании которого следует действовать. | required |
string | flName | Имя существующего векторного слоя чертежа. | required |
string | field | Поле числового атрибута объекта. | required |
string | fieldUnits | Единица измерения: "Feet", "USFeet" или "Meters". | дополнительно (по умолчанию используются единицы измерения на вашей карте) |
double | zFactor | Величина, на которую умножается значение field каждого объекта, чтобы определить высоту. Этот параметр замещает параметр fieldUnits. | необязательно (по умолчанию 1.0) |
SelectionSet | selectionSet | Набор выборки AutoCAD используется для ограничения того, какие из объектов будут изменены. Если значение не указано, все объекты векторного слоя будут изменены. | необязательно (по умолчанию объекты ALL векторного слоя) |
Возвращаемые значения
| Тип | Описание |
|---|---|
int? | Число измененных элементов. |
Замечания по условиям возникновения ошибок
Этот метод может выдать исключение или вернуть 0 или null, если параметр является некорректным.
Пример 1
Измените высоту всех объектов векторного слоя Contours на основе поля атрибута объекта Elevation и выведите число измененных объектов.// 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, связанных с этими объектами.