明经CAD社区

 找回密码
 注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 522|回复: 26

[提问] 本人水平有限,有求大神帮忙统编一个图形间距调整功能的!!

[复制链接]
发表于 2019-5-15 00:14 | 显示全部楼层 |阅读模式
10明经币
如题!小弟一直想要一个调整间距的功能,泡了明经也有三个月的时间了,也曾想过自己编一个,但学习断断续续!无奈还是向各位大神求助,帮忙编上一个。谢谢先!


附件: 您需要 登录 才可以下载或查看,没有帐号?注册

最佳答案

查看完整内容

功能示意代码
发表于 2019-5-15 00:14 | 显示全部楼层
功能示意代码
  1. (defun get_ss_rect(ss / pt_list sn n en pt1 pt2)
  2.   (if ss
  3.     (progn
  4.       (setq pt_list '())
  5.       (setq sn (sslength ss))
  6.       (setq n -1)
  7.       (repeat sn
  8.         (setq en (ssname ss (setq n (1+ n))))
  9.         (vla-getboundingbox (vlax-ename->vla-object en) 'pt1 'pt2)
  10.         (setq pt_list (cons (vlax-safearray->list pt1) pt_list))
  11.         (setq pt_list (cons (vlax-safearray->list pt2) pt_list))
  12.       )
  13.       (setq pt1 (apply 'mapcar (cons 'min pt_list)))
  14.       (setq pt2 (apply 'mapcar (cons 'max pt_list)))
  15.       (list pt1 pt2)
  16.     )
  17.   )
  18. )
  19. (defun c:tt(/ ss ptlist  startmax ptmin ptmax)   
  20.   (prompt "\n请选择一组基准对象(空格退出):")
  21.   (if(setq ss(ssget))
  22.     (progn
  23.       (or *g_sk_Dist* (setq *g_sk_Dist* 20))
  24.       (setq *g_sk_Dist*(cond
  25.                      ((getdist (strcat "\n请输入间距值(空格退出):<"(rtos *g_sk_Dist* 2 2) ">" )))
  26.                      (*g_sk_Dist*)))
  27.       (setq ptlist(get_ss_rect ss))
  28.       (setq ptMax(cadr ptlist))
  29.       (setq StartMax(+ (car ptMax) *g_sk_Dist*))
  30.       (setq ss nil)
  31.       (prompt "\n请选择下一组对象(空格退出):")
  32.       (while(setq ss(ssget))
  33.         (setq ptlist(get_ss_rect ss))
  34.         (setq ptMin(car ptlist))
  35.         (setq ptMax(cadr ptlist))       
  36.         (command "_.move" ss "" (list (car ptmin) 0) (list StartMax 0))       
  37.         (setq ptlist(get_ss_rect ss))
  38.         (setq ptMax(cadr ptlist))
  39.         (setq StartMax(+ (car ptMax) *g_sk_Dist*))
  40.         (setq ss nil)
  41.         (prompt "\n请选择下一组对象(空格退出):")
  42.         )
  43.       )
  44.     )  
  45.   )

评分

参与人数 1明经币 +1 收起 理由
1291500406 + 1 很给力!

查看全部评分

回复

使用道具 举报

发表于 2019-5-15 09:51 | 显示全部楼层
同是五金模设计帮顶一下
回复

使用道具 举报

发表于 2019-5-15 11:47 | 显示全部楼层
论坛大把对齐的代码,无非就是计算外框+移动,自己慢慢写吧
回复

使用道具 举报

 楼主| 发表于 2019-5-15 12:31 | 显示全部楼层
start4444 发表于 2019-5-15 11:47
论坛大把对齐的代码,无非就是计算外框+移动,自己慢慢写吧

伤心!!啃了一段时间的码!看得有点晕。现在只能改下别移动复制和功能!
复杂一点的就不会改了!
类似的功能LSP,也收集有一些,但都不是我要的功能!
回复

使用道具 举报

发表于 2019-5-15 12:52 来自手机 | 显示全部楼层
这东西太花时间了,悬赏1000几百也许有人帮你写
回复

使用道具 举报

发表于 2019-5-15 15:16 来自手机 | 显示全部楼层
天正建筑有这个功能啊
回复

使用道具 举报

发表于 2019-5-15 15:24 | 显示全部楼层
;;pl线的话,比较好实现
;;简单写了个pl线图元的

本帖子中包含更多资源

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

x
回复

使用道具 举报

 楼主| 发表于 2019-5-15 20:58 | 显示全部楼层
ymcui 发表于 2019-5-15 09:51
同是五金模设计帮顶一下

谢谢老铁!你是用什么外挂的?我用PressCAD,加个好友吧交流一下!
回复

使用道具 举报

 楼主| 发表于 2019-5-15 20:59 | 显示全部楼层
arcers 发表于 2019-5-15 15:16
天正建筑有这个功能啊

谢谢你的提示,我找找看!!
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号  
©2000-2017 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2019-5-24 04:44 , Processed in 0.228118 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2013 Comsenz Inc.

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