Последние сообщения

Последние сообщения

Страницы: [1] 2 3 ... 10
1
AutoCAD .NET API / Re: Скачет таблица
« Последний ответ от Дмитрий Загорулькин 21-01-2018, 11:10:37 »
А есть возможность тот же код проверить в 2016 версии? И ещё такой момент - после регенерации чертежа таблица встаёт на правильное место?
2
AutoCAD .NET API / Re: Скачет таблица
« Последний ответ от RevitTormentor 21-01-2018, 09:10:44 »
Autocad 2017x64
Вечером файл постараюсь выложить. Но после сохранения и открытия снова, таблицы ставятся на свои места и данного эффекта уже нет. Т.е. в файле который будет здесь уже ничего не будет. Думаю, что Или транзакцию не там закрываю/открываю. Блокирую документ не там или вообще не надо его блокировать. Или не там задаю установку позиции для таблицы. Может это надо делать после добавления
Код - C# [Выбрать]
  1.                    table1Id = currentSpace.AppendEntity(tableGroup);
  2.                     tr.AddNewlyCreatedDBObject(tableGroup, true);
Проверить сейчас не могу.
Так как после сохранения и повторного открытия всё нормально - думаю что что-то с транзакциями или добавлением таблицы в базу.
3
AutoCAD .NET API / Re: Скачет таблица
« Последний ответ от Александр Ривилис 21-01-2018, 01:18:19 »
Вообще-то интересно глянуть на эту таблицу (dwg-файл) и уточнить версию AutoCAD.
4
AutoCAD .NET API / Скачет таблица
« Последний ответ от RevitTormentor 21-01-2018, 01:17:06 »
Доброй ночи. Ни у кого не было, что таблица сделанная программно жёстко привязана к координатам её установки? В ручном режиме выделяю таблицу и пытаюсь её перенести, она переносится, когда мышку отпускаю визуально таблица возвращается на место, а ручки остаются там куда я хотел перенести таблицу.

Если кто сталкивался - как решили?
Спасибо

5
ObjectARX / Re: окно Map 3D Select Attributes
« Последний ответ от Александр Ривилис 20-01-2018, 21:54:44 »
Как бы воспользоваться этим готовым инструментом - Select Attributes - для своих программ? Как-то можно его вызывать самим?
Никак. Только самостоятельно переписать.
6
ObjectARX / Re: окно Map 3D Select Attributes
« Последний ответ от АлексЮстасу 20-01-2018, 21:09:55 »
Такое же окно в Map 3D, но с названием Expression Chooser появляется при определении Text style из Display manager.
Кажется, оно еще где-то в Map 3D встречается.
7
ObjectARX / окно Map 3D Select Attributes
« Последний ответ от АлексЮстасу 20-01-2018, 18:18:21 »
В Map 3D есть окно Select Attributes - удобно и быстро выбирается любое свойство объекта, из которого следует брать значение.
В базовом Автокаде, наверное, ближайший аналог - процесс определения поля атрибута или текста. Но выбор нужного свойства сделан при этом многоэтапным и не таким удобным.
Как бы воспользоваться этим готовым инструментом - Select Attributes - для своих программ? Как-то можно его вызывать самим?
Хотя бы в Map 3D. А, в принципе, и из базового Автокада. Кроме Object Data из Map 3D, все остальные свойства обычные автокадовские.

Или, может, подобное уже существует и для базового Автокада?
8
В этот список можно было бы внести книгу Мартина Фаулера "Шаблоны корпоративных приложений", а также книгу Шевчука/Охрименко/Касьянова Design Patterns via C# (Приёмы объектно - ориентированного проектирования)
9
VBA / Re: Вставка статичного блока в ячейку таблицы Autocad
« Последний ответ от pavka_97 18-01-2018, 22:45:59 »
ssName = "ssName".
Дьявол кроется в деталях. Заработало абсолютно все. Я был в шаге от отчаяния:). Спасибо вам огромное за участие, пошел усложнять дальше:)
10
pavka_97
Посмотрел я более внимательно код. Так он у тебя и не должен работать. Ты не задаёшь значение ssName. И так как обработчик ошибок блокирует все ошибки, то ты и не видишь что код ничего не делает.
Например, твой ChangeValue должен выглядеть как-то так:

Код - Visual Basic [Выбрать]
  1. Sub ChangeValue()
  2.   Dim ssName As String
  3.   Dim ssetobj As AcadSelectionSet
  4.   Dim blk2 As AcadBlockReference
  5.   Dim Attributes As Variant
  6.   ssName = "ssName" ' задали значение ssName
  7.  On Error Resume Next
  8.   ThisDrawing.SelectionSets.Item(ssName).Delete
  9.   On Error GoTo 0
  10.   Set ssetobj = ThisDrawing.SelectionSets.Add(ssName)
  11.  
  12.   Dim gpCode(0 To 1) As Integer
  13.   Dim dataValue(0 To 1) As Variant
  14.  
  15.   gpCode(0) = 0: dataValue(0) = "INSERT"
  16.   gpCode(1) = 2: dataValue(1) = "111"
  17.   ssetobj.Select acSelectionSetAll, , , gpCode, dataValue
  18.      
  19.   For Each blk2 In ssetobj
  20.      
  21.      Attributes = blk2.GetAttributes
  22.      Attributes(0).TextString = "4"
  23.   Next
  24.        
  25. End Sub
Страницы: [1] 2 3 ... 10