Перейти к содержанию
Fire Monkey от А до Я
  • 0

Как определить факт пересечения 3D объектов?


Igor

Вопрос

К примеру у меня есть объекты TSphere, TCylinder, а также TModel3D, все эти объекты находятся в движении, соответственно могут пересечься.

Вопрос в том, как определить факт их пересечения?  В 2D, например в TImage, когда объекты рисуются вручную, там выбирать не приходиться, просчитываешь всё сам, но тут даже не 2D шейпы, а 3D, и я предположил, что есть какой-то более простой способ просчёта пересечений. Может быть есть какое-то явное сравнение двух множеств точек на которых находятся два объекта, и если они пересеклись (булево пересечение), то можно запустить какой-то кусок кода?

Подскажите пожалуйста способы определения пересечения 3D объектов.

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

Нашёл, что для 2D шейпов используют такую штуку:

function IntersectRect(var DestRect; Src1Rect, Src2Rect: LPRect): Integer;

Опpеделяет пеpесечение двух пpямоугольников.

 

С 3D пока не ясно.

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...