Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
ЛехаКрылов
0 / 0 / 0
Регистрация: 16.12.2011
Сообщений: 11
#1

Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста - C++

26.12.2011, 02:08. Просмотров 1321. Ответов 7
Метки нет (Все метки)

помогите пожалуйста завтра зачет сижу над задачами ничего не успеваю!!!!!
Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве. прямые задать с помощью структур. результат вывести на экран.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2011, 02:08     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста
Посмотрите здесь:

C++ Взаимное расположение прямых
Взаимное расположение линий C++
C++ Определить взаимное расположение точки с координатами (х0,y0) и окружности радиуса R с центром в точке (х1,у1)
C++ Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве
C++ Определить взаимное расположение треугольников
C++ Определить взаимное расположение прямых
C++ Даны две прямые в пространстве.Определить их взаимное расположение. Решении в С++ и алгоритм(блок схему)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
darkknight2008
 Аватар для darkknight2008
62 / 62 / 6
Регистрация: 16.10.2011
Сообщений: 200
26.12.2011, 02:34     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста #2
Подскажу, ответ кроется в параметрическом уравнении прямой. Щас попытаюсь че-нить набросать...
ЛехаКрылов
0 / 0 / 0
Регистрация: 16.12.2011
Сообщений: 11
26.12.2011, 02:37  [ТС]     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста #3
спасибо помоги пожалуйста сейчас тоже сам помучаю
darkknight2008
 Аватар для darkknight2008
62 / 62 / 6
Регистрация: 16.10.2011
Сообщений: 200
26.12.2011, 02:40     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста #4
Точку пересечения назодить требуется?

Добавлено через 49 секунд
Как задаются прямые? 1) Две точки 2) Точка и направляющий вектор?
ЛехаКрылов
0 / 0 / 0
Регистрация: 16.12.2011
Сообщений: 11
26.12.2011, 03:06  [ТС]     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста #5
две точки

Добавлено через 56 секунд
точку пересечения нет не требуется только как они расположены

Добавлено через 17 минут
ну куда ты помоги пожалуйста!!!!
darkknight2008
 Аватар для darkknight2008
62 / 62 / 6
Регистрация: 16.10.2011
Сообщений: 200
26.12.2011, 03:28     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста #6
Башка уже плохо соображает. Как не крути, тебе нужно отталкивать от алгоритма по поиску точки пересечения двух прямых в пространстве.
Paporotnik
383 / 227 / 7
Регистрация: 06.07.2011
Сообщений: 512
26.12.2011, 03:52     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста #7
хз, может и неверно)

если структура вроде такой:
C
1
2
3
4
5
6
7
struct line {
   point p1,p2;
}
 
struct point {
   double x,y,z
}
алгоритм вроде такого:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
line l1,l2; // наши линии
....
//задаем координаты и все такое
....
point t1=l1.p1-l1.p2;      //вычитаем координаты одной точки прямой из другой
point t2=l2.p1-l2.p2;     
 
eps=0.0000001     //точность вычисления для double
if ( !((t1.x<eps) ||
       (t1.y<eps) ||
       (t1.z<eps)) ) return;    //если все разницы равны нулю, то задали отрезок двумя одинаковыми точками, т.е. ошибка ввода
if ( !((t2.x<eps) ||
       (t2.y<eps) ||
       (t2.z<eps)) ) return; 
 
if ( (abs(t1.x/t1.y-t2.x/t2.y)<eps) ||
     (abs(t1.y/t1.z-t2.y/t2.z)<eps) ||
     (abs(t1.x/t1.z-t2.x/t2.z)<eps) ) return;    // если хоть одно из частных dx/dy, dy/dz или dx/dz совпало для обеих прямых, то пересечение есть
 
//иначе нет.
Разумеется синтаксис додумать.
вроде даже проверку на деление на ноль делать не надо, т.к. в double просто запишется +inf или -inf, если такое произойдет, и логика не нарушится.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.12.2011, 04:04     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста
Еще ссылки по теме:

C++ Даны две прямые в пространстве.Определить их взаимное расположение
Заданы координаты вершин двух прямоугольников. Определить их взаимное расположение C++
C++ Выяснить взаимное расположение прямых на плоскости
Определить взаимное расположение точки и окружности C++
C++ Взаимное расположение треугольников

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
darkknight2008
 Аватар для darkknight2008
62 / 62 / 6
Регистрация: 16.10.2011
Сообщений: 200
26.12.2011, 04:04     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста #8
Есть недочет. Взаимное расположение, т.е. параллельны или совпадают или персекаются или скрещиваются.

Добавлено через 7 минут
if ( (abs(t1.x/t1.y-t2.x/t2.y)<eps) ||
(abs(t1.y/t1.z-t2.y/t2.z)<eps) ||
(abs(t1.x/t1.z-t2.x/t2.z)<eps) ) return;
Если соображалка не сдохла, то из этого можно сделать вывод только, что прямые пересекаются или скрещиваются.
Yandex
Объявления
26.12.2011, 04:04     Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста
Ответ Создать тему
Опции темы

Текущее время: 15:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru