ADN Club > AutoLisp / VisualLISP и DCL

Свойства чертежа через AutoLisp

(1/2) > >>

SilverWork:
Можно ли как-то получить значения свойств чертежа (_dwgprops) с помощью AutoLisp?
Видел форуме решение через .NET, а вот на лиспе не смог найти.

Александр Ривилис:
SilverWork,
Тут готовое решение: http://maestrogroup.com.ua/support/getdwgprops.zip

SilverWork:
Спасибо. Это решение я видел.
Т.е. стандартными средствами AutolLisp в открытом чертеже эту информацию не получить?
Я думал, что надо просто какой-то словарь прочитать.

Александр Ривилис:
SilverWork,
Пример из документации:

--- Код - Auto/Visual Lisp [Выбрать] ---(vl-load-com)(defun c:Example_SummaryInfo()    ;; This example shows how to access drawing properties    (setq acadObj (vlax-get-acad-object))    (setq doc (vla-get-ActiveDocument acadObj))    (setq summaryInfo (vla-get-SummaryInfo doc))      ;; Add and display standard properties    (vla-put-Author summaryInfo "John Doe")    (vla-put-Comments summaryInfo "Includes all ten levels of Building Five")    (vla-put-HyperlinkBase summaryInfo "http://www.autodesk.com")    (vla-put-Keywords summaryInfo "Building Complex")    (vla-put-LastSavedBy summaryInfo "JD")    (vla-put-RevisionNumber summaryInfo "4")    (vla-put-Subject summaryInfo "Plan for Building Five")    (vla-put-Title summaryInfo "Building Five")     (setq author (vla-get-Author summaryInfo))    (setq comments (vla-get-Comments summaryInfo))    (setq HLB (vla-get-HyperlinkBase summaryInfo))    (setq KW (vla-get-Keywords summaryInfo))    (setq LSB (vla-get-LastSavedBy summaryInfo))    (setq RN (vla-get-RevisionNumber summaryInfo))    (setq subject (vla-get-Subject summaryInfo))    (setq Title (vla-get-Title summaryInfo))    (alert (strcat "The standard drawing properties are "                   "\nAuthor = " author                   "\nComments = " comments                   "\nHyperlinkBase = " HLB                   "\nKeywords = " KW                   "\nLastSavedBy = " LSB                   "\nRevisionNumber = " RN                   "\nSubject = " Subject                   "\nTitle = " Title           )    )      ;; Add and display custom properties    (setq CustomPropertyBranch "Branch")    (setq PropertyBranchValue "Main")    (setq CustomPropertyZone "Zone")    (setq PropertyZoneValue "Industrial")     ;; Add custom properties    (if (>= (vla-NumCustomInfo summaryInfo) 1)        (vla-SetCustomByIndex summaryInfo 0 CustomPropertyBranch PropertyBranchValue)        (vla-AddCustomInfo summaryInfo CustomPropertyBranch PropertyBranchValue)    )     (if (>= (vla-NumCustomInfo summaryInfo) 2)        (vla-SetCustomByKey summaryInfo CustomPropertyBranch "Satellite")        (vla-AddCustomInfo summaryInfo CustomPropertyZone PropertyZoneValue)    )     ;; Get custom properties    (vla-GetCustomByIndex summaryInfo 0 'Key0 'Value0)    (setq Key1 CustomPropertyZone)    (vla-GetCustomByKey summaryInfo Key1 'Value1)      (alert (strcat "The custom drawing properties are "                   "\nFirst property name = " Key0                   "\nFirst property value = " Value0                   "\nSecond property name = " Key1                   "\nSecond property value = " Value1           )    )) 

SilverWork:
Спасибо.

Еще вот тут https://forums.autodesk.com/t5/vba/reading-part-of-dwg-props/td-p/297354 нашел вариант прочитать словарь DWGPROPS, но пока еще не проверял.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии