Дискуссионный математический форумМатематический форум

Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 4 часа [ Летнее время ]
MathHelpPlanet.com RSS-лента Математического форума

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




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Найти координаты точки на плоскости
СообщениеДобавлено: 23 окт 2014, 17:12 
Не в сети
Начинающий
Зарегистрирован:
23 окт 2014, 16:59
Сообщений: 4
Cпасибо сказано: 0
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Пишу графическую программу, в которой будут строиться 2d симметричные объекты. Говоря иными словами, одна из сторон фигуры будет являться "зеркалом" для точек, дубли которых программа будет выстраивать с другой стороны этой грани.
Но у меня где-то вкралась ошибка!
Но все по порядку...
Некоторая точка (3) расположена на плоскости на некотором расстоянии от прямой. Прямая задана координатами двух точек (1) и (2). Найти координаты точки (4), расположенной зеркально на перпендикуляре к заданной прямой. Т.е. перпендикулярная прямая к заданной проходит через точки (3) и (4). И расстояние от прямой (1-2) одинаково до точки (3) и (4).
Координаты точек (1), (2), (3) известны.
Что пробовал я: равенство нулю произведения векторов и каноническое уравнение прямой. Но где-то допускаю ошибку. Скорее всего надо перпендикулярный вектор смещать в точку (1) и высчитывать произведение так.Изображение

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Найти координаты точки на плоскости
СообщениеДобавлено: 23 окт 2014, 19:03 
Не в сети
Light & Truth
Аватара пользователя
Зарегистрирован:
13 окт 2010, 14:09
Сообщений: 18825
Откуда: Пермь + Одесса
Cпасибо сказано: 11227
Спасибо получено:
5087 раз в 4596 сообщениях
Очков репутации: 687

Добавить очки репутацииУменьшить очки репутации
Можно, например, составить уравнения окружностей с центрами в точках (2) и (1) и радиусами, равными расстояниям от этих точек до точки (3). Тогда эти окружности будут пересекаться и в точке (4).

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Найти координаты точки на плоскости
СообщениеДобавлено: 23 окт 2014, 19:41 
Не в сети
Начинающий
Зарегистрирован:
23 окт 2014, 16:59
Сообщений: 4
Cпасибо сказано: 0
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Я понимаю, но мне нужно решение которое можно воплотить на компьютере программно, а не с циркулем на бумаге...
PS спасибо за указанное направление! Нашел методику. Если интересно - после проверки на компе напишу что и как.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Найти координаты точки на плоскости
СообщениеДобавлено: 23 окт 2014, 22:11 
Не в сети
Начинающий
Зарегистрирован:
23 окт 2014, 16:59
Сообщений: 4
Cпасибо сказано: 0
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
К сожалению, не пойдет. Я пишу программу на Дельфи по работе с развертками элементов корпусов лодок, некий графический редактор, говоря языком математики, редактор многоугольников. И один из инструментов этого редактора - возможность работать с симметричными элементами. прога фриварная, пишется в свободное время от основной работы...

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Найти координаты точки на плоскости
СообщениеДобавлено: 24 окт 2014, 10:05 
Не в сети
Beautiful Mind
Аватара пользователя
Зарегистрирован:
20 фев 2011, 00:53
Сообщений: 1823
Откуда: Алексин
Cпасибо сказано: 273
Спасибо получено:
957 раз в 753 сообщениях
Очков репутации: 225

Добавить очки репутацииУменьшить очки репутации
[math]1\left( {{x_1};{y_1}} \right),2\left( {{x_2},{y_2}} \right),3\left( {{x_3},{y_3}} \right),4\left( {{x_4},{y_4}} \right)[/math]

[math]{x_4} = 2 \cdot \frac{{{{\left( {{y_2} - {y_1}} \right)}^2}{x_1} + {{\left( {{x_2} - {x_1}} \right)}^2}{x_3} + \left( {{x_2} - {x_1}} \right)\left( {{y_2} - {y_1}} \right)\left( {{y_3} - {y_1}} \right)}}{{{{\left( {{y_2} - {y_1}} \right)}^2} + {{\left( {{x_2} - {x_1}} \right)}^2}}} - {x_3}[/math]
[math]{y_4} = 2 \cdot \frac{{{{\left( {{y_2} - {y_1}} \right)}^2}{y_3} + {{\left( {{x_2} - {x_1}} \right)}^2}{y_1} + \left( {{x_2} - {x_1}} \right)\left( {{y_2} - {y_1}} \right)\left( {{x_3} - {x_1}} \right)}}{{{{\left( {{y_2} - {y_1}} \right)}^2} + {{\left( {{x_2} - {x_1}} \right)}^2}}} - {y_3}[/math]

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Найти координаты точки на плоскости
СообщениеДобавлено: 24 окт 2014, 23:46 
Не в сети
Light & Truth
Аватара пользователя
Зарегистрирован:
13 окт 2010, 14:09
Сообщений: 18825
Откуда: Пермь + Одесса
Cпасибо сказано: 11227
Спасибо получено:
5087 раз в 4596 сообщениях
Очков репутации: 687

