Тема: Возможности OArx
Может ли кто нибудь поделиться какими либо интересными примерами приложений сделанными с помощью OArx?
Чтобы оценить возможности....
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → ObjectARX → Возможности OArx
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Может ли кто нибудь поделиться какими либо интересными примерами приложений сделанными с помощью OArx?
Чтобы оценить возможности....
Понятно. Смешно. Просто.
Ну а что нибудь своими руками сделанное. ?
Посмотрите каталог Samples (включен в поставку ARX), почитайте руководство, одним словом посмотрите то, что у Вас уже есть.
> Владимир
Была у меня как-то примочка...
Вощем, есть прибор с соединителями (солидный). И нужно иметь возможность просмотреть обозначения его соединителей независимо от того закрывается ли он другими 3Д-солидами и как далеко он находится от камеры, а также текст обозначения соединителя был всегда перпендикулярен оси взгляда. Самое интересное - это то, что при использовании команды 3DROTATE, текст не поворачивался вместе с пространством, а в рил-тайме изменял своё положение таким образом, что оставался в плоскости экрана.
Вообще, меня радует делать всякие приколы в рил-тайме. Почти анимация ;)
на мой взгляд текст лучше в реал тайм (во время действия orbit) не совать т.е. не совать прорисовку текста в
case kAcGiHideOrShadeCommand:
case kAcGiRenderCommand:
процедуры WorldDraw т.к. возможны глюки (правда не фатальные).
> Виктор Разуваев
Глюков в этом деле не наблюдал ни разу.
Да и в ворлдДро эту фичу совать ни к чему, т.к. там нет привязки к вьюпорту. Это во-первых. А во-вторых - имеет смысл поставить в классе объекта какой-нить флажок , чтобы, установив его соответствующей командой, можно было смотреть на текст. А как только текст становится ненужным, другой командой снять его. Можно использовать для одного или нескольких обектов одновременно. Скажем, если из большой кучи приборов необходимо выбрать несколько и протянуть между ними провода.
И ещё, при нескольких вьюпортах это дело выглядит довольно эффектно - в каждом вьюпорте текст отображается в плоскости экрана.
Я вам скажу как устроить глюк.
Берете и засовываете прорисовку AcDbMText в case kAcGiHideOrShadeCommand:
case kAcGiRenderCommand:
крутите orbit
на этом этапе все хорошо, только при закрытие Акада начнет ругаться, а вот это плохо, но реального вреда от этого не наблюдал, но навсякий случай убрал
AcDbMText
из
kAcGiHideOrShadeCommand:
case kAcGiRenderCommand:
ну кому он там нафиг нужен
ведь после окончания действия команды orbit текст появляется
Сорри за офтопик наверное
странно... никогда ещё не получал советов как устроить глюки, всегда искал пути только для их устранения...
Вообще не пойму для чего может оказаться полезным описанный выше приём. Мы, видимо, говорим о разных вещах.
Я делаю так:
void _CS_DBX_Soedinitel::viewportDraw(AcGiViewportDraw* mode) { //.. mode->geometry().text(...); //..
и текст отображается не зависимо от того какой режим затенения.
Эта вещь может глючить только тогда (причём основательно), когда неправильно расчитаны вектор нормали и направления текста. Главное - правильно рассчитать систему координат, в которой вставляешь. Но это - ноу-хау.
Ну да ладно, отошли от темы...
=========================
Ещё примочка - используя inputPointMonitor, можно изобразить вот какой эффект: имеются какие-то объекты (свои) и нужно, скажем, чтобы при наведении курсора объект менял свои свойства - подсвечивался, становился красным, менял толщину линии и пр., а при отведении возвращался к исходному состоянию. Можно также пойти дальше - используя вышеописанную примочку с текстом, сделать так, чтобы при наведении курсора этот текст появлялся, а при отведении пропадал и никому не мешал. Текст, опять-таки, в плоскости экрана и не зависит от масштаба экрана и от того, перекрывается ли он другими объектами. Т.е. виден всегда и одинаковыми по отношению к размеру экрана символами.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → ObjectARX → Возможности OArx
Форум работает на PunBB, при поддержке Informer Technologies, Inc