Настройки размерного стиля

Автор Тема: Настройки размерного стиля  (Прочитано 16484 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
- AutoCAD 2015 x86 Enu.

В настройках размерного стиля программно назначено значение "Default" для некоторых опций LineWeight:
Код - C# [Выбрать]
  1. dimStyle.Dimlwd = LineWeight.ByLineWeightDefault; // -3 value
  2. dimStyle.Dimlwe = LineWeight.ByLineWeightDefault; // -3 value
  3.  
Однако по факту в диалоговом окне редактирования настроек для этих опций отображается значение "ByBlock" вместо "Default" (это не удивляет) и даже вместо значения 0.25 (а вот это уже настораживает).



Переменные Dimlwd и Dimlwe содержат верные значения: -3 (что соответствует варианту Default). В диалоговом окне "Lineweight Settings" в качестве Default назначено 0.25 mm.

Вопрос 1: почему в диалоговом окне "Modify Dimension Style" отображается значение "ByBlock" вместо ожидаемого мною 0.25, хотя назначено Default?

=======================================

Как программно изменить указанные настройки?





Сравнивая стили (до изменения и после) вижу разницу в следующем:





Однако ни переменных, ни свойств DIMMZF, DIMMZS, DIMALTMZF, DIMALTMZS не существует.

Вопрос 2: Как добраться до обозначенного контента, дабы изменить его программно?

===================================



Сравнение настроек до и после изменений не находят никаких различий:



Вопрос 3: Как добраться до обозначенных настроек дабы изменить их?

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #1 : 14-05-2014, 22:50:59 »
Пока по Вопрос 2:
Однако ни переменных, ни свойств DIMMZF, DIMMZS, DIMALTMZF, DIMALTMZS не существует.
Есть начиная с AutoCAD 2010 (в документации не нашел):
Код - C++ [Выбрать]
  1.     virtual double           dimmzf   () const;        // new to 2010
  2.     virtual const ACHAR *    dimmzs   () const;        // new to 2010
  3.     virtual double           dimaltmzf() const;        // new to 2010
  4.     virtual const ACHAR *    dimaltmzs() const;        // new to 2010
Аналогичные свойства должны быть и в AutoCAD .NET API (в 2015 точно есть)
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #2 : 14-05-2014, 22:53:41 »
я проверял как раз в 2015-м. Может уже к вечеру глаз замылился и очепятался... Завтра ещё раз проверю (сейчас нет возможности).

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #3 : 14-05-2014, 23:09:15 »
Судя по всему в AutoCAD .NET API не все свойства перенесли из ObjectARX. Я обратил внимание, что метод/свойство dimmzf в ObjectARX есть и для AcDbDatabase, и для AcDbDimension, и для AcDbDimStyleTableRecord, а в .NET только Autodesk.AutoCAD.DatabaseServices.Dimension.Dimmzf
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #4 : 14-05-2014, 23:12:14 »
я пробовал даже вручную, в консоли автокада, назначить значение переменной, но автокад писал, что мол "в первый раз слышу о таком".

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #5 : 15-05-2014, 00:09:06 »
Command: DIM
Dim: dimmzf
Enter new value for dimension variable <100.0000>: 100
Dim: exit
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #6 : 15-05-2014, 00:11:56 »
Хм... Я обычно напрямую вбиваю имя переменной в консоль. Т.е. в данном случае вбивал, насколько помню, dimmzf. Сейчас проверить не могу. Так же пробовал Application.SetVariable("dimmzf", 200) - исключение возникало.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #7 : 15-05-2014, 00:14:22 »
Как видишь часть размерных переменных не имеет аналога в системных переменных и управляется только через команду _DIM. Даже через _SETVAR это сделать нельзя:
Command: SETVAR Enter variable name or [?]: dimmzf
Unknown variable name.  Type SETVAR ? for a list of variables.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #8 : 15-05-2014, 00:15:11 »
я как раз выше об этом нацарапал. Так, и как тогда через .NET всё это хозяйство инициализировать? Не хочется к командной строке обращаться, честно говоря...

P.S. и там ещё пара вопросов "потерялось" по дороге... :)

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #9 : 15-05-2014, 00:24:04 »
Ну и если всё резюмировать, то в AutoCAD .NET API можно изменить эти переменные только через P/Invoke соответствующих методов из ObjectARX
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #10 : 15-05-2014, 00:25:02 »
Ну и если всё резюмировать
Все три вопроса?

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #11 : 15-05-2014, 00:47:49 »
Только второй.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #12 : 15-05-2014, 01:53:23 »
По третьему вопросу должна помочь эта картинка:

