Тема: Отображение блока

Подскажите пожалуйста, кто знает (я что-то запутался), как отображать объект AcDbBlockReference в одной точке с одинаковыми размерами (к примеру как UCS иконку), переопределяя  метод worldDraw.

Re: Отображение блока

> Shedever
Ты имеешь в виду чтобы твое изображение было в одном и том же месте экрана и не перемещалось и не масштабировалось при PAN/ZOOM и т.д.? Тогда тебе нужно создать свой примитив (Custom Entity).

Re: Отображение блока

мои соображения:
1. переопределяю метод worldDraw  в custom entity наследуемый от AcDbBlockReference;
2. в worldDraw мне необходимо так трансформировать координаты, чтобы после вызова родительской версии этого метода объект перерисовался так, как я хочу
Проблемы у меня вызывает второй пункт.

Re: Отображение блока

> Shedever
Формируешь матрицу и дергаешь метод transformBy()

Re: Отображение блока

вот с формированием матриц у меня и проблемы.
Не могли бы вы мне помочь?

Re: Отображение блока

Так. В действительности все оказалось сложнее и срабатывает не всегда.

Re: Отображение блока

Все получилось. TransformBy не отрабатывает.
Получилось сделать с помощью setScaleFactors. Можна использовать setBlockTransofrm.
Код привести не смогу по некоторым серьезным причинам. Но идея такова, что я гружу блок из файла (иконка UCS) и отрисовываю ее в соответствии с размерами в пикселях.