马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×

- 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))
- )
- )
- )
|