明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 6890|回复: 17

求高手写一个批量偏移(offset)内外的lsp

  [复制链接]
发表于 2006-2-24 10:18:00 | 显示全部楼层 |阅读模式

 请求写一个可以窗选偏移的lsp,如图:
要求只要都是闭合的线就可以全窗选一起偏移,(最好是什么线性都可以,只要是闭合的)偏移内或外可以自选,还有要偏移成另一个层或当前层.谢谢!

本帖子中包含更多资源

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

x
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2006-2-24 10:49:00 | 显示全部楼层
  1. (load "xyp_lib.vlx") ;版本 V.20060210
  2. ;|下载和加载通用函数(可在签名栏直接下载后放到搜索路径下)
  3. 利用以下任何一种方式(首选第一种)即可加载和运行通用函数内的所有子程序:
  4. ★1·在acad.lsp中增加(load"xyp_lib")
  5. ■2·在每个程序内增加(load"xyp_lib")
  6. ■3·在command下,输入(load"xyp_lib")
  7. ■4·在菜单.mnl中增加(load"xyp_lib")
  8. ■5·将xyp_lib.vlx文件直接拽到cad屏幕
  9. [COLOR=red] ★通用函数下载地址:[/COLOR]
  10. [url]http://bbs.mjtd.com/forum.php?mod=viewthread&tid=37554[/url]
  11. |;
  12. ;;;双向偏移并改层
  13. (defun c:test ()
  14.   (cmdla0)
  15.   ;;自定义层名TEST
  16.   (mkla "TEST" 1)
  17.   (if (null getds)
  18.     (setq getds 100)
  19.   )
  20.   (SETQ getds (UDIST 7 "" "\n输入偏移距离<可直接量取>:" getds nil)
  21. ss    (ssget "X")
  22. ss1   (ssget '((0 . "Arc,Circle,Ellipse,*Line")))
  23. i     -1
  24.   )
  25.   (setvar "OFFSETDIST" getds)
  26.   (setvar "osmode" 0)
  27.   (while (setq s1 (ssname ss1 (setq i (1+ i))))
  28.     (setq pts (xyp-get-CurveStartPoint s1)
  29.    pt1 (xyp-get-FaxianAtPoint s1 pts 100)
  30.    pt2 (xyp-get-FaxianAtPoint s1 pts -100)
  31.     )
  32.     (princ ".")
  33.     (command "offset" "" (list s1 pts) pt1 "")
  34.     (command "offset" "" (list s1 pts) pt2 "")
  35.   )
  36.   (command "select" (ssget "X") "r" ss "")
  37.   (command "change" (ssget "P") "" "P" "la" "TEST" "")
  38.   (cmdla1)
  39. )
 楼主| 发表于 2006-2-24 11:31:00 | 显示全部楼层

谢谢!

只能偏外,
不能选偏内或偏外,是什么原因,是我操作问题,?还是...

发表于 2006-2-24 19:57:00 | 显示全部楼层
用 vla-offset 就可以了,具体用法可参考相关书籍!!!
发表于 2006-2-24 20:03:00 | 显示全部楼层
内外同时偏移是可以用vla-offset命令,可能程序相对来说会少写几句。
发表于 2006-2-24 21:39:00 | 显示全部楼层
kwok发表于2006-2-24 11:31:00 谢谢! 只能偏外,不能选偏内或偏外,是什么原因,是我操作问题,?还是...

内外同时偏移。

对一根线来说,如何确定内外?

发表于 2006-2-24 21:57:00 | 显示全部楼层

前提是封闭的线

发表于 2006-2-26 09:55:00 | 显示全部楼层
偏移一向后,判断面积大小
发表于 2006-2-27 09:17:00 | 显示全部楼层
[code]  ;;;来自晓东空间的,不记得谁编的了。
(defun c:df (/ getds obj red-dist)
  (princ "\n&Ograve;&raquo;&acute;&Icirc;&euml;p&Iuml;ò&AElig;&laquo;&Ograve;&AElig;&para;à&#8218;
 楼主| 发表于 2006-3-4 17:15:00 | 显示全部楼层

我要的是多个封闭的圈或圆可以一起同时偏移,还要可以选择偏向哪一边和还要偏移出的线要跟原对象在不同的层上.

2楼的只能偏移到外面,9楼的是内外同时偏移,我要的是可选的,不管内和外.

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

本版积分规则

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

GMT+8, 2025-5-28 01:17 , Processed in 0.173656 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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