明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1638|回复: 7

请帮忙啊!困惑了很久的.....

[复制链接]
发表于 2005-1-21 14:23 | 显示全部楼层 |阅读模式
dispbbs.asp?boardID=2&ID=31793&page=1 我在 高级应用 论坛向大家请教了一个关于类似阵列的问题,有很多大侠热烈回帖,方法很多,可是都比较的烦琐,我想请斑竹帮忙编个程序搞定好了。(具体请点上面的链接) 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢

评分

参与人数 1金钱 -5 贡献 -1 激情 -2 收起 理由
meflying -5 -1 -2 【差评】太多重复无用的文字,属灌水

查看全部评分

发表于 2005-1-21 15:50 | 显示全部楼层
用法:将以下代码存成*.lsp文件,在CAD中用APPLOAD命令加载,加载后使用命令:test, 此程序只适合圆柱效果,并不能实现你给的图中的圆锥效果,,,先用用看——块未打散,试用后,再提出相应建议,我再改进
  1. (defun ChgBlk(ent dist scale / entL ents)
  2.    (setq ents (entget ent))
  3.    (setq pt (cdr (assoc 10 ents)))
  4.    (setq pt (list (- (car pt) dist) (cadr pt) (last pt)))
  5.    (setq ents (subst (cons 10 pt) (assoc 10 ents) ents))
  6.    (setq ents (subst (cons 41 scale) (assoc 41 ents) ents))
  7.    (entmake ents)
  8. )
  9. (defun c:test( / ent n r i scale dist)
  10.    (while (and (setq ent (car (entsel "\n选择要阵列的块..."))) (/= (cdr (assoc 0 (entget ent))) "INSERT"))
  11.        (princ "\n选择的不是块!")
  12.    )
  13.    (setq n (getint "\n输入数量(每边除本身以外):"))
  14.    (setq r (getdist "\n输入半径(假设圆柱的半径):"))
  15.    (if (not (and ent n r))
  16.        (exit)
  17.    )
  18.    (setq ang (/ pi 2 n))
  19.    (setq i 1)
  20.    (repeat  n
  21.        (setq scale (cos (* i ang)))
  22.        (setq dist (* r (sin (* i ang))))
  23.        (ChgBlk ent dist scale)
  24.        (ChgBlk ent (- dist) scale)
  25.        (setq i (1+ i))
  26.    )
  27.    (princ)
  28. )
 楼主| 发表于 2005-1-21 16:20 | 显示全部楼层
好的,我先用一下。 谢谢了 斑竹 谢谢了
 楼主| 发表于 2005-1-21 17:32 | 显示全部楼层
试了一试,效果还是不行。


                                                                                                                         斑竹能不能把程序设为是按圆锥表面旋转阵列,这样才是真正的效果啊。


        斑竹伟大,斑竹英明,斑竹加油哦 !!···

发表于 2005-1-24 08:12 | 显示全部楼层
(defun C:SPLAT (/ SS CE HL OS)
(cond
((setq SS (ssget))
(setq CE (getvar "cmdecho")
HL (getvar "highlight")
OS (getvar "osmode")
)
(setvar "cmdecho" 0)
(setvar "highlight" 0)
(setvar "osmode" 0)
(command "_.move" SS "" '(0 0 1e99) "")
(command "_.move" "_p" "" '(0 0 -1e99) "")
(setvar "cmdecho" CE)
(setvar "highlight" HL)
(setvar "osmode" OS)
)
(t (princ "\nNothing to splatten."))
)
(princ)
) 测试图

本帖子中包含更多资源

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

x
 楼主| 发表于 2005-1-24 16:57 | 显示全部楼层
楼上的大哥用你的加载做出来的还是只能实现圆柱效果,并不能实现圆锥的效果啊。
发表于 2005-1-25 07:57 | 显示全部楼层
你是说你不会画圆锥???       

本帖子中包含更多资源

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

x
 楼主| 发表于 2005-1-26 23:27 | 显示全部楼层
哦!用你的程序可以做到吗?我再试试好了


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

本版积分规则

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

GMT+8, 2024-5-1 23:15 , Processed in 0.311196 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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