Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 2999 - Не отрисовывается текст условного обозначения   Make a simular bug
Summary: Не отрисовывается текст условного обозначения
Status: CLOSED FIXED
Alias: None
Product: КОМПАС 3D
Classification: Поддержка проектов
Component: Тестирование (show other bugs)
Version: v10
Hardware: PC All
: P2 critical
Target Milestone: ---
Assignee: Anton Rudnev
QA Contact: Денис Баранов
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 753 961 1732 3106
  Show dependency treegraph
 
In work:
Reported: 2008-11-24 13:37 MSK by Виталий Булгаков
Modified: 2024-03-04 14:58 MSK (History)
9 users (show)

See Also:
Заявки RT:
Связано с:
Дата напоминания:


Attachments
архив с примером (14.90 KB, application/zip)
2010-11-18 03:58 MSK, Виталий Булгаков
Details
WINE: Скриншот при выбранной модели (текста А нет) (15.70 KB, image/png)
2010-11-18 03:58 MSK, Vitaly Lipatov
Details
WINE: Скриншот при выбранном пункте обозначения базы (текст А есть) (18.55 KB, image/png)
2010-11-18 03:58 MSK, Vitaly Lipatov
Details
Пример детали с проблемой (60.08 KB, application/octet-stream)
2010-11-18 03:58 MSK, Vitaly Lipatov
Details
Вид детали под Windows (15.50 KB, image/png)
2010-11-18 03:58 MSK, Vitaly Lipatov
Details
Скрин WINEvsWindows с выделенным обозначением (3.37 KB, image/png)
2010-11-18 03:58 MSK, Константин Кондратюк
Details
ещё скрин (10.83 KB, image/png)
2010-11-18 03:58 MSK, Константин Кондратюк
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Виталий Булгаков 2008-11-24 13:37:35 MSK
Created attachment 915 [details]
архив с примером

Открыть файл из вложения. В прямоугольнике условного обозначения базы д.б. отрисован текст А. 
Как это должно быть можно увидеть открыв тот же файл в КОМПАС под Windows
Comment 1 Александр Пликус 2008-12-04 13:03:39 MSK
надо воспроизвести...
Comment 2 Vitaly Lipatov 2008-12-04 13:38:31 MSK
Created attachment 945 [details]
WINE: Скриншот при выбранной модели (текста А нет)
Comment 3 Vitaly Lipatov 2008-12-04 13:39:49 MSK
Created attachment 946 [details]
WINE: Скриншот при выбранном пункте обозначения базы (текст А есть)
Comment 4 Vitaly Lipatov 2008-12-04 15:30:21 MSK
Created attachment 947 [details]
Пример детали с проблемой
Comment 5 Vitaly Lipatov 2008-12-04 15:40:10 MSK
Created attachment 948 [details]
Вид детали под Windows
Comment 6 Денис Баранов 2008-12-05 19:11:26 MSK
Проблема подтверждается, все как в скриншотах.
При чем, при выборе пункта обозначение базы текст показывается, но он смещен немного в сторону по сравнению с виндовс.
Comment 7 Anton Rudnev 2008-12-19 17:49:41 MSK
должна воспроизводится для 10-ого компаса
есть бутылка на cellar kompas/kompas10lt
локально на cellar'e запускать нельзя.
Comment 8 Vitaly Lipatov 2008-12-19 17:50:41 MSK
На cellar видеодрайвер стоит vesa, поэтому только софтовый GL, с которым не работает wine.
Comment 9 Константин Кондратюк 2008-12-22 12:06:57 MSK
Created attachment 978 [details]
Скрин WINEvsWindows с выделенным обозначением

Видно, что выделенная буква прорисовывается 2 раза. 
В Windows (слева) буквы совпадают.
В wine чёрная буква отображается двоеточием, а зелёная - с неправильным наклоном.
Comment 10 Anton Rudnev 2008-12-22 15:51:55 MSK
на multi компас запускается перекореживая иксы
где, кроме euclid еще можно воспроизводить багу?
Comment 11 Виталий Булгаков 2008-12-22 18:25:07 MSK
ошибка связана с 3101 и сначала необходимо добиться ее исправления. Добавил тест в 3101. 
Comment 12 Vitaly Lipatov 2008-12-25 12:36:15 MSK
Ошибка прорисовки не связана с 3101, для неё требуется отдельный тест.
3101 исправили.
Comment 13 Константин Кондратюк 2008-12-25 14:14:17 MSK
Created attachment 988 [details]
ещё скрин

После выполнения действий
"Сервис - Параметры - Система - Редактор моделей - Размеры и обозначения - снять чекбокс Оптимизировать изображение"
видим искомую букву.
Comment 14 Константин Кондратюк 2008-12-25 15:25:59 MSK
Разница в прорисовке "зелёной" и "чёрной" букв в случае с неисправленной багой 3101 (неправильный поворот) вызывают предположение, что сами буквы рисуются принципиально по-разному.
Зелёная - прямым шрифтом (lfEscapement == 0) с использованием поворота функцией SetWorldTransfotm. Это случай баги 3101, исправление матрицы поворота решает проблему.
Чёрная - в прямой системе координат (без World transform), но со шрифтом с ненулевым lfEscapement. В этом случае где-то неправильно считается ширина символа, возможно на этапе рендеринга.

Хочется увидеть подтверждение или опровержение этих догадок. Очень поможет тест, который выведет букву способом, применяемым в программе для отрисовки "чёрной" буквы, и даст возможность её масштабировать, наглядно показав проблему с нарушением ширины символа.
Comment 15 Anton Rudnev 2008-12-25 20:06:58 MSK
см. лог одной перерисовки в каналах xrender и font
ftp:pvt/Windows/Testing/Bugs/2999/2999-AA.txt
интересное начинается с 10324-ой строки.

(смотреть в моноширинном шрифте с отключенным переносом строк).

Также уточну, что для одной перерисовки вызывается только один ExtTextOutW(..."A"...), несмотря на то, что рисуется две буквы.
Comment 16 Vitaly Lipatov 2008-12-25 22:30:16 MSK
Итак, к баге 2999 относится то, что рисовалось чёрным шрифтом в обозначении.
В отличие от зелёного текста, этот текст выводится через GL:
сначала получаются изображения глифов в glList через wglUseFontOutlines,
потом выводим. Ширина символа исправлена

патчем

commit 0d9b6acf6f328a3b4ce8515a586c44f34ba18423
Author: Vitaly Lipatov <lav@etersoft.ru>
Date:   Thu Dec 25 21:27:46 2008 +0300

    wglUseFontOutlines: set lfWidth according to RC size (see eterbug #2999)

и лежит в обновлённой сборке eter39
ftp://updates.etersoft.ru/pub/Etersoft/WINE@Etersoft/1.0.9-eter39/WINE/ALTLinux/4.1/
Comment 17 Денис Баранов 2009-07-29 20:48:28 MSD
Не воспроизводится
WINE@Etersoft CAD eter2.1/eter2