找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 4184|回复: 43

[公告] 求高手在这个程序上加在标注

[复制链接]
发表于 2013-9-13 18:50:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我现在有个能画侧示图的LSP,但画出来的侧示图没有高度标注,求高手帮忙在此程序上加在高度标注代码,先谢过了。
样品图片.jpg

CST侧视图.LSP

3.85 KB, 下载次数: 23, 下载积分: D豆 -1 , 活跃度 1

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
 楼主| 发表于 2013-9-13 20:20:57 | 显示全部楼层
不好意思!刚才图片看不清,重新传一下
样品图片.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-9-14 09:51:59 | 显示全部楼层
还是 BoundingBox

点评

我是新手!刚接触这方面的,暂时还看不懂!也不知道怎么加!可是现在经常会用到,请求会加的帮忙加上一下好吗?  详情 回复 发表于 2013-9-14 11:01

评分

参与人数 1D豆 +1 收起 理由
炫翔 + 1 技术引导讨论和指点奖!

查看全部评分

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-14 11:01:39 | 显示全部楼层

  我是新手!刚接触这方面的,暂时还看不懂!也不知道怎么加!可是现在经常会用到,请求会加的帮忙加上一下好吗?

点评

看了程序,里面很多自定义函数,没法帮你调试,修改别人的程序还不如重新写一个,你详细说下你的要求。  详情 回复 发表于 2013-9-14 12:31
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-9-14 12:31:43 | 显示全部楼层
xiongqunan 发表于 2013-9-14 11:01
我是新手!刚接触这方面的,暂时还看不懂!也不知道怎么加!可是现在经常会用到,请求会加的帮忙加上一 ...

看了程序,里面很多自定义函数,没法帮你调试,修改别人的程序还不如重新写一个,你详细说下你的要求。

点评

那你能帮我写一个吗? 要求不是根据一个封闭的线框自动根据输入一个高度生存侧视图或府视图,并把主视图的外形尺寸和侧视图的高度尺寸标出来。  详情 回复 发表于 2013-9-14 22:04
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1742个

财富等级: 堆金积玉

发表于 2013-9-14 14:06:39 | 显示全部楼层
如果只是这个简单 三视图 自己写个即可
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-14 22:04:50 | 显示全部楼层
newer 发表于 2013-9-14 12:31
看了程序,里面很多自定义函数,没法帮你调试,修改别人的程序还不如重新写一个,你详细说下你的要求。

那你能帮我写一个吗?
要求不是根据一个封闭的线框自动根据输入一个高度生存侧视图或府视图,并把主视图的外形尺寸和侧视图的高度尺寸标出来。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-9-14 23:22:51 来自手机 | 显示全部楼层
看了看程序,就是画个矩形,侧视图没有这么简单吧

点评

我们这里出的侧示图只需要标明高度就可以了。当然主视图里面还是有很多内容的。里面的内容侧示图不需要表达出来。  详情 回复 发表于 2013-9-15 16:35
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-15 16:35:08 | 显示全部楼层
st788796 发表于 2013-9-14 23:22
看了看程序,就是画个矩形,侧视图没有这么简单吧

我们这里出的侧示图只需要标明高度就可以了。当然主视图里面还是有很多内容的。里面的内容侧示图不需要表达出来。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 9804个

财富等级: 富甲天下

