找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: newer

[布局、排版] 重磅来袭!,超强超灵活的排版工具

 火.. [复制链接]

已领礼包: 40个

财富等级: 招财进宝

 楼主| 发表于 2018-8-5 13:18:46 | 显示全部楼层
依然小小鸟 发表于 2018-8-5 13:15
你有全部代码的txt吗 给我传下好吗 我测试下  晓东工具箱 不是跟CAD绑定的吗 晓东工具箱可以取消状态栏显 ...

工具箱和CAD绑定什么?
取消什么状态栏?

安装后,显示的如果不同,都是设置的问题,你可以换下 “空间”

点评

[attachimg]79364[/attachimg] 就是装完晓东工具箱后 可以不显示 这些状态栏吗  详情 回复 发表于 2018-8-5 13:22
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2018-8-5 13:22:08 | 显示全部楼层
newer 发表于 2018-8-5 13:18
工具箱和CAD绑定什么?
取消什么状态栏?

QQ截图20180805132250.png   就是装完晓东工具箱后 可以不显示 这些状态栏吗  

点评

有强迫症啊,论坛里面的插件,在那里面都能找到,点击就运行了。 还有朋友想问,论坛的插件,怎么加到里面呢。  详情 回复 发表于 2018-8-5 13:27
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

 楼主| 发表于 2018-8-5 13:27:53 | 显示全部楼层
依然小小鸟 发表于 2018-8-5 13:22
就是装完晓东工具箱后 可以不显示 这些状态栏吗

这不叫状态栏,这是屏幕菜单。
有强迫症啊,论坛里面的插件,在那里面都能找到,点击就运行了。
还有朋友想问,论坛的插件,怎么加到里面呢。

点评

我有强迫症 确实 不想CAD的屏幕太乱 能取消显示吗  详情 回复 发表于 2018-8-5 13:33
我有强迫症 确实 不想CAD的屏幕太乱 能取消显示吗  详情 回复 发表于 2018-8-5 13:31
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2018-8-5 13:31:07 | 显示全部楼层
newer 发表于 2018-8-5 13:27
这不叫状态栏,这是屏幕菜单。
有强迫症啊,论坛里面的插件,在那里面都能找到,点击就运行了。
还有朋 ...

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

使用道具 举报

发表于 2018-8-5 13:33:32 | 显示全部楼层
newer 发表于 2018-8-5 13:27
这不叫状态栏,这是屏幕菜单。
有强迫症啊,论坛里面的插件,在那里面都能找到,点击就运行了。
还有朋 ...

我有强迫症 确实  不想CAD的屏幕太乱 能取消显示吗

点评

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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

 楼主| 发表于 2018-8-5 13:36:49 | 显示全部楼层
依然小小鸟 发表于 2018-8-5 13:33
我有强迫症 确实  不想CAD的屏幕太乱 能取消显示吗

执行

(ea:scrmnud)

点评

最好的办法就是 不用安装晓东工具箱 仅仅安装xpi就能运行 大神 如果能攻克就好了  详情 回复 发表于 2018-8-5 15:27
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 154个

财富等级: 日进斗金

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

使用道具 举报

发表于 2018-8-5 15:27:46 | 显示全部楼层
newer 发表于 2018-8-5 13:36
执行

(ea:scrmnud)

最好的办法就是 不用安装晓东工具箱  仅仅安装xpi就能运行  大神 如果能攻克就好了

点评

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

使用道具 举报

已领礼包: 80个

财富等级: 招财进宝

发表于 2018-8-6 11:59:03 | 显示全部楼层
膜拜,大师不同凡响
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2018-8-6 12:20:55 | 显示全部楼层
依然小小鸟 发表于 2018-8-5 15:27
最好的办法就是 不用安装晓东工具箱  仅仅安装xpi就能运行  大神 如果能攻克就好了

论坛插件本来就是只装API就能运行,你不能,多看看论坛的帖子。

点评

谢谢版主回复 确实试过很多次 无法执行命令  详情 回复 发表于 2018-8-6 12:50
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2018-8-6 12:50:28 | 显示全部楼层
XDSoft 发表于 2018-8-6 12:20
论坛插件本来就是只装API就能运行,你不能,多看看论坛的帖子。

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

使用道具 举报

发表于 2018-8-6 12:55:52 | 显示全部楼层
lw5297590 发表于 2018-7-28 17:38
我没有安装小东工具箱,只安装了XDRX API 2018.07.28(带2018.07.28版本晓东通用LISP函数库),看来只有 ...

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

