// new Mtext for the text
MText mText
= new MText
(); mText.SetDatabaseDefaults();
mText.Contents = labelString;
mText.Rotation = rotation;
mText.TextHeight = textHeight;
mText.TextStyleId = Styles.GetTextStyleID(AID_Strings.PipeSizeTextStyle);
// create the MLeader
MLeader label
= new MLeader
(); label.SetDatabaseDefaults();
label.ContentType = ContentType.MTextContent;
label.Layer = layerName;
int ldNum = label.AddLeader();
int idx = label.AddLeaderLine(ldNum);
label.AddFirstVertex(idx,leaderPoint);
#if ACAD_APP // weird kludge fixes for Autodesk
label.AddLastVertex(idx, textPoint);
Vector3d dl
= new Vector3d
((textPoint
.X >= leaderPoint
.X ? 1 : -1),
0,
0); label.SetDogleg(idx, dl);
#endif
label.SetLastVertex(idx, textPoint);
label.MText = mText;
// add the mleader to currspace
BlockTableRecord curSpace =
(BlockTableRecord)tr.GetObject(Active.Database.CurrentSpaceId, OpenMode.ForWrite);
curSpace.AppendEntity(label);
tr.AddNewlyCreatedDBObject(label, true);