加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

标注样式中怎样设置箭头样式?

(2011-01-13 13:22:23)
标签:

杂谈

分类: C#-AutoCAD
  刚在论坛里看到这个,暂时不用,将来肯定要用的,先整理一下。(论坛帖子位置:http://www.objectarx.net/forum.php?mod=viewthread&tid=1114&extra=page=1&page=1
  设置尺寸线末端显示的箭头块。 要返回默认值(实心闭合箭头显示),请输入单个句点 (.)。“新建标注样式”、“修改标注样式”和“替代当前样式”对话框中用于选择箭头块的项和名称如下所示。还可以输入用户定义的箭头块名称。 注意 注释性块不能用作标注或引线的自定义箭头。
"" 实心闭合
"_DOT"
"_DOTSMALL" 小点
"_DOTBLANK" 空心点
"_ORIGIN" 原点标记
"_ORIGIN2" 原点标记 2
"_OPEN" 打开
"_OPEN90" 直角
"_OPEN30" 30 度角
"_CLOSED" 闭合
"_SMALL" 空心小点
"_NONE"
"_OBLIQUE" 倾斜
"_BOXFILLED" 实心框
"_BOXBLANK"
"_CLOSEDBLANK" 空心闭合
"_DATUMFILLED" 实心基准三角形
"_DATUMBLANK" 基准三角形
"_INTEGRAL" 完整标记
"_ARCHTICK" 建筑标记

下面是一段VB.NET代码:

Public Shared Function GetArrowBlock(ByVal blkArrow As StringAs ObjectId

Dim blkId As ObjectId

Dim oldVariable As String = Application.GetSystemVariable("DIMBLK")

Application.SetSystemVariable("DIMBLK", blkArrow)

Dim db As Database = HostApplicationServices.WorkingDatabase

Using trans As Transaction = db.TransactionManager.StartTransaction()

Dim bt As BlockTable = CType(trans.GetObject(db.BlockTableId, OpenMode.ForRead, False), BlockTable)

Dim btr As BlockTableRecord = CType(trans.GetObject(bt.Item(blkArrow), OpenMode.ForRead), BlockTableRecord)

blkId = btr.ObjectId

trans.Commit()

End Using

If oldVariable = "" Then

Application.SetSystemVariable("DIMBLK"".")

Else

Application.SetSystemVariable("DIMBLK", oldVariable)

End If

Return blkId

End Function

使用中一些问题:
1.新建一个标注样式,但使用的确是它的样式替代,如何删除样式替代
  使用Database.SetDimstyleData(dstr);
---------------------------------------
2.其他一些关于标注方面的变量及变量所对应的部分见:http://hi.baidu.com/kakanimo/blog/item/f82177eda1cf7fdb2f2e2107.html

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有