Skip To Content

Feature.MValueGet (.NET)

Метод Feature.MValueGet возвращает m-значение указанной вершины.

Декларация

public double? Esri.ArcGISForAutoCAD.Feature.MValueGet(Document doc, ObjectId vertexObjectId)

Параметры

ТипИмяОписаниеОбязательный

Документ

doc

Документ AutoCAD, на основании которого следует действовать.

required

ObjectId

vertexObjectId

ObjectId AutoCAD Vertex2d или PolylineVertex3d, поддерживающий m-значения.

required

Возвращаемые значения

ТипОписание

double?

m-значение вершины. Если m-значение для вершины не было установлено, ее m-значение вернется как 0.

Замечания по условиям возникновения ошибок

Этот метод может выдать исключение или вернуть null, если параметр является некорректным

Пример

Вывести m-значение каждой вершины выбранной полилинии.

// Initialize 
var doc = Application.DocumentManager.MdiActiveDocument;
var polylineObjId = Esri.ArcGISForAutoCAD.FeatureLayer.SelectEntity(doc, "Centerlines");

DBObject obj;
using (var transaction = doc.Database.TransactionManager.StartTransaction())
{
  obj = transaction.GetObject(polylineObjId, OpenMode.ForRead);
  transaction.Commit();
}

Polyline2d polyline = obj as Polyline2d;
foreach (ObjectId vertexObjId in polyline)
{
  // Get the M-Value
  var mValue = Esri.ArcGISForAutoCAD.Feature.MValueGet(doc, vertexObjId);

  // Print the M-Value
  doc.Editor.WriteMessage("\nM-Value: " + mValue);
}

/* Example output 
M-Value: 28.4
M-Value: 32.1
M-Value: 32.6
M-Value: 34.5
*/

См. также

FeatureLayer.SelectEntity—метод .NET, который предлагает выбрать один элемент и возвращает его ObjectId из AutoCAD.

esri_feature_GetMValue—функция AutoLISP, которая возвращает m-значение вершины пространственного объекта.