|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Sergey Politov 2:5015/176.18 09 Jan 2002 06:12:39 To : Ivan Bessarabov Subject : Re: <none> -------------------------------------------------------------------------------- До меня дошли слухи, что *07.01.02* *16:18:02* пролетало сообщение от Ivan к *Sergey Politov* про *"<none>"*. И я решил вмешаться. AK>>> Помогите решить задачу: нужно определить, пренадлежит ли точка AK>>> тетраэдру? SP>> Я бы делал так. Для каждой грани нашел ее уравнение, потом домножил SP>> на 1, или -1, что бы вектор (a,b,c) указывал во внутрь тетраэдра. IB> Извини, за глупый вопрос, но как ты это делал? Брал произвольную вершину IB> тетраэдра, не принадлежащую грани, находил вектор и домножал на 1 или -1 IB> так, чтобы точка была в положительной полуплоскости (можно и в IB> отрицательной)? Так? Брал оставшуюся вершину тетраэдра(их всего 4), не принадлежащую грани, подставлял в уравнение если получалось отрицательное значение, домножал уравнение на -1. В качестве бонуса я придумал еще один способ. Через смешанное произведение. ИМХО он самый простой. Что бы точка(S) лежала внутри(ABCD) надо чтобы. sign((AC,AB,AS))=sign((AC,AB,AC)) sign((BC,BA,BS))=sign((BC,BA,BD)) ... Искренне Ваш Sergey Politov --- WP/95 Rus 1.78 Релиз 1 Reg. * Origin: Человек - побочный продукт любви. (2:5015/176.18) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/39911b2a220b.html, оценка из 5, голосов 10
|