(это расширенные данные, т.е. Xdata, размерного стиля)
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #13 : 15-05-2014, 02:14:06 »
По первому вопросу я так и не понял почему ты решил, что у тебя будет значение 0.25 Или ты думаешь, что если изменишь значение веса линии по-умолчанию, и он сразу изменится в окне размерного стиля? Если так думал - то неправ. В тот момент, когда ты выбираешь из списка значение, если это неявное значение (типа Default, Bylayer и т.д.) AutoCAD вычисляет это значение (в твоём случае это 25) и выполняет что-то типа
Код - C# [Выбрать]
  1. dimStyle.Dimlwd = LineWeight.kLnWt025;
Ты можешь в этом убедится сам, если посмотришь значение соответствующей размерной переменной в размерном стиле.
Если ты сам назначил
Код - C# [Выбрать]
  1. dimStyle.Dimlwd = LineWeight.ByLineWeightDefault;
то при запуске команды _DIMSTYLE  AutoCAD находит ближайшее значение и показывает его. В данном случае Default и ByBlock скорее всего одинаковы.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #14 : 15-05-2014, 09:42:35 »
По первому вопросу я так и не понял почему ты решил, что у тебя будет значение 0.25
Я же там объяснил почему:
Цитировать
В диалоговом окне "Lineweight Settings" в качестве Default назначено 0.25 mm.
Т.е. LWDEFAULT == 0.25.

Или ты думаешь, что если изменишь значение веса линии по-умолчанию, и он сразу изменится в окне размерного стиля?
Я наблюдаю несколько различное поведение в AutoCAD 2009 и 2015 по данному вопросу.

Если опции Lineweight назначить значение Default, то в DIMLWD будет сохранено именно значение -3, а не скопировано то значение, которое хранится в LWDEFAULT. Если после этогоизменить LWDEFAULT на 60 (к примеру),  то при очередном открытии окна настроек размерного стиля эта опция будет показывать не слово Default, но слово ByBlock, что в корне неправильно, ибо  Default и ByBlock - это не одно и тоже: у них разное предназначение и значения разные!

Т.о. если я назначу DIMLWD значение -3, затем создам размер и изменю LWDEFAULT на 60, то толщины линий размера изменятся.

Цитировать
В данном случае Default и ByBlock скорее всего одинаковы.
Нет, не одинаковы. ByBlock равен -2 и указывает на то, что толщина линии должна каждый раз считываться из толщины линии, назначенной блоку, в состав которого входит примитив. Значение -3 указывает на то, что значение нужно каждый раз считывать из переменной LWDEFAULT.
« Последнее редактирование: 15-05-2014, 10:46:06 от Андрей Бушман »

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #15 : 15-05-2014, 10:13:12 »
внёс важные уточнения в моё предыдущее сообщение.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #16 : 15-05-2014, 11:22:21 »
Я наблюдаю несколько различное поведение в AutoCAD 2009 и 2015 по данному вопросу.
Я смотрел как это работает в AutoCAD 2015.
Если опции Lineweight назначить значение Default, то в DIMLWD будет сохранено именно значение -3, а не скопировано то значение, которое хранится в LWDEFAULT.
Ты сейчас про свой код или про диалоговое окно? У меня (в 2015) при изменении в диалоге сохраняется в DIMLWD размерного стиля не -3, а то значение, которое в LWDEFAULT
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #17 : 15-05-2014, 12:28:35 »
Вариант 1 (меняю значение переменных DIMLWD и DIMLWE через диалоговое окно):

