明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3622|回复: 8

批量延长缩短

  [复制链接]
发表于 2012-1-5 00:47:49 | 显示全部楼层 |阅读模式
刚学着写个LISP,请大家指正批评。
(defun c:ll()
  (princ "\n 请选择类型:[增量DE/定量T]")
  (setq len (getstring "\n输入选项:"))
  (setq zz (getreal "\n 输入数值: "))
  (setq ss (ssget))
  (if (or (eq len "de") (eq len "DE") (eq len ""))
  (command "lengthen" "de" zz ss "")
  (command "lengthen" "t"  zz ss "")
  )
  (princ)
  )

可如何确定方向或中心点不变呢?
请高人指点一下。

评分

参与人数 1明经币 +1 金钱 +21 收起 理由
langjs + 1 + 21 以资鼓励

查看全部评分

 楼主| 发表于 2012-1-6 23:54:14 | 显示全部楼层
,这么没人呢?都回家啦

发表于 2012-1-7 01:57:02 | 显示全部楼层
多学多奉献啊
发表于 2012-1-7 08:31:16 | 显示全部楼层
方向我也没试过,
但是中点应该可以,先提取源直线中点,替换更换后直线的中点
 楼主| 发表于 2012-3-8 18:15:01 | 显示全部楼层
【KAIXIN】 发表于 2012-1-7 08:31
方向我也没试过,
但是中点应该可以,先提取源直线中点,替换更换后直线的中点

多谢提点,我会试着写一下。
发表于 2012-3-8 21:24:04 | 显示全部楼层
纯友情顶一下
 楼主| 发表于 2012-3-23 12:39:58 | 显示全部楼层
【KAIXIN】 发表于 2012-1-7 08:31
方向我也没试过,
但是中点应该可以,先提取源直线中点,替换更换后直线的中点

一直在忙着上班,刚写了一个,可有些问题,帮忙瞧一下,

(defun c:LLL()
(setvar "osmode" 0)
(setq d (getdist "\n输入总长度: "))
(setq ss(ssget))
(setq len(sslength ss))
(setq i -1)
(repeat len
  (setq i (1+ i))
(setq en1(ssname ss i));;获取对象
(setq e1 (entget en1)) ;;获取对象数据
(setq pt1 (assoc 10 e1)) ;取得起点的项
(setq ptt1 (assoc 11 e1));取得终点的项
(setq po1 (cdr pt1);起点坐标
       px1 (car po1)
       py1 (cadr po1))
(setq poo1 (cdr ptt1);终点坐标
       pxx1 (car poo1)
       pyy1 (cadr poo1))
(setq zx1 (/ (+ px1 pxx1) 2.0)
       zy1 (/ (+ py1 pyy1) 2.0)
       z1 (list zx1 zy1));中点数据
(setq x0 (- zx1 (/ d 2.0)));新的起点x数据
(setq y0 (- zy1 (/ d 2.0)))
(setq xn (+ zx1 (/ d 2.0)));新的终点Y数据
(setq yn (+ zy1 (/ d 2.0)))
(setq  b0 '(x0 y0 0);新的起点
        bn '(xn yn 0));新的终点
(setq e1 (subst (cons 10 b0) (assoc 10 e1) e1));新的起点项取代旧的起点项
(setq e1 (subst (cons 11 bn) (assoc 11 e1) e1));新的终点项取代旧的终点项
(entmod e1) (entupd e1);更新数据
)
(princ)
)

这哩有些不行,
(setq  b0 '(x0 y0 0);新的起点
        bn '(xn yn 0));新的终点


如果X0 Y0 是数字就行
(setq  b0 '(0 0 0);新的起点
        bn '(100 100 0));新的终点
那样,线条就全成了这个数据了。
 楼主| 发表于 2012-3-24 12:34:34 | 显示全部楼层
望大家指正。正在学习中....
 楼主| 发表于 2012-3-25 22:22:29 | 显示全部楼层
这个怎么没人理呢?望高人指点一下。感激不尽!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-24 03:59 , Processed in 0.170571 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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