PMG

Форумы по созданию игр
Текущее время: 26 апр 2024 22:56

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Матрица выдавливания
СообщениеДобавлено: 23 мар 2011 15:56 
Не в сети
Любитель

Зарегистрирован: 19 янв 2010 15:58
Сообщения: 14
Откуда: Комсомольск-на-Амуре
Здравствуйте, помогите пожалуйста. У меня такой вопрос. Я пытаюсь открыть dxf файл в своем приложении. Вот что он пишет о круге:
AcDbCircle
    10
    0.0
    20
    0.0
    30
    -115.0
    40
    76.20967815046531
    210
    0.0
    220
    -1.0
    230
    0.0
Коды 10, 20, 30 это координаты x, y, z центра окружности и 40 - радиус. Получается, что у меня окружность с центром (0, 0, -115). На самом деле, настоящие координаты этой окружности (0, 115, 0). Я так полагаю, что "виноват" в этом вектор выдавливания(Extrusion direction) под кодам 210, 220, 230 (0,-1,0). Не подскажете, что это за вектор, и как его применить, используя OpenGl?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Матрица выдавливания
СообщениеДобавлено: 24 мар 2011 16:35 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Не сталкивался, не знаю. Надо поискать в описании на dxf, или исходник, который оперирует этими кодами.
А так мне кажется вся проблема от того в какую сторону направлены оси, может поэтому миунс на плюс заменен.

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Матрица выдавливания
СообщениеДобавлено: 25 мар 2011 04:20 
Не в сети
Любитель

Зарегистрирован: 19 янв 2010 15:58
Сообщения: 14
Откуда: Комсомольск-на-Амуре
Я покопался и нашел вот такую информацию: 210 код - содержит вектор нормали плоскости, другими словами, в нем содержится точка, направление на которую из центра координат, будет перпендикулярно плоскости блока (я так полагаю, к новой плоскости нашего круга). Не подскажите, как зная вектор нормали, найти угол поворота и использовать команду glRotatef? Извините, если что-то не то спрашиваю, просто тема для меня новая, и до меня очень медленно доходит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Матрица выдавливания
СообщениеДобавлено: 25 мар 2011 15:43 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Да вроде поворот здесь не причем. У каждой грани, а здесь в качестве грани окружность, есть свой вектор нормали. Обычно он привязывается к самой грани, и показывает, где передняя часть грани, а не внутренняя. Или ты думаешь, что вектор нормали задает плоскость, а в этой плоскости находится эта окружность?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Матрица выдавливания
СообщениеДобавлено: 25 мар 2011 16:09 
Не в сети
Любитель

Зарегистрирован: 19 янв 2010 15:58
Сообщения: 14
Откуда: Комсомольск-на-Амуре
Ну вообще я так и считаю. Эту информацию я взял из форумов по автокаду, прикинул на листе бумаги, вроде сходится. Остается правильно повернуть объект. Вот тут у меня мозгов уже не хватает...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Матрица выдавливания
СообщениеДобавлено: 25 мар 2011 17:14 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Если знаешь вокруг чего вращать, на какой угол, и что вращать, тогда нет проблем (http://pmg.org.ru/nehe/nehe09.htm).

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Матрица выдавливания
СообщениеДобавлено: 28 мар 2011 01:53 
Не в сети
Любитель

Зарегистрирован: 19 янв 2010 15:58
Сообщения: 14
Откуда: Комсомольск-на-Амуре
Как раз проблема с определением угла. Я могу посчитать угол, на который отклоняется вектор, но как разбить его на составляющие x, y, z?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Матрица выдавливания
СообщениеДобавлено: 28 мар 2011 10:17 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
А зачем разбивать? Просто поворот и все. Я бы тебе рекомендовал прочитать 4.8 и 4.9 из книги Эйнджела _pmg.org.ru/ebooks/angel.djvu_. А чтобы полностью разобраться с поворотами добавить еще http://pmg.org.ru/nehe/nehe_camera.htm

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Матрица выдавливания
СообщениеДобавлено: 28 мар 2011 10:25 
Не в сети
Любитель

Зарегистрирован: 19 янв 2010 15:58
Сообщения: 14
Откуда: Комсомольск-на-Амуре
Спасибо, буду разбираться


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Матрица выдавливания
СообщениеДобавлено: 28 мар 2011 11:22 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
И все-таки нормаль, есть нормаль, относительно ее не надо поворачивать. Возможно, просто направление осей в dxf и OpenGL разное.

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 65


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB