明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 868|回复: 1

[提问] 关于 vla-get-PaperSpace

[复制链接]
发表于 2022-8-16 15:33:47 | 显示全部楼层 |阅读模式

我在做插块功能,但正常下没问题但,我突然发现了个问题,当我用新布局的时候,这个命令就不行,所以我发现它只会缓存“模型”和“布局1”(一个布局),当我用“布局2”或者新增的布局时,(vla-get-PaperSpace (vla-get-ActiveDocument (vlax-get-acad-object))就会出错,请教这个怎么解决
  1. ;;(lyt_bl_insert "名" (getpoint) 1 1 1 0)
  2. ;;说明:插入块
  3. ;;参数:block_name:
  4. ;;返回:ent
  5. (defun lyt_bl_insert (block_name pt xs ys zs ang / bn doc e2 e1 l-b mspace str)
  6.   (defun T_220530block (block_name)
  7.     (vla-insertblock
  8.       mspace
  9.       (vlax-3d-point pt)
  10.       block_name
  11.       xs
  12.       ys
  13.       zs
  14.       ang
  15.     )
  16.   )
  17.   ;(vl-load-com)
  18.   ;(vlax-release-object (vlax-get-acad-object))
  19.   ;(setq doc (cadr(lyt_doc)))
  20.   (setq str "想插入的文件不存在\n")
  21.   (setq e1 (entlast))
  22.   (setq doc (Vlax-Get (Vlax-Get-Acad-Object) 'ActiveDocument));(vla-get-ActiveDocument (vlax-get-acad-object))
  23.   (if(= 1(vla-get-ActiveSpace doc));(vla-get-ActiveDocument (vlax-get-acad-object))
  24.     (setq mspace (vla-get-modelspace doc))
  25.     (setq mspace (vla-get-PaperSpace doc))
  26.   )
  27.   (vlax-for block (lyt_vget vla-get-blocks)
  28.     (setq l-b (cons (vla-get-name block) l-b))
  29.   )
  30.   (if(member block_name l-b)
  31.     (T_220530block block_name)
  32.     (if (wcmatch block_name "~*.dwg")
  33.       (if  (findfile block_name);(setq block_name (findfile (strcat block_name ".dwg")))
  34.         (T_220530block block_name)
  35.         (progn
  36.           (setq bn(strcat block_name ".dwg"))
  37.           (if (findfile bn)
  38.             (T_220530block bn)
  39.             (progn
  40.               (setq bn(strcat block_name ".dxf"))
  41.               (if (findfile bn)
  42.                 (T_220530block bn)
  43.                 (princ str)
  44.               )
  45.             )
  46.           )
  47.         )
  48.       )
  49.       (if (findfile block_name)
  50.         (T_220530block block_name)
  51.         (princ str)
  52.       )
  53.     )
  54.   )
  55.   ;(vl-doc-ref 'vla-get-PaperSpace)
  56.   ;(vlax-release-object (vla-get-Document (vlax-get-acad-object)))
  57.   (vlax-release-object doc)
  58.   (vlax-release-object (vlax-get-acad-object))
  59.   (setq e2 (entlast))
  60.   (if (not(equal e1 e2))
  61.     e2
  62.     nil
  63.   )
  64. )


 楼主| 发表于 2022-8-17 09:46:28 | 显示全部楼层
见鬼了,怪不得没人回复,出现这个估计是个别情况
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-15 15:15 , Processed in 0.157989 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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