-
Версия и номер сборки:
nanoCAD x64, версия 25, сборка 25.0.6895.4749 -
Операционная система:
Windows 11 Pro
Описание ситуации:
При наведении курсора рядом с определёнными объектами (без клика, просто hover, при включённой объектной привязке) программа завершается с неустранимой ошибкой (Access Violation, код 0xC0000005).
Стек вызовов на момент краша (идентичен во всех воспроизведённых случаях):
McGeL.dll → McGeNurbCurve3d::mcs_getSimplifiedCurve ← точка падения
McGeL.dll → splinePiecePolygonHull::splinePiecePolygonHull
TD_DbCore_csd.dll → OdDbEntity::subGetOsnapPoints
TD_DbCore_csd.dll → OdDbOsnapOverrule::getOsnapPoints
TD_DbCore_csd.dll → OdDbEntity::getOsnapPoints
Падение происходит в момент построения упрощённой формы/оболочки (hull) фрагмента NURBS-кривой при расчёте точек объектной привязки. Функция не справляется с вырожденными (сверхкороткими, близкими к нулевой длине) фрагментами сплайновой геометрии — как у самостоятельных объектов, так и у отдельных сегментов внутри составных кривых (PolyCurve), которые сами по себе нормальной длины и формы.
Геометрия исходно построена в Rhino 3D и экспортирована в DWG. Полное описание трёх воспроизведённых сценариев, что было исключено в ходе диагностики, и временные обходные пути — во вложенном файле.
Какие действия уже предприняты для решения:
AUDIT и RECOVER ошибку не устраняют
- Выявлена и воспроизведена причина через анализ BlackBox-лога (стек вызовов приложен)
- Найдены и подтверждены обходные пути на стороне пользователя (очистка/пересборка геометрии в Rhino перед экспортом) — см. вложенный файл
- Собран минимальный воспроизводимый тестовый DWG-файл
Прикладываю: полное описание диагностики.
Полное описание проблемы и диагностики.txt (11,5 КБ)
Файлы, созданные программой и полные файлы логов (blackbox.log, blackbox.mdmp) не публикую в открытом доступе по соображениям конфиденциальности — готов передать напрямую разработчику при необходимости.