1. Создаём новый документ на основе шаблона acadiso.dwt.
2. Задаём переменной LWDISPLAY значение ON.
3. Назначаем переменной LWDEFAULT значение 25.
4. В текущем размерном стиле, на вкладке Lines, в группах Dimension lines и Extension lines, назначаем опциям Lineweight значение Default.
5. Сохраняем настройки и закрываем окно редактирования размерного стиля.
6. Смотрим значение переменной DIMLWD.
7. Создаём в пространстве модели произвольный линейный размер.
8. Назначаем переменной LWDEFAULT значение 80.
9. Смотрим значение переменной DIMLWD.
10. Проверяем, изменили ли толщину линии созданного нами размера...
11. Открываем настройки размерного стиля и смотрим значения ранее изменённых нами опций Lineweight.
12. Назначаем переменной LWDEFAULT значение 25.
13. Открываем настройки размерного стиля и смотрим значения ранее изменённых нами опций Lineweight.

Результат 1:
6. 25
9. 25
10. Нет
11. 0.25
13. Default

Вариант 2 (меняю значение переменных DIMLWD и DIMLWE в консоли AutoCAD):

1. Создаём новый документ на основе шаблона acadiso.dwt.
2. Задаём переменной LWDISPLAY значение ON.
3. Назначаем переменной LWDEFAULT значение 25
4. Назначаем переменной DIMLWD значение -3
5. Назначаем переменной DIMLWE значение -3
6. Открываем настройки размерного стиля (помечен как <style owerrides>) и смотрим значения ранее изменённых нами опций Lineweight.
7. Создаём в пространстве модели произвольный линейный размер.
8. Назначаем переменной LWDEFAULT значение 80.
9. Проверяем, изменили ли толщину линии созданного нами размера...
10. Смотрим значение переменной DIMLWD
11. Смотрим значение переменной DIMLWE
12. Открываем окно Dimension Style Manager и из контекстного меню элемента <style owerrides> выбираем пункт "Save to current style". Закрываем окно.
13. Смотрим значение переменной DIMLWD
14. Смотрим значение переменной DIMLWE
15. Открываем настройки размерного стиля и смотрим значения ранее изменённых нами опций Lineweight.

Результат 2:
6. ByBlock
9. Да
10. -3
11. -3
13. -3
14. -3
15. ByBlock

Резюме:
Как видим, результаты отличаются. Логичным поведением варианта Default являлся бы тот случай, когда он хранил бы значение -3 и тем самым заставлял бы примитивы получать толщину, считывая её из LWDEFAULT. Однако это почему-то делает не вариант Default, а вариант ByBlock.

Вариант ByBlock, насколько мне известно, должен указывать примитивам считывать толщину из настроек блока, в состав которого они входят.

Поправьте меня, если я ошибаюсь.
« Последнее редактирование: 15-05-2014, 12:39:40 от Андрей Бушман »

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #18 : 15-05-2014, 12:50:30 »
Вариант 2 (меняю значение переменных DIMLWD и DIMLWE в консоли AutoCAD):
Это ты меняешь значения для Database, но не для текущего размерного стиля. Согласен, что Autodesk'овцы с этим перемудрили.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #19 : 15-05-2014, 12:54:34 »
Согласен, что Autodesk'овцы с этим перемудрили
Я бы скорее назвал это багом реализации: нелогичность поведения - это одна из разновидностей багов. Логичным поведением было бы то, которое я обозначил выше в резюме, причём это поведение я не с потолка взял, но, если мне не изменяет память, вычитал в документации Автодеска. Т.о. налицо некоторое несоответствие задумки с фактической реализацией. Проблему наблюдаю в 2009-м и 2015-м (промежуточные версии не проверял, но уверен, что там будет то же самое).

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #20 : 15-05-2014, 13:12:22 »
Это ты меняешь значения для Database, но не для текущего размерного стиля.
А что, размерный стиль у нас живёт вне базы данных чертежа? И почему это не для текущего? Эти изменения способствуют тому, что Автокад зачем-то создаёт производный (от текущего) стиль <style owerrides>. Однако этот "призрак" исчезает сразу же после выполнения следующих действий:
Код - C# [Выбрать]
  1. db.Dimstyle = dimStyle.ObjectId;
  2. db.SetDimstyleData(dimStyle);
