热度 2 |
VxSetDrawOrder - Changes draw order of object(s) by given method
;
; -- Function VxSetDrawOrder
; Changes draw order of object(s) by given method.
; Copyright:
; ©2004 MENZI ENGINEERING GmbH, Switzerland
; Arguments [Type]:
; Obl = Object list [LIST]
; Tob = Target object [VLA-OBJECT] *)
; or nil
; Mde = Draw order method [SYMBOL]
; Methods:
; - 'MoveToTop
; - 'MoveToBottom
; - 'MoveAbove
; - 'MoveBelow
; Return [Type]:
; - True = VxSetDrawOrder succeed [BOOLEAN]
; - False = VxSetDrawOrder failed [BOOLEAN]
; Notes:
; *) Draw order methods 'MoveAbove and 'MoveBelow require
; a target object (Tob) as target of the draw order.
; - AutoCAD 2k5+ only (Bug? <2k5 missing class 'AcDbSortentsTable')
;
(defun VxSetDrawOrder (Obl Tob Mde / ExtDic SreTbl)
(or Gb:AcO (setq Gb:AcO (vlax-get-acad-object)))
(or Gb:AcD (setq Gb:AcD (vla-get-ActiveDocument Gb:AcO)))
(setq ExtDic (vla-GetExtensionDictionary (vla-get-ModelSpace Gb:AcD)))
(if (vl-catch-all-error-p
(setq SreTbl (vl-catch-all-apply
'vla-Item (list ExtDic "ACAD_SORTENTS")
)
)
)
(setq SreTbl (vla-AddObject ExtDic "ACAD_SORTENTS" "AcDbSortentsTable"))
)
(cond
((vl-position Mde '(MoveToTop MoveToBottom))
(not (vlax-Invoke SreTbl Mde Obl))
)
(Tob
(not (vlax-Invoke SreTbl Mde Obl Tob))
)
)
)
|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园
( 辽ICP备15016793号 )
GMT+8, 2025-12-13 14:34 , Processed in 0.260794 second(s), 25 queries , Gzip On.
Powered by Discuz! X3.5
© 2001-2025 Discuz! Team.