Как читать свойства Custom из чертежа
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как читать свойства Custom из чертежа

Как читать свойства Custom из чертежа

Ответ
Поиск в этой теме
Непрочитано 26.02.2009, 16:38 #1
Как читать свойства Custom из чертежа
viter_alex
 
Начальник отдела комплексной автоматизации
 
Альфа Центавра знаешь? Тамошние мы.
Регистрация: 03.03.2008
Сообщений: 108

Если зайти в File→Drawing Properties, то там есть вкладка Custom, куда можно добавлять свои свойства. Вопрос в том, как их оттуда прочитать. Я так понимаю, что по-хорошему должна быть коллекция, куда эти свойства записываются. Посмотрел свойства ThisDrawing, но нашел только SummaryInfo
Интересует пока только VBA

В справке написано:
«Custom Tab (Drawing Properties Dialog Box)
Assigns custom properties to the drawing. For example, you could create a custom property called Project and assign the actual project name as the value. To assign the same custom properties to a group of drawings, create the custom properties in a drawing template file.

Custom properties are displayed in the list of field names in the Field dialog box. You also have access to the properties data using programming interfaces, such as AutoLISP®.» Они хотят сказать, что только через AutoLISP можно это наковырять?
__________________
Лучше день потерять - потом за пять минут долететь!

Последний раз редактировалось viter_alex, 26.02.2009 в 16:50.
Просмотров: 5114
 
Непрочитано 26.02.2009, 16:56
#2
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


LISP: DwgRuLispLib: Функции чтения и установки свойств рисунка (_dwgprops)
Arx: ObjectARX. Получение/изменение из AutoLisp свойств чертежа (Summary Info)
VBA:
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 26.02.2009, 17:25
#3
viter_alex

Начальник отдела комплексной автоматизации
 
Регистрация: 03.03.2008
Альфа Центавра знаешь? Тамошние мы.
Сообщений: 108
<phrase 1= Отправить сообщение для viter_alex с помощью Skype™


Ай-я-яй, как все запущено. Подключать дополнительные библиотеки, запускать скрипты, а если еще и на нескольких машинах, да не один раз.
Значит, VBA — никак? «Много еще не доработано»©
__________________
Лучше день потерять - потом за пять минут долететь!
viter_alex вне форума  
 
Непрочитано 26.02.2009, 18:07
#4
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от viter_alex Посмотреть сообщение
Посмотрел свойства ThisDrawing, но нашел только SummaryInfo
Интересует пока только VBA
Это оно и есть. Внимательно посмотри на методы работы с Custom в нем.
Александр Ривилис вне форума  
 
Автор темы   Непрочитано 26.02.2009, 18:23
#5
viter_alex

Начальник отдела комплексной автоматизации
 
Регистрация: 03.03.2008
Альфа Центавра знаешь? Тамошние мы.
Сообщений: 108
<phrase 1= Отправить сообщение для viter_alex с помощью Skype™


Цитата:
Сообщение от Александр Ривилис Посмотреть сообщение
Это оно и есть. Внимательно посмотри на методы работы с Custom в нем.
Кто же знал, что там есть методы! Спасибо
__________________
Лучше день потерять - потом за пять минут долететь!
viter_alex вне форума  
 
Непрочитано 26.02.2009, 23:31
#6
Олег (jr.)

специалист по околачиванию грушевых деревьев
 
Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 811


Переделанный пример из Help
Не нашел ссылку на оригинальный пост

Цитата:
What I got was an example from Autocad, but I can easily modify it to work.
Here it is...
Код:
[Выделить все]
   'by Matersammichman 
