找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 360|回复: 4

[求助]:求教CAD程序高手

[复制链接]
发表于 2004-8-30 15:04:03 | 显示全部楼层 |阅读模式

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

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

×
求教CAD程序高手,我下载的一些程序在CAD2002或CAD2004能用,但是CAD2005却不能用,怎样修改才能在CAD2005用呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-8-30 15:07:46 | 显示全部楼层
楼主,你要说清楚才成呀,要不谁也不能帮到你呀~~
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2004-8-31 13:09:38 | 显示全部楼层
楼主说的一点儿都不清楚的,什么程序亚?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-8-31 17:03:42 | 显示全部楼层
请教,这是spline转为pline线用的程序,怎样修改才能在CAD2005用呢?


(defun C:SPLINE_TO_PLINE (/ HOLDECHO    OS   SSS NUMPT N
     ED ED1   PTST  PTEND SS2 PT1   PT2
     PT3 J     ENT   NNO   SS SSL
   ptlist b )

  (defun VAL1 (N SS INDEX)
    (cdr (assoc N (entget (ssname SS INDEX))))
  )

  (defun CH_IT (NOS)
    (if (assoc NOS ED)
      (progn
(if (assoc NOS ENT)
   (setq ENT (subst (assoc NOS ED) (assoc NOS ENT) ENT))
   (setq ENT (append ENT (list (assoc NOS ED))))
)
(entmod ENT)
      )
    )
  )

  (setq HOLDECHO (getvar "cmdecho"))
  (setvar "cmdecho" 0)
  (command "_.undo" "group")
  (setq OS (getvar "osmode"))
  (setvar "osmode" 0)
  (prompt "\nPlease pick the spline: ")
  (setq SSS (ssget '((0 . "spline"))))
  (if SSS ;if1
    (progn;progn1
      (initget (+ 1 2 4))
      (setq NUMPT
      (getint
        "\nPlease specify the accuracy of conversion: "
      )
      )
      (setq N 0)
      (setq SSL (sslength SSS))
      (repeat SSL ;repeat1
(prompt (strcat "\r余 " (itoa (- SSL N)) " 个物件     "));相当于进度条
(setq ED1 (ssname SSS N))
(setq ED (entget ED1))

(setq ptlist (pp ed))
(leo ptlist)

(setq PTST  (cdr (assoc 10 ED)) ;取得起点坐标
       PTEND (cdr (assoc 10 (reverse ED)));取得终点坐标
)

           (if  (= b 123)
             (progn ;progn3
              (command "erase" ed1 "")
              (command "pline" ptst ptend "")
              (setq N (1+ N))
             );end progn3

             (progn ;progn2
(command "_.divide" ED1 (* 2 NUMPT))
(setq SS2 (ssget "p"))
  (if (= (logand (cdr (assoc 70 ED)) 1) 1)
   (setq J 1)
   (setq J 0)
)
(setq PT3 PTST)
(setq SS (ssadd))
(repeat NUMPT;repeat2
   (setq PT2 (VAL1 10 SS2 J))
   (if (/= NUMPT (/ (+ J 2) 2))
     (setq PT1 (VAL1 10 SS2 (+ 1 J)))
     (setq PT1 PTEND)
   )
   (command "_.arc" PT3 PT2 PT1)
   (ssadd (entlast) SS)
   (setq PT3 PT1)
   (setq J (+ 2 J))
);end repeat2
(command "_.pedit" (ssname SS 1) "" "j" SS "" "")
(setq ENT (entget (entlast)))
(foreach NNO '(6 8 62 48)
   (CH_IT NNO)
)
(command "_.erase" SS2 ED1 "")
(setq N (1+ N))
            );end progn2
          );end if2
      );end repeat1
      (prompt (strcat "\r完成转换                               ")
      )
    );end progn1
    (alert "Nothing selected!!")
  );end if1
  (setvar "osmode" OS)
  (command "_.undo" "end")
  (setvar "cmdecho" HOLDECHO)
  (princ)
)


(defun pp (obj /)
(vl-load-com)
(MASSOC 10  obj)
)

(defun massoc (key alist / x nlist)
(foreach x alist
(if (eq key (car x))
(setq nlist (cons (cdr x) nlist))
)
)
(reverse nlist)
)

;判断一个表中的各点的是不是在一直线上
(defun leo (listpoint / listnumber listpoint ang1 ang a list_pt)
  (setq list_pt listpoint)
  (setq listnumber (length list_pt))
  (if (>= listnumber 2)
     (setq ang1 (angle (car list_pt) (cadr list_pt)))
  )
  (setq a 1)
  (while (and (>= listnumber 2) (= a 1))
    (setq ang (angle (car list_pt) (cadr list_pt)))
    (if (equal ang1 ang 0.000001)
       (setq a 1)
       (setq a 2)
    )
    (setq ang1 ang)
    (setq list_pt (cdr list_pt))
    (setq listnumber (length list_pt))
  )
  (if (= listnumber 1)
    (setq b 123)
    (setq b 456)  ;b在主程序中设成变量
  )
)


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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 17:46 , Processed in 0.294203 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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