明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
123
返回列表 发新帖
楼主: 明经快报

[LISP群(1)] 2013-07-10 明经 AutoLISP 编程(102918348) 群聊记录:夜猫子不少啊

 关闭 [复制链接]
 楼主| 发表于 2013-7-10 22:47:46 | 显示全部楼层
[ahwx0814]雨中漫 22:47:46
(defun change_n (lst n change / i)
  (setq i 0)
  (setq lst (mapcar '(lambda(x) (cons (setq i (1+ i)) x)) lst))
  (setq lst (subst (cons n change)(assoc n lst) lst))
  (mapcar 'cdr lst)
  )
 楼主| 发表于 2013-7-10 22:59:16 | 显示全部楼层
[lisp-study]jun 22:59:16
这个我觉得用while比较快一点
[VBALISPER]恐龙 23:04:03
每个元素只能为0-9的数.>9进位.小于0,借位
[vormittag]桔子 23:04:07
貌似嵌套表也没有问题吧?
[vormittag]桔子 23:05:11
又在算pi?
[VBALISPER]恐龙 23:05:28
呵呵.一下就被高人看穿了.
[vormittag]桔子 23:05:46
[VBALISPER]恐龙 23:06:00
以前完全不会.现在有点基础了,做到这一步了,后面进位,借位搞不定了.
[pzweng][pzweng]路人 23:07:40
(defun change_n    (lst n num / new_lst)
  (repeat n
    (setq new_lst (cons (car lst) new_lst))
    (setq lst (cdr lst))
  )
  (setq new_lst (cons num new_lst))
  (append (reverse new_lst) lst)
)
[VBALISPER]恐龙 23:08:28
以前哪位帮我写的这个,只能进位,不能借位.进位也只能两个表相加了就要及时进位,数字不会>20
[pzweng][pzweng]路人 23:09:12
这是增加
[VBALISPER]恐龙 23:09:57
用两次这个改某个位置的值,就可以实现进位.
[pzweng][pzweng]路人 23:10:46
可恋那个速度肯定没这个块
[VBALISPER]恐龙 23:11:13
我用你们写的替换来试一下.
[夏生生][x_s_s_1]生无可恋 23:11:48
不就是一个东西
[pzweng][pzweng]路人 23:12:15
你试试呗
 楼主| 发表于 2013-7-10 23:36:38 | 显示全部楼层
[500w008]500w008 23:36:38
[x_s_s_1]生无可恋(381164857)
[kwok][ww5w]行舟月下 23:37:05
 楼主| 发表于 2013-7-10 23:50:41 | 显示全部楼层
[500w008]500w008 23:50:41
(defun c:cc(/ ss ssarea p);找形心
  (setq ss(ssget))
  (setq i 0)
  (setq len (length ss))
  (repeat len
 (progn
  (setq s_x (ssname ss i))
  (command "_.region" s_x "")
  (setq p(vlax-get (vlax-ename->vla-object s_x)"centroid"))
  (command "_.explode" ssarea "")
  (princ p)
  (setq i (+ i 1))
 )
)
  (princ)
)
[ZZXXQQ] 23:53:19
ssarea ? 什么时候赋的值?
[500w008]500w008 23:54:04
(defun c:cc(/ ss ssarea p);找形心
  (setq ss(ssget))
  (setq i 0)
  (setq len (length ss))
  (repeat len
 (progn
  (setq s_x (ssname ss i))
  (command "_.region" s_x "")
  (setq p(vlax-get (vlax-ename->vla-object s_x)"centroid"))
  (command "_.explode" s_x "")
  (princ p)
  (setq i (+ i 1))
 )
)
  (princ)
)
还是有错 Z版帮改正下
[ZZXXQQ] 23:55:53
这样试试
(defun c:cc(/ ss ssarea p);找形心
  (setq ss(ssget))
  (setq i 0)
  (setq len (length ss))
  (repeat len
  (setq s_x (ssname ss i))
  (command "_.region" s_x "")
  (setq p(vlax-get (vlax-ename->vla-object s_x)"centroid"))
  (command "_.explode" "L")
  (princ p)
  (setq i (+ i 1))
)
  (princ)
)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-23 20:30 , Processed in 0.150483 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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