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

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

Войти
Регистрация
Восстановить пароль
 
Евгений Буланов
6 / 6 / 4
Регистрация: 23.10.2013
Сообщений: 63
#1

Параллельные прямые - C++

23.10.2013, 13:06. Просмотров 1244. Ответов 5
Метки нет (Все метки)

Есть два отрезка на плоскости, координаты точек известны. Нужно изменить координаты второй линии так, чтоб она стала параллельно первой на определенном пользователем расстоянии... Прошу помочь в математической составляющей, код реализую сам. Благодарю.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2013, 13:06     Параллельные прямые
Посмотрите здесь:

Заменить в коде параллельные главной, на параллельные побочной диагонали - C++
Вот код,нужно сделать чтобы сортировались диагонали параллельные побочной, а не главной. помогите пожалуйста. int *diag1; diag1...

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

Две прямые описываются уравнениями напечатать координаты точки пересечения этих прямых, либо сообщить что эти прямые совпада - C++
Две прямые описываются уравнениями а1x+b1y+c1=0 a2x+b2y+c2=0 напечатать координаты точки пересечения этих прямых, либо сообщить что...

Определить пересекаются две прямые, параллельны или совпадают.Две прямые заданы уравнениями: ax+by+c=0, px+qy+r=0 - C++
Определить пересекаются две прямые, параллельны или совпадают. Две прямые заданы уравнениями: ax+by+c=0, px+qy+r=0

Параллельные вычисления - C++
Прошу помочь решить следующую задачу(параллельное программирование) Дана последовательность чисел. Найти сумму элементов этой...

Параллельные потоки - C++
Может кто-нибудь подсказать, как написать программу, в которой с какой-то определенной точки работают параллельно, например, три потока?...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Raali
623 / 327 / 34
Регистрация: 06.07.2013
Сообщений: 1,056
Завершенные тесты: 1
23.10.2013, 13:18     Параллельные прямые #2

Не по теме:

Цитата Сообщение от Евгений Буланов Посмотреть сообщение
Прошу помочь в математической составляющей
дак почему выбор пал на форум C++ , а не на математический ?



вобщем суть такова - отношение разницы по X к разнице по Y (x1-x2)/(y1-y2) для двух линий должно быть одинаково
Евгений Буланов
6 / 6 / 4
Регистрация: 23.10.2013
Сообщений: 63
23.10.2013, 13:52  [ТС]     Параллельные прямые #3
да-да, до этого я конечно дошел... это угловой коэффициент. я немогу сдвинуться далее. если возможно, поттолкните... Как изменить угловой коэффициент второго отрезка? У меня есть m(угл.коэф.)
m = (y2-y1)/(x2-x1) Все переменные известны. А вот чему будут равняться координаты, если мне нужно изменить 'm'?
programina
1914 / 599 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
23.10.2013, 14:07     Параллельные прямые #4
Цитата Сообщение от Евгений Буланов Посмотреть сообщение
Есть два отрезка на плоскости, координаты точек известны. Нужно изменить координаты второй линии так, чтоб она стала параллельно первой на определенном пользователем расстоянии... Прошу помочь в математической составляющей, код реализую сам. Благодарю.
C++
float n = 5.0; // расстояние
 
// координаты начала и конца первого отрезка
float xa1 = 3.0; 
float ya1 = 4.0;
float xb1 = 1.0;
float yb1 = 1.0;
 
// кот Ангенс... мяу
float t = (xa1-xb1)/(ya1-yb1);
 
// координаты начала и конца второго отрезка
float xa2 = xa1 - n * t;
float ya2 = ya1 + n / t;
float xb2 = xb1 - n * t;
float yb2 = yb1 + n / t;
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,363
23.10.2013, 14:15     Параллельные прямые #5
Ну вот смотри:
Пусть у тебя есть отрезок A с координатами концов x1a, y1a, x2a, y2a, и отрезок B с координатами концов x1b, y1b, x2b, y2b.
Вычисляешь: k = (x2a - x1a)/(y2a - y1a).
Теперь у тебя ровно тот же самый k должен получиться и для второго отрезка: (x2b - x1b)/(y2b - y1b) == k.
Имеет смысл зафиксировать из четырех координат три, и изменить четвертую так, чтобы это равенство выполнилось.
Например, будем менять x2b, тогда:
(x2b - x1b)/(y2b - y1b) = (x2a - x1a)/(y2a - y1a);
или
x2b = ((x2a - x1a)/(y2a - y1a))*(y2b - y1b) + x1b;

Краевые случаи (например, когда y2a == y1a) рассмотри сам.
Вуаля.

Ну и "на определенном расстоянии" реализуется столь же несложными вычислениями.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2013, 22:40     Параллельные прямые
Еще ссылки по теме:

Параллельные вычисления - C++
Здравствуйте, не знаю в какой ветке постить, решил в этой. Хочу использовать эти технологии OpenMP и\или GPGPU(OpenCL) но практической...

OPENmp параллельные потоки QT - C++
#include <iostream> #include "omp.h" using namespace std; int main() { #pragma omp parallel { ...

Параллельные сортировки с OpenMP - C++
Привет, читателю . Надеюсь не поленитесь прочесь до конца, кто понимает =) Вообщем суть такова, у меня есть функции 3 разных сортировок(...

Параллельные вычисления средствами С++ 11 - C++
Поиск файлов в каталоге реализован в ф-ии direct, потоки управляют из мейна. Ф-ю direct надо разбить на несколько потоков, вывод...

Параллельные вычисления с обменом сообщений - C++
Здравствуйте многоуважаемые. Если вдруг кто разбирается в этом вопросе - прошу вашей помощи. В программе создается квадратная матрица,...

Параллельные потоки, вектора, переменные - C++
Если у меня работают 2-3 параллельных потока и у всех есть доступ к одному классу. 1) нужно ли лочить этот класс на время работы в...


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

Или воспользуйтесь поиском по форуму:
Евгений Буланов
6 / 6 / 4
Регистрация: 23.10.2013
Сообщений: 63
23.10.2013, 22:40  [ТС]     Параллельные прямые #6
Благодарю ВСЕХ, прогу запилил, всё работает
Yandex
Объявления
23.10.2013, 22:40     Параллельные прямые
Ответ Создать тему
Опции темы

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