Еще одна версия-заплатка 2026.08.02

 Опубликована еще одна версия-заплатка 2026.08.02. Исправления малозаметные, но важные.


- DataTable и все программы составляющие списки объектов чертежа теперь не делают сравнение размеров с допуском. Вместо этого размеры квантуются (округляются). Шаг квантования = Линейная Точность.

- DataTable, Saw: устранены ошибки сортировки и объединения солидов в одну деталь из-за допусков точности.

- DataTable: теперь работает с блоками, ложно помеченными как динамические.

- AvcOptions: изменилась страничка «О программе». Самое неважное, но заметное :) Пути к папкам плагина и меню кликабельны.

- Общие настройки: поле «Линейная точность» теперь имеет выпадающий список, адаптированный к единицам измерения текущего чертежа.

- Исправлена ​​ошибка PathTooLongException в старых версиях AutoCAD и BricsCAD при открытии чертежей из папок с длинными именами.

- Исправлены ошибки в Раскладка (Nesting), LeaderUpdate, PlaceLeaders, DwgTree, AvcPalette.

Чуть подробнее про "квантование" размеров.

Иногда программы AVC выдавали странный сбой сортировки списков деталей. Что-то там программа писала про нарушение транзитивности сравнения. Пришлось разбираться что это такое. И выяснилось, что весь код написан принципиально неправильно. 

Теперь при поиске одинаковых объектов больше не производится сравнение с допуском:

 |A-B| < Tolerance

Вместо этого сразу после обмера применяется квантование всех размеров, площадей, объемов и углов. А при сравнении проверяется обычное точное равенство A=B. Шаг квантования задается Линейной Точностью в общих настройках. Квантование - штука похожая на округление, но не связанная с десятичными разрядами числа. Для дюймовых чертежей удобнее квантовать по натуральной дроби 1/256, а это очень кривая цифра в десятичном виде. Но все размеры будут ровно делиться  на 1/256 без остатка = квантоваться.

Пример:

Раньше детали 500.049мм и 500.051мм считались одинаковыми, потому что разница размеров 0.002 меньше допуска 0.1. Теперь эти размеры квантуются с шагом 0.1 и получаем 500 и 500.1 - разные детали! Они получат разные номера и будут в разных строках таблиц. Сравнение с допуском выглядит логичнее, но вызывает сбои сортировки из-за нарушения транзитивности равенства (A=B и B=C, но иногда A≠C). 

Настройку Линейной Точности теперь следует обязательно переключать при смене единиц чертежа между дюймами и миллиметрами. 

Пожалуйста последите, как это все работает, возникают ли разные строки таблиц для одинаковых деталей или наоборот, не склеиваются ли разные детали в одну.



Комментарии

Популярные сообщения из этого блога

Методичка инженера-выставочника. Часть 7: Выставочный стенд: подиум, конструктор, 2ой этаж, подвеска.

Метод быстрого моделирования

Материалы деталей, кромки, покрытия - как их использовать в плагинах A>V>C>