Skip To Content

Feature.MValueGet (.NET)

Feature.MValueGet メソッドは、指定した頂点の M 値を返します。

宣言

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

パラメーター

タイプ名前説明必須

ドキュメント

doc

操作対象の AutoCAD ドキュメント。

必須

ObjectId

vertexObjectId

M 値をサポートしている AutoCAD ObjectId (Vertex2d または PolylineVertex3d)。

必須

リターン

タイプ説明

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 - 1 つのエンティティーの選択の確認を求めて、その AutoCAD ObjectId を返す .NET メソッドです。

esri_feature_GetMValue - フィーチャの頂点の M 値を返す AutoLISP 関数です。