/// <summary> /// 在DA_ELEVATION添加表示标高的属性 /// </summary> private void AddElevationAtt() { Database db = HostApplicationServices.WorkingDatabase; ObjectId blockId = CreateElevationBlock(); using (Transaction trans = db.TransactionManager.StartTransaction()) { AttributeDefinition attElevation = new AttributeDefinition( Point3d.Origin, "", "ELEVATION", "输入标高值", ObjectId.Null); attElevation.Height = 3; //字高为3 attElevation.HorizontalMode = TextHorizontalMode.TextLeft; //水平方向左对齐 attElevation.VerticalMode = TextVerticalMode.TextBottom; //竖直方向下对齐 attElevation.AlignmentPoint = new Point3d(2, 1.8, 0); //对齐位置 attElevation.Visible = true; //文字可见 attElevation.WidthFactor = 0.75; //文字水平比例 blockId.AddAttsToBlock(attElevation); //将属性定义添加至块定义中 trans.Commit(); } }
/// <summary> /// 为块表记录添加属性 /// </summary> /// <param name="blockId">块表记录的Id</param> /// <param name="atts">要加入的块属性列表</param> public static void AddAttsToBlock(this ObjectId blockId, params AttributeDefinition[] atts) { blockId.AddAttsToBlock(atts.ToList()); }