乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 130|回复: 9

尺寸界线修剪的问题?

[复制链接]

55

主题

282

帖子

5

银币

中流砥柱

Rank: 25

铜币
502
发表于 2005-4-18 22:34:00 | 显示全部楼层 |阅读模式
我想用VBA编一个修剪对齐标注尺寸界线的程序,其实是想模仿天正建筑的修剪尺寸界线的方法,我一开始是想通过修改标注原点来实现的,但发现尺寸线也跟着有一小段位移,按照常规想法,尺寸线应该不动才对。而用天正建筑的修剪尺寸界线里就没有这个现象!但我想原理是差不多的,真不知道为什么啊!希望有人能帮我写一个,或给点提示也好!这困惑了我好久啊!另外,我用其他方法也可以实现,但稍微复杂一点,要通过扩展数据才可以实现,但个别情况下不尽人意。这个问题的关键是:实现这个效果到底是不是修改对齐标注的原点就可以,怎样确保尺寸线不要随着对齐标注原点的变化而移动。但我想除了修改对齐标注的原点外,好像没什么办法了吧,不知道我想歪了没有,急需高手指点!谢谢!
回复

使用道具 举报

11

主题

51

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
95
发表于 2005-4-19 10:25:00 | 显示全部楼层
天正建筑没有用过,所以不知道你到底是什么意思。
其实,你可以放两张图片在这里,大家就清楚你的目的了。
回复

使用道具 举报

55

主题

282

帖子

5

银币

中流砥柱

Rank: 25

铜币
502
发表于 2005-4-19 22:23:00 | 显示全部楼层
只要是画过图的就知道什么是修剪对齐标注尺寸界线,希望各位老大帮帮忙啊,我真的好困惑啊!
回复

使用道具 举报

55

主题

282

帖子

5

银币

中流砥柱

Rank: 25

铜币
502
发表于 2005-4-20 22:10:00 | 显示全部楼层
我真的好困惑,我见过很多人用lisp编过,但我不会lisp,所以想请有经验的人给个提醒也好,到底怎样修剪[U]对齐标注[/U]啊?
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2005-4-21 07:07:00 | 显示全部楼层
对齐标注的定义以前已经说过。
要修剪就必须两条尺寸界线一起修剪,而且修剪的长度必须相同,否则它就会动。
回复

使用道具 举报

14

主题

623

帖子

8

银币

中流砥柱

Rank: 25

铜币
679
发表于 2005-4-21 10:27:00 | 显示全部楼层
明总,dimaligned的两条尺寸界线,修剪长度肯定是相同,要不然两个extlinepoint之间的长度不是变了,但就算是修剪相同长度,它还是会变,而且尺寸越小,修剪越长,变的位置越明显。
回复

使用道具 举报

55

主题

282

帖子

5

银币

中流砥柱

Rank: 25

铜币
502
发表于 2005-4-21 10:58:00 | 显示全部楼层
楼上的说得对,这正是困惑我很久的问题,明总,我见过其他人编的lisp程序,我虽然不会lisp,但我看他们好像用到旋转标注,但我要修剪的是对齐标注,跟旋转标注好像没关系的啊?希望你能指教一下,万分感谢!
回复

使用道具 举报

55

主题

282

帖子

5

银币

中流砥柱

Rank: 25

铜币
502
发表于 2005-4-21 19:50:00 | 显示全部楼层
(princ "\ndmtr2=====dim trim 剪齐dim边界线---v2 终结版----------lxx.2002\n")
;;;
(defun c:dmtr2 ( / pt1 pt2 ss i ent entl p10 p13 p14 ptt np14 np13)
(princ "\ndmtr2=====dim trim 剪齐dim边界线--v2 终结版-----------lxx.2001")
(command "_.undo" "be" ^c )
;;;
(defun *error* (msg) (print msg)(command         "_.undo" "e" ^c)(setq *error* nil))
;;;
(setq pt1 (getpoint "\n定义修剪界线 (只处理相交的dim),起点:")
                                         pt2 (getpoint pt1 "\n终点:")
                                         ss (ssget "f" (list pt1 pt2) '((0 . "DIMENSION")) )
                                         pt1 (trans pt1 1 0)
                                         pt2 (trans pt2 1 0)
                                         i 0
)
(repeat (sslength ss)
        (setq ent (ssname ss i)
                                         entl (entget ent)
                                         p10 (cdr (assoc 10 entl))
                                         p13 (cdr (assoc 13 entl))
                                         p14 (cdr (assoc 14 entl))
                         ;;ptt (cdr (assoc 11 entl));;文字定位
                                         i (1+ i)
                                         pt1 (polar pt1 (angle pt1 pt2) (/ (distance pt1 pt2) 2) ) ;;变为pt1 pt2的中点
                                         pt2 (polar pt1 (+ (/ PI 2) (angle p10 p14)) 100)
                                         np14 (inters pt1 pt2 p14 p10 nil)
        )
        (if (not(member '(100 . "AcDbRotatedDimension") entl)) ;;如果不是linear类型
                                 (setq np13 (polar np14 (angle p14 p13) (distance p14 p13)))
                                 (setq np13 (inters pt1 pt2 p13 (polar p13 (angle p14 p10) 100) nil))         ;;else;;align类型
        )
        (setq entl (subst (cons 13 np13) (assoc 13 entl) entl)
                                                 entl (subst (cons 14 np14) (assoc 14 entl) entl)
        )
         (entmod entl)
);end repeat
(command "_.undo" "e" ^c)
(setq *error* nil)
(princ)
)
以上是我拷别人的,什么意思啊?思路是怎样的呢?用vba怎样实现呢?谢了!
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2005-4-21 21:30:00 | 显示全部楼层
你还是把你的程序和图形传上来调试。
回复

使用道具 举报

55

主题

282

帖子

5

银币

中流砥柱

Rank: 25

铜币
502
发表于 2005-4-21 22:13:00 | 显示全部楼层
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:juisl4hpfe3.dwg 
下载次数:0  文件大小:43.14 KB  售价:2银币 [记录]
下载权限: 不限 以上或 Vip会员   [开通Vip]   [签到领银币]  [免费赚银币]


请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:fl125igdtrs.lsp 
下载次数:0  文件大小:1.99 KB  售价:2银币 [记录]
下载权限: 不限 以上或 Vip会员   [开通Vip]   [签到领银币]  [免费赚银币]

各位试试这个修剪对齐标注的程序吧,这用vba怎样实现呢?帮我翻译成vba行吗?谢谢各位老大啦!我想问的就是:实现这个效果到底是不是修改对齐标注的原点就可以,怎样确保尺寸线不要随着对齐标注原点的变化而移动。但我想除了修改对齐标注的原点外,好像没什么办法了吧,不知道我想歪了没有?
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:yeu2al4p0o3.lsp 
下载次数:0  文件大小:1.99 KB  售价:2银币 [记录]
下载权限: 不限 以上或 Vip会员   [开通Vip]   [签到领银币]  [免费赚银币]



尺寸界线修剪的问题?
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:4yqcrq4ajll.dwg 
下载次数:0  文件大小:43.14 KB  售价:2银币 [记录]
下载权限: 不限 以上或 Vip会员   [开通Vip]   [签到领银币]  [免费赚银币]



尺寸界线修剪的问题?
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-2 06:58 , Processed in 0.570520 second(s), 80 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表