Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: pavka_97 от 19-07-2020, 15:12:48

Название: Уникальный неизменяемый идентификатор листа подшивки
Отправлено: pavka_97 от 19-07-2020, 15:12:48
Метод:
Код - C# [Выбрать]
  1. sheet.GetLayout().GetAcDbHandle()
из разных файлов возвращает одинаковые handle (у меня например D3), handles листов одного файла -разные (например B93A
 и BB11).

В сторонней программе эти идентификаторы разные( формат: gBE3217DF-D274-4AFF-A537-2545F65097BF)

Есть ли метод, возвращающий уникальный неизменяемый идентификатор листа подшивки (или может есть способ перейти от D3 к gBE3217DF-D274-4AFF-A537-2545F65097BF)?
Название: Re: Уникальный неизменяемый идентификатор листа подшивки
Отправлено: Александр Ривилис от 19-07-2020, 16:43:14
pavka_97,
Всё что можно делать с Sheet описано здесь: http://help.autodesk.com/view/ACD/2017/ENU/?guid=GUID-C3AA3D37-1B2F-42DB-87ED-7738884F3499
Теоретически ты можешь присвоить ему любой уникальный идентификатор используя, например,
AcSmSheet.SetDesc
AcSmSheet.SetName
AcSmSheet.SetNumber
Само значение может быть типа GUID. Т.е. для его получения достаточно воспользоваться статическим методом Guid.NewGuid.ToString()
Название: Re: Уникальный неизменяемый идентификатор листа подшивки
Отправлено: pavka_97 от 19-07-2020, 18:22:12
Собственно я хотел "уникальность" создать за счет Title+Subset.Name. На всяк случай уточнил про handles. Спасибо.
Название: Re: Уникальный неизменяемый идентификатор листа подшивки
Отправлено: Александр Ривилис от 19-07-2020, 18:24:39
На всяк случай уточнил про handles
Handles - это метки объектов, которые уникальны, но только внутри dwg-файла и могут совпадать в разных dwg-файлах.
Название: Re: Уникальный неизменяемый идентификатор листа подшивки
Отправлено: pavka_97 от 20-07-2020, 08:39:34
Да да. Я надеялся у handles подшивки другой принцип. Логично вроде, что одновременно в структуре встречаются разные файлы.. и давать им одинаковые метки, причем сразу....ну да ладно.