Sub Example_SummaryInfo()
   ' This example shows how to access drawing properties
            
   ' Add and display standard properties
   ThisDrawing.SummaryInfo.Author = "John Doe"
   ThisDrawing.SummaryInfo.Comments = "Includes all ten levels of Building Five"
   ThisDrawing.SummaryInfo.HyperlinkBase = "http://www.autodesk.com"
   ThisDrawing.SummaryInfo.Keywords = "Building Complex"
   ThisDrawing.SummaryInfo.LastSavedBy = "JD"
   ThisDrawing.SummaryInfo.RevisionNumber = "4"
   ThisDrawing.SummaryInfo.Subject = "Plan for Building Five"
   ThisDrawing.SummaryInfo.Title = "Building Five"

   Author = ThisDrawing.SummaryInfo.Author
   Comments = ThisDrawing.SummaryInfo.Comments
   HLB = ThisDrawing.SummaryInfo.HyperlinkBase
   KW = ThisDrawing.SummaryInfo.Keywords
   LSB = ThisDrawing.SummaryInfo.LastSavedBy
   RN = ThisDrawing.SummaryInfo.RevisionNumber
   Subject = ThisDrawing.SummaryInfo.Subject
   Title = ThisDrawing.SummaryInfo.Title
   MsgBox "The standard drawing properties are " & vbCrLf & _
          "Author = " & Author & vbCrLf & _
          "Comments = " & Comments & vbCrLf & _
          "HyperlinkBase = " & HLB & vbCrLf & _
          "Keywords = " & KW & vbCrLf & _
          "LastSavedBy = " & LSB & vbCrLf & _
          "RevisionNumber = " & RN & vbCrLf & _
          "Subject = " & Subject & vbCrLf & _
          "Title = " & Title & vbCrLf

   ' Add and display custom properties
   Dim Key0 As String
   Dim Value0 As String
   Dim Key1 As String
   Dim Value1 As String
   Dim CustomPropertyBranch As String
   Dim PropertyBranchValue As String
   Dim CustomPropertyZone As String
   Dim PropertyZoneValue As String

   CustomPropertyBranch = "Branch"
   PropertyBranchValue = "Main"
   CustomPropertyZone = "Zone"
   PropertyZoneValue = "Industrial"

   ' Add custom properties
   If (ThisDrawing.SummaryInfo.NumCustomInfo >= 1) Then
      ThisDrawing.SummaryInfo.SetCustomByIndex 0, CustomPropertyBranch, PropertyBranchValue
   Else
      ThisDrawing.SummaryInfo.AddCustomInfo CustomPropertyBranch, PropertyBranchValue
   End If

   If (ThisDrawing.SummaryInfo.NumCustomInfo >= 2) Then
       ThisDrawing.SummaryInfo.SetCustomByKey CustomPropertyBranch, "Satellite"
   Else
       ThisDrawing.SummaryInfo.AddCustomInfo CustomPropertyZone, PropertyZoneValue
   End If

   'Get custom properties
   ThisDrawing.SummaryInfo.GetCustomByIndex 0, Key0, Value0
   Key1 = CustomPropertyZone
   ThisDrawing.SummaryInfo.GetCustomByKey Key1, Value1

   MsgBox "The custom drawing properties are " & vbCrLf & _
          "First property name = " & Key0 & vbCrLf & _
          "First property value = " & Value0 & vbCrLf & _
          "Second property name = " & Key1 & vbCrLf & _
          "Second property value = " & Value1 & vbCrLf
End Sub
~'J'~
Олег (jr.) вне форума  
 
Автор темы   Непрочитано 27.02.2009, 10:03
#7
viter_alex

Начальник отдела комплексной автоматизации
 
Регистрация: 03.03.2008
Альфа Центавра знаешь? Тамошние мы.
Сообщений: 108
<phrase 1= Отправить сообщение для viter_alex с помощью Skype™


Всем спасибо, я разобрался. Тему можно закрывать.
__________________
Лучше день потерять - потом за пять минут долететь!
viter_alex вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как читать свойства Custom из чертежа



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как уменьшить масштаб чертежа VikinGT AutoCAD 21 10.11.2023 08:30
Как именно настроить параметры нового чертежа? Макс_Северянин AutoCAD 31 01.09.2010 10:16
Как опустить на один уровень все элементы 2D чертежа Moris AutoCAD 8 24.01.2009 11:59
Как мне из чертежа 2D зделать 3D? KKS AutoCAD 2 13.09.2004 10:34
Как добавить в файл чертежа его имя (файла) ? Shura AutoCAD 7 02.12.2003 18:03