发表于 2013-9-16 08:19:51 | 显示全部楼层
本帖最后由 zxq0220 于 2013-9-18 08:10 编辑
  1. ;绘制零件侧视图
  2. (defun c:cs1 (/ pts pt1 pt2 pt1x pt1y pt2x pt2y hh pp1 pp2 enlay lay)
  3. (initget 1)
  4. (setq PT1 (getpoint "\n请点选一点: "))
  5. (initget 1)
  6. (setq PT2 (getpoint pt1 "\n请点选第二点: "))
  7. (command "line" pt1 pt2 "")
  8. (if (not (tblsearch "LAYER" "DIM"))
  9.   (command "-LAYER" "N" "DIM" "C" 2 "DIM" "")
  10. )
  11. (setq ee (entlast))
  12. (if ee (progn
  13.   (setq pts (jx_Getboundingbox  ee)
  14.         pt1   (trans (car pts) 0 1)
  15.         pt1x  (car pt1)
  16.         pt1y  (cadr pt1)
  17.         pt2   (trans (cadr pts) 0 1)
  18.         pt2x  (car pt2)
  19.         pt2y  (cadr pt2)
  20.         enlay (jx_dxf 8  ee))
  21.   (entdel ee)
  22.   (setq ss(ssget pt1))
  23.   (if ss
  24.    (setq enlay (jx_dxf 8(ssname ss 0)))
  25.   (progn
  26.    (command "_RECTANG" pt1 pt2)
  27.     (setq enlay (getvar "CLAYER"))
  28.   ))
  29.   (initget 33)
  30.   (setq pbase  (getpoint (jx_mid_pt pt1 pt2) "\n起始点: ")
  31.         pbasex (car pbase)
  32.         pbasey (cadr pbase))
  33.   (cond
  34.     ((and (> pbasex pt1x) (< pbasex pt2x) (< pbasey pt1y)) ;下
  35.      (setq a  1 tt nil)
  36.     )
  37.     ((and (> pbasex pt1x) (< pbasex pt2x) (> pbasey pt2y)) ;上
  38.      (setq a  2 tt nil)
  39.     )
  40.     ((and (> pbasey pt1y) (< pbasey pt2y) (> pbasex pt2x)) ;右
  41.      (setq a  3 tt nil)
  42.     )
  43.     ((and (> pbasey pt1y) (< pbasey pt2y) (< pbasex pt1x)) ;左
  44.      (setq a  4 tt nil)
  45.     )
  46.   )
  47.   (if
  48.     (not (setq tt (vlax-ldata-get "pdd" "thick")))
  49.      (setq tt (vlax-ldata-put "pdd" "thick" 20))
  50.   )
  51.   (setq hh (getdist pbase (strcat "\n请指定厚度 <" (rtos tt) ">: ")))
  52.   (if (not hh)
  53.     (setq hh tt)
  54.     (vlax-ldata-put "pdd" "thick" hh)
  55.   )
  56.   (cond
  57.     ((= a 1)
  58.      (setq pp1 (list pt1x pbasey)
  59.            pp2 (list pt2x (- pbasey hh)))
  60.     )
  61.     ((= a 2)
  62.      (setq pp1 (list pt1x pbasey)
  63.            pp2 (list pt2x (+ pbasey hh)))
  64.     )
  65.     ((= a 3)
  66.      (setq pp1 (list pbasex pt1y)
  67.            pp2 (list (+ pbasex hh) pt2y))
  68.     )
  69.     ((= a 4)
  70.      (setq pp1 (list pbasex pt1y)
  71.            pp2 (list (- pbasex hh) pt2y))
  72.     )
  73.   )
  74.   (setq os (getvar "osmode"))
  75.   (setvar "cmdecho" 0)
  76.   (setvar "osmode" 0)
  77.   (command "rectangle" pp1 pp2)
  78.   (setq lay(jx_lay_unlock nil))
  79.   (command "_chprop" "L" "" "la" enlay "")
  80.   (command "DIMLINEAR" (list (car pp1) (cadr pp2) 0) pp2 (polar pp2 (/ pi 2) (* hh 0.1)))
  81.   (command "_CHPROP" "L" "" "LA" "DIM" "")
  82.   (jx_lay_unlock lay)
  83.   (setvar "osmode" os)
  84. ))
  85. (princ)
  86. )

点评

高手就是高手!终于可以了,但不有两个问题不知能不能优化一下! 问题点1:标注偏移距离是根据输入的厚度值需偏移的!有时太远了,能否设定为常数? 2:标注端点在图形的另一端!有点影响外观?  详情 回复 发表于 2013-9-17 09:42
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-17 09:42:06 | 显示全部楼层

高手就是高手!终于可以了,但不有两个问题不知能不能优化一下!
问题点1:标注偏移距离是根据输入的厚度值需偏移的!有时太远了,能否设定为常数?
           2:标注端点在图形的另一端!有点影响外观?
           3:尺寸能否指定到一个图层里面?
           4:主视图外形大小尺寸能否一并加上,这样就可以省去标尺寸的时间了。

样品图片.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 9804个

财富等级: 富甲天下

发表于 2013-9-18 08:11:58 | 显示全部楼层
前面改了。再试试。

点评

那可以审核掉了!再发一次好吗?  详情 回复 发表于 2013-9-18 21:09
兄弟怎么没看到东西了呢?  详情 回复 发表于 2013-9-18 08:48
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-18 08:48:53 | 显示全部楼层
zxq0220 发表于 2013-9-18 08:11
前面改了。再试试。

兄弟怎么没看到东西了呢?

点评

修改的贴子说是要审核,看来是被和谐了。  发表于 2013-9-18 19:45
适用 API  详情 回复 发表于 2013-9-18 17:38
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2013-9-18 17:38:14 | 显示全部楼层
本帖最后由 Free-Lancer 于 2013-9-18 22:35 编辑
xiongqunan 发表于 2013-9-18 08:48
兄弟怎么没看到东西了呢?

适用 API
  1. (defun c:tt
  2.        (/ e box brp h lyr maxx maxy minx miny p pi2 ulp vx vy _pi2)
  3.   (defun drawpl    (p1 p2 h / p3 p4 pl)
  4.     (setq p3 (polar p2 _pi2 h)
  5.       p4 (polar p1 _pi2 h)
  6.     )
  7.     (setq pl (xdrx_polyline_make p1 p2 p3 p4 t))
  8.     (xdrx_entity_setlayer pl lyr)
  9.     (xdrx_dimension_makerotate p1 p4 (polar p1 pi 10.) _pi2)
  10.     (xdrx_dimension_makerotate p3 p4 (polar p3 _pi2 10.))
  11.   )
  12.   (setvar "dimzin" 0)
  13.   (if (not **GlobleThick**)
  14.     (setq **GlobleThick** 20.)
  15.   )
  16.   (while
  17.     (and (setq e (xdrx_entsel "\nPick pline: "))
  18.      (progn
  19.        (setq
  20.          H (getdist
  21.          (cadr e)
  22.          (strcat "\nThickness<" (rtos **GlobleThick** 2 2) ">: ")
  23.            )
  24.        )
  25.        (if h
  26.          (setq **GlobleThick** h)
  27.          (setq h **GlobleThick**)
  28.        )
  29.      )
  30.      (setq p (getpoint "\nBase point: "))
  31.      (not (zerop h))
  32.     )
  33.      (setq _pi2    (/ pi 2)
  34.        box    (xdrx_entity_box (car e))
  35.        lyr    (xdrx_getentdxf 8)
  36.        minx    (caar box)
  37.        maxx    (caadr box)
  38.        miny    (cadadr box)
  39.        maxy    (cadr (last box))
  40.        ulp    (list minx maxy)
  41.        brp    (list maxx miny)
  42.        vx    (- maxx minx)
  43.        vy    (- maxy miny)
  44.      )
  45.      (if (not (xdrx_object_getxrecord (car e) "BoxDimed"))
  46.        (progn
  47.      (xdrx_dimension_makerotate
  48.        (last box)
  49.        (caddr box)
  50.        (polar (caddr box) _pi2 10.)
  51.      )
  52.      (xdrx_dimension_makerotate
  53.        (car box)
  54.        (cadddr box)
  55.        (polar (car box) pi 10.)
  56.        _pi2
  57.      )
  58.      (xdrx_object_setxrecord (car e) "BoxDimed" 1)
  59.        )
  60.      )
  61.      (cond
  62.        ((and (>= (cadr p) maxy)
  63.          (or (<= minx (car p) maxx)
  64.          (and (<= (car p) minx)
  65.               (<= (angle ulp p) (/ pi 0.75))
  66.          )
  67.          (and (>= (car p) maxx)
  68.               (>= (angle (cadr box) p) (/ pi 4))
  69.          )
  70.          )
  71.     ) ;_up
  72.     (drawpl    (polar (last box) _pi2 30.)
  73.         (polar (caddr box) _pi2 30.)
  74.         h
  75.     )
  76.        )
  77.        ((and (<= (cadr p) miny)
  78.          (or (<= minx (car p) maxx)
  79.          (and (<= (car p) minx)

  80.               (>= (angle (car box) p) (* pi 1.25))
  81.          )
  82.          (and (>= (car p) maxx) (<= (angle brp p) (/ pi 4)))
  83.          )
  84.     ) ;_ down
  85.     (drawpl    (polar (car box) (- _pi2) (+ h 30.))
  86.         (polar (cadr box) (- _pi2) (+ h 30.))
  87.         h
  88.     )
  89.        )
  90.        ((and
  91.       (<= (car p) minx)
  92.       (or (and (>= (cadr p) maxy) (> (angle ulp p) (/ pi 0.75)))
  93.           (and (<= (cadr p) miny) (< (angle (car box) p) (* 1.25 pi)))
  94.           (<= miny (cadr p) maxy)
  95.       )
  96.     ) ;_left
  97.     (drawpl    (polar (car box) pi (+ vy 45.))
  98.         (polar (car box) pi 45.)
  99.         h
  100.     )
  101.        )
  102.        (t
  103.     (drawpl    (polar (cadr box) 0. 45.)
  104.         (polar (cadr box) 0. (+ 45. vy))
  105.         h
  106.     ) ;_right
  107.        )
  108.      )
  109.   )
  110.   (princ)
  111. )

点评

是呀用不了也!出现这样的提示“错误: no function definition: XDRX_ENTSEL”  详情 回复 发表于 2013-9-18 18:37
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-9-18 18:05:45 来自手机 | 显示全部楼层
本帖最后由 st788796 于 2013-9-18 18:07 编辑

while应该加个(not (zerop h))判断
rtos 中变量名不对
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-24 18:35 , Processed in 0.426252 second(s), 64 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表