20th
Июн

Нахождение точки на медиане треугольника в координатной плоскости.

Posted by bullvinkle under Пост-обзор

Я пишу программу, и в ней у меня есть треугольник ABC на координатной плоскости (экране), его координаты известны, причем он может быть прямоугольный, остро и тупоугольный. Мне нужно в треугольнике найти координату P, лежащую на медиане BM, причем BP = 10 (или любое другое значение).
Мои мысли: почти никаких . Я вообще геометрические задачи в плоскости не решал. Помогите пожалуйста!
Заранее спасибо.

Изображения

Обычно пишу такие штуки вот так:

Код:

struct point
{
	double x, y;

	point (double xx, double yy) : x(xx), y(yy){}

	point operator + (point &a)
	{
		return point(x+a.x, y+a.y);
	}

	point operator - (point &a)
	{
		return point(x-a.x, y-a.y);
	}

	point operator * (double v)
	{
		return point(x*v,y*v);
	}

	double length()
	{
		return sqrt(x*x+y*y);
	}

	point ort()
	{
		double l = length();
		return point(x/l,y/l);
	}
};

point getPointOnMedian(point A, point B, point C)
{
	point M = (A+B)*0.5;      // ибо M - середина AB
	point BM = M-B;             // BM - это вектор
	point P = B + BM.ort()*10;
	return P;
}

Надо лишь понять, что вектор и точка – это одно и то же. Ну и что такое орт.

Тема на форуме.

Похожие статьи

Теги: |