明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: cabinsummer

[风之影][讨论]块中图元原位复制

    [复制链接]
发表于 2012-1-6 08:51 | 显示全部楼层
本帖最后由 highflybir 于 2012-1-25 20:27 编辑
byghbcx 发表于 2012-1-6 08:16
高飞鸟写的程序有点像HIGHFILYBIRD的风格,该程序对外部参照、嵌套非等比例块、属性文字等内容暂不支持原位 ...


其实对嵌套非等比例块还是支持的,只不过对非正交变换不支持。
回复 支持 1 反对 0

使用道具 举报

发表于 2012-1-6 09:08 | 显示全部楼层
本帖最后由 byghbcx 于 2012-1-6 14:50 编辑
highflybir 发表于 2012-1-6 08:51
其实对嵌套非等比例块还是支持的,只不过对两次以上的非等比变换不支持。


我原来也写过一个,方法原始,没用矩阵转换,但发现对属性文字不支持,近两天修改了一下,支持外部参照、嵌套非等比例块、属性文字。我还有个新想法就是能交互选择嵌套块中的图元、图块提出来。

本帖子中包含更多资源

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

x

点评

楼主发现没有,对于布局中的块,它无法操作  发表于 2013-12-18 18:22
木有框选。。  发表于 2013-6-14 23:56
也是点选的。 想找个框选的! 不容易啊  发表于 2012-5-3 13:58
这位大师的ncopy和ExpressTools里的ncopy是一样的吗?  发表于 2012-1-9 19:36

评分

参与人数 2明经币 +4 金钱 +24 收起 理由
xiaxiang + 2 Very Nice!
Gu_xl + 2 + 24 赞一个!

查看全部评分

发表于 2012-1-9 08:58 | 显示全部楼层
简单的块内实体复制
  1. (defun c:bc (/ e el)
  2.   (while(and(setq e(nentselp "\n选择块内实体: "))
  3.               (= (length e) 4)
  4.          )
  5.     (setq el (entget (car e)))
  6.     (entmake el)
  7.     (vla-transformby
  8.       (vlax-ename->vla-object (entlast))
  9.       (vlax-tmatrix (caddr e))
  10.     )
  11.   )
  12.   (princ)
  13. )

点评

在布局中无用  发表于 2013-12-18 19:54
发表于 2012-1-9 09:08 | 显示全部楼层
再来个稍微复制点的.
  1. ;xshrimp 2009.3.13
  2. (defun c:nn ( / acaddocument acadobject blockobj blockrefobj i mspace n nent obj objent)
  3. (VL-LOAD-COM)
  4. (defun make*ublock(obj / blockobj)  
  5.   (setq blockObj (vla-add (vla-get-Blocks AcadDocument) (vlax-3d-point (list 0 0 0))  "*U" )  )     
  6.   (vla-CopyObjects AcadDocument
  7.     (vlax-safearray-fill
  8.       (vlax-make-safearray vlax-vbObject (cons 0 0) )
  9.       (list obj)   
  10.     )
  11.    blockObj
  12.   )   
  13. (vla-delete obj)
  14. (vla-get-name  blockObj)
  15. )
  16. (setq AcadObject (vlax-get-acad-object)
  17.       AcadDocument (vla-get-ActiveDocument Acadobject)
  18.       mSpace (vla-get-ModelSpace Acaddocument)
  19. )
  20. (if (= (length (setq nent (nentsel))) 4)
  21. (progn
  22.   (entmake (entget (car nent)))
  23.   (setq objent (vlax-ename->vla-object (entlast))i 0)   
  24.   (foreach n (last nent)  
  25.   (setq obj (vlax-ename->vla-object n))   
  26.   (setq blockRefObj
  27.     ( vla-InsertBlock
  28.       mSpace
  29.       (vla-get-InsertionPoint obj)
  30.       (make*ublock  objent )
  31.       (vla-get-xScaleFactor   obj)
  32.       (vla-get-yScaleFactor   obj)
  33.       (vla-get-zScaleFactor   obj)
  34.       (vla-get-Rotation       obj)
  35.     )
  36.   )
  37.   (setq i (1+ i))  
  38.   (if(> i 1)  (command "_.explode" (entlast))  )
  39.   (setq objent(vlax-ename->vla-object (entlast)))     
  40.   );end foreach  
  41. (command "_.explode" (entlast))
  42. (sssetfirst nil (ssget "p"))  
  43. )
  44. )
  45. (prin1)
  46. )

点评

在布局中无用  发表于 2013-12-18 19:29

评分

参与人数 1明经币 +1 收起 理由
Gu_xl + 1 赞一个!思路和12#楼的一致!

查看全部评分

发表于 2012-1-9 15:05 | 显示全部楼层
高飞鸟 发表于 2012-1-2 23:13
下面的代码不知道可以吗:

我为了画中垂线,须求得块内曲线与曲线在交点处的交角,我发贴求助,没有人回答。原来这么复杂。现在有望解决了。不过,对于块的坐标变换,我仍不是很清楚。

点评

块内曲线画垂线,以前有这样的帖子讨论,并已解决,去找着看!就是坐标变换的问题!  发表于 2012-1-9 15:35
发表于 2012-1-22 02:59 | 显示全部楼层
提出一个改块名问题:图形中有相同名称的块,只想点选其中一个块,改变其块名,而不影响其它的原块名,谁提一下建议吧
发表于 2012-1-22 03:07 | 显示全部楼层
真搞不懂,明明已经登录,可点击下载byghbcx的ncopy.lsp时,还是不断提示登录,无法下载啊!
发表于 2012-1-30 13:45 | 显示全部楼层
谢谢楼主分享!
发表于 2012-4-5 17:03 | 显示全部楼层
谢谢各位提供的插件!!
发表于 2013-4-12 19:21 | 显示全部楼层
希望高手们继续优化,搞出可框选的来
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-17 13:45 , Processed in 0.260211 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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