Это приводит к тому, что<style owerrides> синхронизируется с текущим размерным стилем (т.е. переписывает в него свои изменения) и исчезает.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #21 : 15-05-2014, 13:16:10 »
И почему это не для текущего?
Потому что dimStyle.Dimlwd и db.Dimlwd - это разные вещи, в чем ты уже сам убедился.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #22 : 15-05-2014, 14:52:31 »
Потому что dimStyle.Dimlwd и db.Dimlwd - это разные вещи, в чем ты уже сам убедился.

Смотрим документацию разработчика:

Цитата: ObjectARX SDK Documentation
Database.Dimlwd Property
Accesses the current DIMLWD value for the dimension.
See the System Variables section of the AutoCAD Command Reference manual for information on DIMLWD.

DimStyleTableRecord.Dimlwd Property
Accesses the current DIMLWD value for the dimension.
See the System Variables section of the AutoCAD Command Reference manual for information on DIMLWD.

Dimension.Dimlwd Property
Accesses the current DIMLWD value for the dimension.
See the System Variables section of the AutoCAD Command Reference manual for information on DIMLWD.

Видим, что выполнен банальный копипаст текста без последующего внесения в него необходимых изменений. Т.е. по сути - мусор, вносящий дезинформацию.

Смотрим документацию пользователя (информация о переменной):

Цитата: AutoCAD 2009 Help
DIMLWD
Assigns lineweight to dimension lines. Values are standard lineweights.

Не густо, тоже ни о чём...

Тестирование:
Код - C# [Выбрать]
  1. [Rt.CommandMethod("Test", Rt.CommandFlags.Modal)]
  2. public void Test() {
  3.   Ap.Document doc = cad.DocumentManager.MdiActiveDocument;
  4.   if(doc == null)
  5.     return;
  6.   Ed.Editor ed = doc.Editor;
  7.   Db.Database db = doc.Database;
  8.   using(doc.LockDocument()) {
  9.     using(Db.Transaction tr = db.TransactionManager.StartTransaction()) {
  10.       Db.DimStyleTableRecord style = tr.GetObject(db.Dimstyle,
  11.         Db.OpenMode.ForWrite) as Db.DimStyleTableRecord;
  12.  
  13.       ed.WriteMessage("db.Dimlwd = {0}\n", db.Dimlwd);
  14.       ed.WriteMessage("style.Dimlwd = {0}\n\n", style.Dimlwd);
  15.  
  16.       ed.WriteMessage("Меняем значение db.Dimlwd.\n\n");
  17.  
  18.       db.Dimlwd = Db.LineWeight.LineWeight060;
  19.       // то же самое делает и SetSystemVariable:
  20.       // const String variable = "DIMLWD";
  21.       // cad.SetSystemVariable(variable, (Int16) 60);
  22.  
  23.       ed.WriteMessage("db.Dimlwd = {0}\n", db.Dimlwd);
  24.       ed.WriteMessage("style.Dimlwd = {0}\n\n", style.Dimlwd);
  25.  
  26.       ed.WriteMessage("Меняем значение style.Dimlwd.\n\n");
  27.  
  28.       style.Dimlwd = Db.LineWeight.LineWeight035;
  29.  
  30.       ed.WriteMessage("db.Dimlwd = {0}\n", db.Dimlwd);
  31.       ed.WriteMessage("style.Dimlwd = {0}\n\n", style.Dimlwd);
  32.       ed.WriteMessage("db.Dimstyle {0}= style.ObjectId\n\n",
  33.         db.Dimstyle == style.ObjectId ? "=" : "!");
  34.  
  35.       ed.WriteMessage("Выполняем SetDimstyleData.\n\n");
  36.  
  37.       db.Dimstyle = style.ObjectId;
  38.       db.SetDimstyleData(style);
  39.  
  40.       ed.WriteMessage("db.Dimlwd = {0}\n", db.Dimlwd);
  41.       ed.WriteMessage("style.Dimlwd = {0}\n", style.Dimlwd);
  42.       ed.WriteMessage("db.Dimstyle {0}= style.ObjectId\n\n",
  43.         db.Dimstyle == style.ObjectId ? "=" : "!");
  44.  
  45.       tr.Commit();
  46.     }
  47.   }
  48. }

