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

ADN Club => AutoCAD .NET API => Тема начата: Alexx от 14-04-2016, 10:38:03

Название: Непонятное поведение полей у Dimension
Отправлено: Alexx от 14-04-2016, 10:38:03
Добрый день!

Столкнулся со следующей проблемой: при попытке задать код поля у объекта Dimension, код задается нормально, но при открытии чертежа изменения не отображаются. Вот код:

Код - C# [Выбрать]
  1. using (var tr = db.TransactionManager.StartOpenCloseTransaction())
  2. {
  3.     var dim = (Dimension)tr.GetObject(dimId, OpenMode.ForWrite);
  4.     if(dim.HasFields)
  5.     {
  6.         var fld = (Field)tr.GetObject(obj.GetField(), OpenMode.ForWrite);
  7.         var code = fld.GetFieldCode(FieldCodeFlags.AddMarkers | FieldCodeFlags.FieldCode);
  8.         code = "TESTING" + code;
  9.         fld.SetFieldCode(code);
  10.         fld.Evaluate();
  11.     }
  12.     tr.Commit();
  13. }
  14.  

Если после этого сохранить чертеж, потом открыть его и получить код поля, то значение будет именно то, что мы задаем. Однако, в AutoCAD Dimension будет иметь прежний вид до тех пор пока не начнешь его редактировать. Войдя в режим редактирования, значение Dimension тут же изменится на то, что мы задавали.

Для объектов MText подобный код работает отлично.

В чем может быть проблема?
Название: Re: Непонятное поведение полей у Dimension
Отправлено: Александр Ривилис от 14-04-2016, 10:49:31
Давай полный тестовый проект, пример чертежа с размером и укажи версию AutoCAD. Посмотрю в чем может быть проблема.
Название: Re: Непонятное поведение полей у Dimension
Отправлено: Alexx от 14-04-2016, 11:16:28
Версия AutoCAD 2014
Название: Re: Непонятное поведение полей у Dimension
Отправлено: Александр Ривилис от 14-04-2016, 11:48:28
Сейчас нет возможности проверить. Попробуй добавить еще dim.RecomputeDimensionBlock
Название: Re: Непонятное поведение полей у Dimension
Отправлено: Александр Ривилис от 14-04-2016, 12:03:49
Смог проверить в AutoCAD 2013 - dim.RecomputeDimensionBlock(true); в строке 47 помогает.
Название: Re: Непонятное поведение полей у Dimension
Отправлено: Alexx от 14-04-2016, 12:31:50
Александр, спасибо огромное! В очередной раз выручили  :)