模具论坛

标题: ACAD二次开发小程序 [打印本页]

作者: lyxdjt    时间: 2004-9-11 20:35
标题: 我也奉献几个ACAD二次开发小程序------以此支持并呼应新任版竹KOKO1998
看到此版块有新任斑竹并发出教程贴,由衷的高兴,感觉也许此版块以后会有一些新气象和生机,我在此表示祝贺,当然更应有点行动,所以也来几个ACAD二次开发小程序,需要解释一下的是,这是我在97年使用ACADR12时的作品,由于当时根本看不到HMCAD与THMCAD以及INTERCAD这样的二次开发软件,所以当时下了许多功夫去编写一些AUTOLISP程序,比如自动输入图框和标题栏,标注粗糙度符号,标准轴素生成等等,但现在都没用了,因为软件开发商的水平比我高得多,不过还有几个到现在我还在用.  现在我拿出来,奉献给各位.
作者: lyxdjt    时间: 2004-9-11 20:40
标题: ACAD二次开发小程序
(defun c:ZA()
(command "zoom" "a"))
命令:ZA
这是一个ZOOM的子命令,相当与执行ZOOM后的选项A,恢复到全视窗.
作者: lyxdjt    时间: 2004-9-11 20:43
(defun c:ZP()
(command "zoom" "p"))
命令:ZP
这也是一个ZOOM的子命令,相当与执行ZOOM后的选项P,恢复到前视窗.
作者: lyxdjt    时间: 2004-9-11 20:45
<P>(defun c:JSQ()
(COMMAND "SH" "CALC"))</P><P>命令: JSQ</P><P>在ACAD环境中执行WINDOWS下计算器的命令.</P>
作者: lyxdjt    时间: 2004-9-11 20:50
<P>(defun c:UCSO()
(command "UCS" "O"))</P><P>命令:UCSO</P><P>大家不要小看它,它让你立刻执行重新设置用户坐标系原点,这可是为方便做图使用频率最高的命令了.</P>
作者: lantumold    时间: 2004-9-28 14:47
<P>一个朋友让我帮忙修改的程序--选择一个线性标注尺寸,不用回车或单击右键直接加上Φ:</P><P>(defun c:dw (/ n nt qsel sel)
  (setvar "cmdecho" 0)
  (setq sel (entsel "\n选择要加φ的尺寸:"))
  (if (= (cdr (nth 31 (entget (ssname qsel n)))) "AcDbAlignedDimension")
        (command "dimoverride" "dimpost" "%%c&lt;&gt;" "" sel "")
                     )
  
  (setvar "cmdecho" 1)
  (princ)
  )</P><P>怎么修改?</P>
作者: lantumold    时间: 2004-9-28 14:48
;;程序1:核心部分主程序可以实现无须右键确认增加前缀φ;;
(defun c:dw (/ sel)
  (setvar "cmdecho" 0)
  (setq sel (entsel "\n选择要加φ的尺寸:"))
  (command "dimoverride" "dimpost" "%%c&lt;&gt;" "" sel "")
  (setvar "cmdecho" 1)
  (princ)
  )
作者: lantumold    时间: 2004-9-28 14:49
;;程序2:防止误选与不选;
(defun c:dw (/ sel)
  (setvar "cmdecho" 0)
  (while (= sel nil) (setq sel (entsel "\n选择要加φ的尺寸:")));防止不选;
  (command "dimoverride" "dimpost" "%%c&lt;&gt;" "" sel "")
  (setvar "cmdecho" 1)
  (princ)
  )