使用道具 举报

发表于 2018-8-6 13:04:07 | 显示全部楼层
zhangfaren 发表于 2018-7-27 23:17
这么晚了,版主大大还在耐心回复帖子,真是感动,非常谢谢,早点睡吧,晚安!

解决了吗 兄弟 我也遇到了你那个问题 怎么让图框里面的东西不参与排版啊  我习惯在模型空间画图
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2018-8-6 18:55:50 | 显示全部楼层
楼主 怎么让图框里面的东西跟图框绑定在一起 参与排版啊  我习惯在模型空间画图
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2018-8-6 18:57:59 | 显示全部楼层
本帖最后由 依然小小鸟 于 2018-8-6 19:14 编辑

我这里有一个图框排版的源码  据说图框里面的内容能跟图框绑定在一起排版 ,如果能和N版的代码整合在一起就好了,还希望大神们集思广益,一起把排版做的更完美!!!!!!!!!!

封闭多段线横向排列
(defun c:ZKPB (/ os1 ss ss1 len1 len2 len3 eh-layer ename1 ename2 startpoint pbjj1 ename-list pt-list x-list y-list xminpt xmaxpt)
        (vl-load-com)
        (setvar "CMDECHO" 0)
        (command "UNDO" "be")
        (setq os1 (getvar "osmode"))
        (setvar "osmode" 0)
        ;;-------------------------------------------------------------------
        ;;获得外框图层
        (princ "\n选择一个对象以指定外框图层:")
        (setq ss1 (ssget '((0 . "LWPOLYLINE"))))
        (if (= ss1 nil)
                (progn
                        (alert "未指定外框图层!")
                        (quit)
                );progn
                (progn
                        (setq len3 (sslength ss1))
                        (setq ename1 (ssname ss1 (1- len3)));取得外框图元名,如果是多选则返回最后一个选择对象的图元名
                        (setq eh-layer (eh-getDXF ename1 8));取得图层名称
                        (princ "选定的外框图层为:")(princ eh-layer)(princ "\n")
                );progn        
        );if
        ;;-------------------------------------------------------------------
        ;;选取要排版的对象,实质是只选外框以进行分析
        (princ "\n选择要排版的所有对象:")
        (setq ss (ssget (list '(0 . "LWPOLYLINE") (cons 8 eh-layer))));根据指定外框的图层选择所有外框对象
        (if (= ss nil)
                (progn
                        (alert "未选择要排版的对象!")
                        (quit)
                );progn
        );progn
  ;---------------------------------------------------------------
        ;;指定排版间距
        (if (= pbjj0 nil);pbjj0=默认排版间距,设为全局变量
                (setq pbjj0 (float 100))                        
        );if
        (princ "\n请输入排版间距或直接量取<")(princ pbjj0)(princ ">:")        ;;显示当前默认排版间距
        ;(initget "64")
        (setq pbjj1 (getdist)) ;;获取排版间距
        (if (= pbjj1 nil)
                (setq pbjj1 pbjj0)
                (setq pbjj0 pbjj1)                                
        );if
        
        ;;-------------------------------------------------------------------
        ;;指定排版新起点
        (setq startpoint (GetPoint "\n指定一点做为排版的新起点位置:"))
        (if (= startpoint nil)
                (progn
                        (alert "未指定排版起点!")
                        (quit)
                );progn
                (progn (princ "\n新的起点坐标为:")(princ startpoint))
        );if
        ;;-------------------------------------------------------------------
        ;;外框按X方向排序,取顶点表,执行移动
        (if (= ss nil)
                (progn
                        (alert "因未选择对象--而强制退出此排版程序!")
                        (quit)
                );progn
                (progn   ;如果ss不为空,则执行下面的代码
                        (setq ename-list (eh-ss-sort ss));取得选择集的图元名并按X方向排序后重新排列图元名
                        (setq len1 (length ename-list));取得图元名列表的长度
                        (setq len2 0)
                        (while (< len2 len1)
                                (setq ename2 (nth len2 ename-list));按顺序取得外框的图元名
                                (setq pt-list (eh-getDXF ename2 10));取得多段线顶点列表                                                        
                                (setq x-list (mapcar 'car pt-list));取得所有点的X值               
                                (setq y-list (mapcar 'cadr pt-list));取得所有点的Y值
                                (setq x-list (vl-sort x-list '<));X从小到大排序
                                (setq y-list (vl-sort y-list '<));Y从小到大排序                                                        
                                (setq xminpt (list (car x-list) (car y-list)))
                                (princ "\新对象基点x:")
                                (setq xmaxpt (list (last x-list) (car y-list)))
                          (eh-move pt-list xminpt startpoint);将坐标点代入移动函数,参数为CP选择方式点表,移动基点,目标点
                                (setq startpoint (cons (+ (car startpoint) (distance xminpt xmaxpt) pbjj1) (cdr startpoint)))
                                (princ "\n\n新的目标点坐标为:")(princ startpoint)
                                
                                (setq len2 (1+ len2))
                        );while
                );progn         
        );if
        (command "UNDO" "e")
        (setvar "cmdecho" 1)
        (setvar "osmode" os1)
  (princ)
);test        

;;-----------------------------------------------------------------------------------------------------------
;;选择集图元名排序,按X方向升序排列,返回值为图元名升序列表
(defun eh-ss-sort (ss / len4 len5 ename ename1 ename-list ename-list1 x-minpt x-minpt-list pt-list x-list xx-list xx1 xx2 xx3)
        (setq len4 (sslength ss));取得选择集的长度
        (setq len5 0)
        (setq ename-list '());设图元名表单初始值为空表
        (setq x-minpt-list '())
        ;;;
        (while (< len5 len4)
                (setq ename (ssname ss len5));按顺序取得外框的图元名
                (setq ename-list (cons ename ename-list));将所有图元名组合成表单
               
    (setq pt-list (eh-getDXF ename 10));取得多段线顶点列表        
                ;(princ pt-list)(princ "\n")
                (setq x-list (mapcar 'car pt-list));取得所有点的X值        
                (setq x-list (vl-sort x-list '<));X从小到大排序
                (setq x-minpt (car x-list));取最小X点值
                (setq x-minpt-list (cons x-minpt x-minpt-list));将所有X点值组合成表单
                (setq len5 (1+ len5))
        )
        (setq ename-list (reverse ename-list));图元名列表的表内元素倒置
        (setq x-minpt-list (reverse x-minpt-list));X点表值的表内元素倒置
        (setq xx-list (vl-sort-i x-minpt-list '<));取得点排序的索引号
        
        ;(princ x-minpt-list)(princ "\n")
        ;(princ ename-list)(princ "\n")
        ;(princ xx-list)(princ "\n")
        ;;根据索引号对图元名列表重新排序
        (setq xx1 (length xx-list)
                xx2 0
                ename-list1 '()
        );setq
        (while (< xx2 xx1)
                (setq xx3 (nth xx2 xx-list))
                (setq ename1 (nth xx3 ename-list))
                (setq ename-list1 (cons ename1 ename-list1))
                (setq xx2 (1+ xx2))
        );while
        (setq ename-list1 (reverse ename-list1))
);defun

;;------------------------------------------------------------------------------------------------------------
;根据图元名取得指定的dxf组码值组成的表
;用法:(eh-getdxf 图元名 dxf组码/组码表)
;示例1:(eh-getdxf (ename) 8) 如果是单项返回字符串,多项返回表
;用例2: (eh-getdxf (ename) '(8 10 100)) 返回表
(defun eh-getDXF (ename codelst / entlst ehassoc)
        (setq entlst (entget ename));根据图元名取得对象的所有dxf组码的信息表。
  (setq ehassoc (function (lambda (lst key / l)
                                                                                                                (setq l (vl-remove-if-not '(lambda (x) (= (car x) key)) lst))
                                                                                                                (if (= (length l) 1)
                                                                                                                        (cdar l)
                                                                                                                        (mapcar 'cdr l)
                                                                                                                );if
                          );lambda
                );function
  );setq
  (if (listp codelst)
                (mapcar (function (lambda (x) (apply ehassoc (list entlst x)))) codelst)
                (apply ehassoc (list entlst codelst))
  );if
);defun eh-getDXF
;;------------------------------------------------------------------------------------------------------------        
;;以CP方式选择实体并移动
(defun eh-move (cp-ptlist pt1 pt2 / enameX);参数为CP选择方式点表,移动基点,目标点
        (setq enameX (ssget "_CP" cp-ptlist))
        (command "copy" enameX "" pt1 pt2)
        (princ "\n执行copy时的基点和目标点:")
        (princ pt1)(princ pt2)
        ;(vl-cmdf "move" enameX "" pt1 pt2)
        (princ)
)

评分

参与人数 1D豆 +5 收起 理由
marting + 5 很给力!经验;技术要点;资料分享奖!

查看全部评分

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-25 14:54 , Processed in 0.472523 second(s), 58 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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