Цитата: Результат
db.Dimlwd = ByBlock
style.Dimlwd = ByBlock

Меняем значение db.Dimlwd.

db.Dimlwd = LineWeight060
style.Dimlwd = ByBlock

Меняем значение style.Dimlwd.

db.Dimlwd = LineWeight060
style.Dimlwd = LineWeight035

db.Dimstyle == style.ObjectId

Выполняем SetDimstyleData.

db.Dimlwd = LineWeight035
style.Dimlwd = LineWeight035
db.Dimstyle == style.ObjectId

Я раньше думал, что свойства базы данных, подобные Dimlwd - это всего лишь своего рода более удобный способ сослаться на конкретные настройки стиля (чтобы не заниматься получением объекта стиля с последующим извлечением значения его свойства).

1. Для чего так сделано?
2. Для чего в размерных стилях порой появляется тот самый <style owerrides>?

В документации, как видим, я ничего не нашёл.
« Последнее редактирование: 15-05-2014, 15:05:29 от Андрей Бушман »

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #23 : 15-05-2014, 15:08:11 »
3. Почему изменение одних переменных не приводят к возникновению <style owerrides>, а другие приводят? Зачем реализовано такое поведение?

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #24 : 15-05-2014, 15:08:45 »
1. Для чего так сделано?
2. Для чего в размерных стилях порой появляется тот самый <style owerrides>?
Так сделано было еще лет двадцать назад. Почему так - это к Autodesk, если там остались люди, которые помнят зачем было сделано именно так.
P.S.: По третьему вопросу ответ тотже.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #25 : 15-05-2014, 15:26:02 »
Чтобы в металлическом ведре принести воды, нужно:

1. Припаять ведру дно.
2. Набрать воду и отнести её куда надо (не забыть вылить).
3. Отпилить дно у ведра.

На вопрос "зачем отпиливать и снова припаивать дно?", ответ простой: "всегда так делаем (традиция), а почему - не помним уже"...

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #26 : 15-05-2014, 15:31:27 »
Ok! Когда появилась в AutoCAD возможность ставить размеры изначально отсутствовало понятие размерных стилей и все настройки были глобальными. На основе их и создавались размеры. Затем появились размерные стили и они начали входить в противоречие с глобальными настройками размеров. Почему не убрали глобальные настройки (т.е. глобальные размерные пе6ременные) - я не знаю. Возможно потому, что часть из них имеет отношение не только к размерам (например, DIMZIN), возможно причина более глубокая.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Дима_

  • ADN Club
  • ****
  • Сообщений: 473
  • Карма: 66
Re: Настройки размерного стиля
« Ответ #27 : 15-05-2014, 17:56:37 »
Если немного сократить то пожалуй такая картина не только у размеров:
Когда появилась в AutoCAD возможность... Затем появились ... и они начали входить в противоречие с ... Почему не ... я не знаю. Возможно потому, что ..., возможно причина более глубокая.
Наверное пора уже автодеску "Взять все и поделить" переписать.
з.ы. иначе рано или поздно это сделает кто-то другой...

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #28 : 15-05-2014, 17:58:49 »
Некогда, т.к. нужно 2020-ю версию наскоро собирать и "Свидетелей Иеговы" готовить к очередному пришествию...

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Настройки размерного стиля
« Ответ #29 : 15-05-2014, 17:59:08 »
Наверное пора уже автодеску "Взять все и поделить" переписать.
Кто-то предпочитает революции, кто-то эволюции...
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Настройки размерного стиля
« Ответ #30 : 15-05-2014, 18:04:06 »
Кто-то предпочитает революции, кто-то эволюции...
и кто-то очередную, ежегодную залепуху (забыли добавить). :)