找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2545|回复: 16

[求助] [求助]:[0126]依偏移值连续偏移该怎样进行呢?

[复制链接]
发表于 2006-1-26 08:32:31 | 显示全部楼层 |阅读模式

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

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

×
[求助]:[0126]依偏移值连续偏移该怎样进行呢?
以下是小弟看到的程序~
但这程序偏移的距离是依据原点来判断输入的距离,
但我所需要的是由偏移后的线段重新再偏移一段距离,
所以是每偏移一次距离归零,再偏移一次.
烦请各位高手帮忙解答一下
谢谢~



(defun c:offsets (/ a s n pt1 aa aaa al)
(setq a "")
(while (= a "")
(setq a (getstring "\n 输入偏移距离;[如:2/6/23...]:"))
)
(setq a (strcat a "/"))
(prompt "\n 选取偏移图元:")
(while (= aa nil)
(setq aa (entsel))
)
(initget 1)
(setq pt1 (getpoint "\n 点选偏移方向:"))
(setq al (+ (strlen a) 1))
(setq n 1)
(setq s "")
(while (not (= n al))
(if (= (substr a n 1) "/")
(progn
(setq aaa (car aa))
(command "_.offset" s aaa pt1 "")
(setq s "")
)
(setq s (strcat s (substr a n 1)))
)
(setq n (1+ n))
)
(princ)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-1-26 09:07:55 | 显示全部楼层
dcpy(多重偏移)
  1. [FONT=courier new];;;dcpy 多重偏移
  2. (defun C:DCPY ()
  3.   (cmdla0)
  4.   (setq NO1 (ureal 7 "" "\n偏移距离" NO1)
  5.         NO2 (ureal 7 "" "\n次数" NO2)
  6.         dist NO1)
  7.   (while (not (setq ent (entsel "\n偏移元素 : "))))
  8.   (while (not (setq spt (getpoint "\n方向 : "))))
  9.   (repeat (fix NO2)
  10.     (command "offset" dist ent spt "")
  11.     (setq dist (+ dist NO1))
  12.   )
  13.   (cmdla1)
  14. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-1-26 11:24:40 | 显示全部楼层
[php]
;;;“赖版”程序作一点小小的修改;;;
;;;---------------;;;
(defun C:OFFSETS (/ A S N PT1 AA AAA AL)
  (setq A "")
  (while (= A "")
    (setq A (getstring "\nSpecify offset distance :"))
                    ;;输入如:2/6/23…..
  )
  (setq A (strcat A "/"))
  (prompt "\nSelect object to offset: ")
  (while (= AA nil)
    (setq AA (entsel))
  )
  (initget 1)
  (setq PT1 (getpoint "\nSpecify point on side to offset: "))
  (setq AL (+ (strlen A) 1))
  (setq N 1)
  (setq S "" S0 0)
  (setq AAA (car AA))
  (while (not (= N AL))
    (if    (= (substr A N 1) "/")
      (progn
        (setq s0 (+ s0 (atof s)))
    (command "_.offset" S0 AAA PT1 "")
    (setq S "")
      )
      (setq S (strcat S (substr A N 1)))
    )
    (setq N (1+ N))
  )
  (princ)
)

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

使用道具 举报

发表于 2006-1-26 11:51:15 | 显示全部楼层
(setq AAA(entlast)) --这样会有问题的,要从原AAA偏移才行!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-1-26 12:07:11 | 显示全部楼层
最初由 LUCAS 发布
[B](setq AAA(entlast)) --这样会有问题的,要从原AAA偏移才行! [/B]


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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2006-1-27 14:24:11 | 显示全部楼层
3楼的代码和1楼的执行的是同样的功能,不过我觉得 (setq s0 (+ s0 (atof s))) (command "_.offset" S0 AAA PT1 "") 这句倒是比(command "_.offset" s aaa pt1 "")这句能让我看懂,第二句s里存的是字符串呀,不太明白执行没问题。xyp1964班竹的程序能满足1楼的要求,不过要是每次偏移不同的距离,就不能实现了。其实这个功能ET里有呀,命令是增强偏移copym.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-6-8 16:19:23 | 显示全部楼层
大哥这个是个好的程序但能否改进一下,在执行命令是可以选择上一次所输入的偏移距离数值或重新输入偏移数值。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-6-9 11:08:09 | 显示全部楼层
我这个用的好多年了
连续拷贝MCP
可以在偏移时的过程中随时改变偏移量。
正值向上,负值向反。
结束输入0.

1800模数是自用的,只要输入1或2或3,就会按照这个模数的倍数。由于这是源码程序,大家可以在程序里自己改这个值。

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

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

发表于 2006-6-9 13:18:58 | 显示全部楼层
10楼程序缺子程序,不该收币。
错误: no function definition: XRDDIC
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-6-9 16:34:48 | 显示全部楼层
需将
  (setq tscale (atof (xrddic "Tabscale" "100"))); ____这句删除,原因是我自己的专业CAD设比例大小的,


  “(setq sca (* 1.0 tscale))               ; 图纸比例”中tscale 已改为100了,所以上一句的设定可取消,现附件以重新修定过了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2006-12-15 16:58:52 | 显示全部楼层
土人用土办法,错误处理什么的就懒得写了- -
(defun c:tt(/ent1 dpt tdist dist)
  (setq ent1(car(entsel "\选择偏移实体:")))
  (setq dpt(getpoint "\n输入方向点:"))
  (setq tdist 0)
  (while (setq dist(getdist "\n输入距离:"))
    (setq tdist(+ tdist dist))
    (command "offset" tdist ent1 dpt "" "")   
  )
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-17 18:58 , Processed in 0.248687 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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