明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2072|回复: 4

[求助]这个函数怎样修改?

[复制链接]
发表于 2003-9-1 18:16:00 | 显示全部楼层 |阅读模式
这是meflying版主写的一个函数,请问怎样处理在创建图层的同时,并且创建此图层的线型(laylinetype)
  1. (defun AddLayer (LayerName LayerColor / AcadDocument LayerSel LayerObj)
  2.      (setq AcadDocument (vla-get-activedocument (vlax-get-acad-object)))
  3.      (setq LayerSel (vla-get-layers AcadDocument))
  4.      (setq LayerObj (vl-catch-all-apply 'vla-item (list LayerSel Layername)))
  5.      (if (vl-catch-all-error-p LayerObj)
  6.        (progn
  7.          (setq LayerObj (vla-add LayerSel LayerName))
  8.          (vla-put-color LayerObj LayerColor)
  9.        )
  10.      )
  11.      (vla-put-activeLayer AcadDocument LayerObj)
  12.      (princ)
  13.    )
  14. (AddLayer 11 3)
发表于 2003-9-1 18:25:00 | 显示全部楼层
(vl-put-linetype layerobj laylinetype)
laylinetype必须已经加载
 楼主| 发表于 2003-9-2 14:14:00 | 显示全部楼层
其实先前我是用vl-put-linetype函数试验过,可总是出错,可能是“laylinetype“线型没有加载的缘故吧。
  谢了!
发表于 2003-9-4 08:05:00 | 显示全部楼层
(defun ADDLAYER        (LAYERNAME        LAYERCOLOR     LAYERLINETYPE
                 /                ACADDOCUMENT   LAYERSEL
                 LAYEROBJ
                )
  (setq ACADDOCUMENT (vla-get-activedocument (vlax-get-acad-object)))
  (setq LTYPE (vla-get-linetypes ACADDOCUMENT))
  (if (vl-catch-all-error-p
        (vl-catch-all-apply 'vla-item (list LTYPE LAYERLINETYPE))
      )
    (vla-load LTYPE
              LAYERLINETYPE
              "acad.lin"
    )
  )
  (setq LAYERSEL (vla-get-layers ACADDOCUMENT))
  (if (vl-catch-all-error-p
        (vl-catch-all-apply 'vla-item (list LAYERSEL LAYERNAME))
      )
    (progn
      (setq LAYEROBJ (vla-add LAYERSEL LAYERNAME))
      (vla-put-color LAYEROBJ LAYERCOLOR)
      (vla-put-linetype LAYEROBJ LAYERLINETYPE)
    )
  )
  (vla-put-activelayer ACADDOCUMENT LAYEROBJ)
  (vlax-release-object ACADDOCUMENT)
  (vlax-release-object LAYERSEL)
  (princ)
)
;;(ADDLAYER 11 3 "hidden2")
 楼主| 发表于 2003-9-5 13:15:00 | 显示全部楼层
太好了!高手就是高手。
唉!我太崇拜你了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 22:40 , Processed in 0.162729 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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