Добавить очки репутацииУменьшить очки репутации
Globus_vrn писал(а):
Я понимаю, но мне нужно решение которое можно воплотить на компьютере программно, а не с циркулем на бумаге
А с чего вы взяли, что я про циркуль и бумагу писала. Уравнение окружности с центром в данной точке и известным радиусом ещё в школе проходят. Составить систему из двух таких уравнений и решить её наверняка можно и на Дельфи.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Найти координаты точки на плоскости
СообщениеДобавлено: 27 окт 2014, 10:25 
Не в сети
Начинающий
Зарегистрирован:
23 окт 2014, 16:59
Сообщений: 4
Cпасибо сказано: 0
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Я нашел в сети методику. Кусок программы вот:
процедура подготовки объекта:
//определяем данные канонического уравнения прямой - оси симметрии объекта
X1:=Points[N,1].X0;
Y1:=Points[N,1].Y0;
X2:=Points[N,Elem[N].MirPoint].X0;
Y2:=Points[N,Elem[N].MirPoint].Y0;
//а теперь, что бы не было казусов с величинами (когда окружности не соврадают и пр.), находим на этой прямой точки-центры окружностей, очень далеко отстоящие друг от друга
Elem[N].Xp1:=-100000;
Elem[N].Xp2:= 100000;
if X2-X1=0 then Exit; //ну это так, на всякий случай
Elem[N].Yp1:=(Y2-Y1)*(Elem[N].Xp1-X1)/(X2-X1)+Y1;
Elem[N].Yp2:=(Y2-Y1)*(Elem[N].Xp2-X1)/(X2-X1)+Y1;
for i:=2 to Elem[N].MirPoint-1 do
MirrorPoint(N,i);
Elem[N].CountPoint:=Elem[N].MirPoint*2-2;

процедура нахождения точки-зеркального отображения:
procedure MirrorPoint(N,i:integer);
var k,X3,Y3:integer;
X1,Y1,X2,Y2,A,M,X,Y,B,H,D,R1,R2:Real;
begin
//координаты 1 центра
X1:=Elem[N].Xp1;
Y1:=Elem[N].Yp1;
//координаты 2 центра
X2:=Elem[N].Xp2;
Y2:=Elem[N].Yp2;
//координаты точки пересечения
X3:=Points[N,i].X0;
Y3:=Points[N,i].Y0;
//радиус первой окружности
R1:=Sqrt(Sqr(X3-X1)+Sqr(Y3-Y1));
//радиус второй окружности
R2:=Sqrt(Sqr(X2-X3)+Sqr(Y2-Y3));
//расстояние между центрами
D:=Sqrt(Sqr(X2-X1)+Sqr(Y2-Y1));
//расстояние от точки пересечения перпендикуляра до 1 центра окружности
B:=(Sqr(R2)-Sqr(R1)+Sqr(D))/(2*D);
//расстояние от отчки пересечения прямых до точки пересечения окружностей
H:=Sqrt(Sqr(R2)-Sqr(B));
//расстояние от точки пересечения перпендикуляра до 1 центра окружности
A:=D-B;
M:=D/A;
X:=X1+(X2-X1)/M;
Y:=Y1+(Y2-Y1)/M;
//пересчет индекса массива точек. Первая половина точек в массиве - это реально существующие, вторая половина - зеркально расположенные
k:=Elem[N].MirPoint*2-i;
//координаты зеркальной точки
Points[N,k].X0:=Round(X-(Y-Y2)*H/B);
Points[N,k].Y0:=Round(Y+(X-X2)*H/B);
end;

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

 Похожие темы   Автор   Ответы   Просмотры   Последнее сообщение 
Найти координаты точки плоскости

в форуме Аналитическая геометрия и Векторная алгебра

rubik

1

490

25 июн 2013, 03:43

Найти координаты точки на плоскости

в форуме Геометрия

Sibvektor

0

189

29 ноя 2015, 12:19

Найти координаты точки пересечения плоскости XOZ

в форуме Аналитическая геометрия и Векторная алгебра

MorfixProton

2

912

15 янв 2014, 15:45

Найти координаты точки пересечения плоскости ABC

в форуме Аналитическая геометрия и Векторная алгебра

kav_prok

9

317

15 янв 2017, 22:23

Найти координаты точки

в форуме Аналитическая геометрия и Векторная алгебра

poliynol

6

388

02 сен 2012, 15:43

Найти координаты точки D

в форуме Аналитическая геометрия и Векторная алгебра

Antoha2401

8

429

24 дек 2014, 19:50

Найти координаты точки

в форуме Геометрия

Scofield

4

223

24 ноя 2014, 16:15

Найти координаты точки

в форуме Геометрия

NewSp

3

130

02 июн 2016, 00:18

Найти координаты точки

в форуме Аналитическая геометрия и Векторная алгебра

Schwarz_Wiking

1

93

10 янв 2017, 17:40

Найти координаты точки

в форуме Аналитическая геометрия и Векторная алгебра

insidedocument

2

44

20 июн 2018, 23:00


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



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

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


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

Найти:
Перейти:  

Яндекс.Метрика

Copyright © 2010-2016 MathHelpPlanet.com. All rights reserved