作者: lantumold    时间: 2004-9-28 14:51
<P>;;防止错选;
(defun c:dw (/ sel typ nth38 nth32 condition)
  (setvar "cmdecho" 0)
  (setq condition 0);虚拟一个变量作为循环终止条件;
  (while (= condition 0)
    (progn
      (setq sel (entsel "\n选择要加φ的尺寸:"))
      (if (= sel nil) (princ);如果没有选择倒回去再选;
(progn
   (setq typ (cdr(assoc 0 (entget(car sel)))))
   (if (= typ "DIMENSION") (progn
        (setq nth38 (cdr(nth 38 (entget(car sel)))))
        (setq nth32 (cdr(nth 32 (entget(car sel)))));筛选出标注;
        );注意:当标注与对象关联时原始数据为38项,当没有关联时原始数据为32项;
     )
   (if (or (= nth38 "AcDbRotatedDimension") (= nth32 "AcDbRotatedDimension"));OR是或者的意思,两个有一个成立即可
     (setq condition 1)
     );当选择到转角时设置虚拟变量condition=1
   )
)
      )
    )
  (command "dimoverride" "dimpost" "%%c&lt;&gt;" "" sel "")
  (setvar "cmdecho" 1)
  (princ)
  )</P><P>写程序应该是这样的,先把程序结构(也就是框架与流程)明确了,实现基本功能再一步一步完善。</P><P>这是给初学者一个建议。</P>
作者: qustjiziyi    时间: 2008-5-21 09:43
哎!钱不够啊!哈哈!以后得抓紧时间挣钱啊!
作者: continue    时间: 2008-10-29 23:42
这些是蛮简单的吧。老大,
作者: iffjyie    时间: 2008-12-25 11:37
标题: 好东西
哈哈!蛮好用的哦啊!
作者: TAOSHUWU    时间: 2009-2-4 23:19
正在 找呀,太谢谢了
作者: fangchiwen    时间: 2009-2-13 13:05
祝福
要过情人节了 节日快乐
作者: fangchiwen    时间: 2009-2-13 20:25
下载试用了无须右键确认增加前缀φ.可惜是加后缀φ而不是加前缀φ.怎样改为加前缀φ那就更好了
作者: yjlzjg    时间: 2009-5-22 09:24
可憐的我,這些你們都說是簡單的東西可是我一點都不通!我要了很多看看都是看不出什麼名堂來!!
作者: hawk101    时间: 2009-5-22 22:06
谢谢!学习中!!!
作者: siiling16    时间: 2009-6-8 00:23
非常不錯!謝謝分享!感謝!
作者: cwc7711    时间: 2009-6-8 15:52
没钱啊.
作者: zouweiproe    时间: 2009-6-8 17:01
不懂这些..............
作者: wjy-59    时间: 2009-6-16 14:12
谢谢楼主,努力学习中。
作者: chenzhihua5459    时间: 2009-6-16 14:29
挺不错的  挺好的  我刚好需要  谢谢
作者: 19620276    时间: 2009-10-2 17:55
ACAD二次开发小程序
(defun c:ZA()
作者: 19620276    时间: 2009-10-2 17:57
ACAD二次开发小程序
(defun c:ZA()
作者: 19620276    时间: 2009-10-2 17:57
ACAD二次开发小程序
(defun c:ZA()
作者: 19620276    时间: 2009-10-2 17:58
ACAD二次开发小程序
(defun c:ZA()
作者: 19620276    时间: 2009-10-2 17:58
ACAD二次开发小程序
(defun c:ZA()
作者: 19620276    时间: 2009-10-2 17:58
ACAD二次开发小程序
(defun c:ZA()
作者: 19620276    时间: 2009-10-2 17:59
ACAD二次开发小程序
(defun c:ZA()
作者: 19620276    时间: 2009-10-2 17:59
ACAD二次开发小程序
(defun c:ZA()
作者: 19620276    时间: 2009-10-2 18:03
ACAD二次开发小程序
(defun c:ZA()
作者: 19620276    时间: 2009-10-2 18:04
ACAD二次开发小程序
(defun c:ZA()
作者: kim0929332225    时间: 2009-11-15 13:07
真是高手如雲阿
謝謝你們的教導
作者: qiyan1113    时间: 2009-12-20 17:08
这个东西挺好的,楼主也挺明白啊,不错啊
作者: liessly    时间: 2018-4-1 23:08
提示: 该帖被管理员或版主屏蔽




欢迎光临 模具论坛 (https://www.mouldbbs.com/) Powered by Discuz! X3.4