Как найти координаты вершин прямоугольника
Перейти к содержимому

Как найти координаты вершин прямоугольника

  • автор:

Решение на Упражнение 1308 из ГДЗ по Математике за 6 класс: Мерзляк А.Г.

Даны координаты вершин прямоугольника ABCD: A(−3;−1), B(−3;3) и D(5;−1).
1) Начертите этот прямоугольник.
2) Найдите координаты вершины С.
3) Найдите координаты точки пересечения диагоналей прямоугольника.
4) Вычислите площадь и периметр прямоугольника, считая, что длина единичного отрезка координатных осей равна 1 см.

Нахождение координат вершин прямоугольника

Не получается найти координаты A1, A2, A3.

Отслеживать
20.5k 4 4 золотых знака 26 26 серебряных знаков 52 52 бронзовых знака
задан 31 окт 2016 в 3:26
48 1 1 серебряный знак 5 5 бронзовых знаков

Уточните — вращения именно системы координат? Или прямоугольника, повернутого на угол в этой системе координат?

31 окт 2016 в 5:11
Вы уверены, что этот вопрос относится к программированию и системному администрированию?
31 окт 2016 в 5:25

Harry, спасибо за замечание и прошу прощение за свой недочет в описании вопроса. Угол вращения локальной системы координат прямоугольника.

31 окт 2016 в 5:31

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Так, как я понял задачу. Есть обычная декартова система координат, прямоугольник, стороны a и b, одна его точка, и он повернут относительно этой точки на угол.

Вопрос в том, как он располагался ранее, что за длины a и b.

 A3 -------a------ 

Если представить картину таким образом, то все предельно просто. A0 , естественно, остается на месте.

введите сюда описание изображения

введите сюда описание изображения

введите сюда описание изображения

Если это то, что нужно вам. Но в общем случае прямоугольник-то уже мог быть изначально ориентирован как угодно. Вам нужно четко ставить задачу - даже для самого себя, а иначе получается "мне надо что-то посчитать!" - "ну возьмите какие-нибудь формулы. "

Научный форум dxdy

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

Если Вы зададите новый вопрос в существующей теме, то в случае нарушения оформления или других правил форума Ваше сообщение и все ответы на него могут быть удалены без предупреждения.

Не ищите на этом форуме халяву , правила запрещают участникам публиковать готовые решения стандартных учебных задач. Автор вопроса обязан привести свои попытки решения и указать конкретные затруднения.

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.

Координаты вершин прямоугольника

Координаты вершин прямоугольника
27.05.2015, 22:50

Здравствуйте!
Есть некоторый набор точек на плоскости (>=2), две из этих точек должны лежать на противоположных сторонах прямоугольника, все остальные могут лежать как внутри него так и снаружи, необходимо :
1) получить ответ, можно ли построить этот прямоугольник таким образом, чтобы все точки лежали внутри него, а самые отдалённые точки лежали на сторонах (т.е. можно ли построить прямоугольник который обводит все точки, но он должен быть ориентирован так чтобы две заданные точки лежали на противоположных сторонах, см. Рис. 1, 2);

Изображение

Рис. 1 - Набор точек для которого можно построить прямоугольник (заданы точки 1 и 6)

Изображение

Рис. 2 - Набор точек при котором невозможно построить прямоугольник (заданы точки 1 и 6)

2) если прямоугольник можно построить, то необходимо найти координаты всех вершин минимального по размерам прямоугольника.
Данная задача является подзадачей оптимизации пути (уменьшения к-ва точек - выбрасывания избыточных) по заданны параметрам, далее характеристики этого прямоугольника будут сравниваться с заданными: ширина - с удвоенным максимальным отклонением от курса, длина - с минимальным расстояним между точками. На основании этих данных (и некоторых других не связанных с геометрией) будет приниматься решение какой из прямоугольников использовать для приближения. Для приближения предполагается использовать среднюю линию прямоугольника, проведённую в направлении движения. Если кто-то может предложить какие-то варианты получше, для решения основной задачи, буду только рад.

Как найти координаты вершин повернутого прямоугольника в двумерном пространстве?

5b545d58f1e89205316263.png
Есть прямоугольник известны его длина и ширина, и угол поворота. Ось вращения в центре. Этого прямоугольника.
Как мне найти координаты вершин этого прямоугольника.
Нашел на википедии статью
Там описана формула поворота в двумерном пространстве, я не понял как ее использовать.
5b545f85ba5c9318273004.png

нужно что-то типо:
var a_x = .
var a_y = .
var b_x = .
var b_y = .
var c_x = .
var c_y = .
var d_x = .
var d_y = .

Может в as есть какая-то функция которая возвращает координаты?
Если нет то как их найти

  • Вопрос задан более трёх лет назад
  • 4697 просмотров

Комментировать
Решения вопроса 1

5b5481f04e365599950422.png

К примеру- давайте повернем прямоугольник на 90градусов, ширина его будет 6, высота 4.
Так как известно , что точка вращения в центре - легко находим координаты деля ширину и высоту пополам
А(x, y) - Аx = 0(координата) - (6 / 2), Ау = 0 + (4 / 2) А(-3, 2)
В(x, y) - Вx = 0(координата) + (6 / 2), Ву = 0 + (4 / 2) В(3, 2)
С(x, y) - Сx = 0(координата) + (6 / 2), Су = 0 - (4 / 2) С(3, -2)
D(x, y) - Dx = 0(координата) - (6 / 2), Dy = 0 - (4 / 2) D(-3, -2)

Находим точку А после вращения
по Вашей формуле
Аx = -3 * cos90 - 2 * sin90 = -3 * 0 - 2 * 1 = -2
Ay = -3 * sin90 + 2 *cos90 = -3 * 1 + 2 * 0 = -3

Те же действия проделываем со всеми точками, а цифры по возможности округляем

Ответ написан более трёх лет назад
Нравится 1 2 комментария
Tanyel @Tanyel Автор вопроса

var x1 = (-obj.width/2)*Math.cos(rott)-(obj.height/2)*Math.sin(rott);
var y1 = (-obj.width/2)*Math.sin(rott)+(obj.height/2)*Math.cos(rott);

var x2 = (obj.width/2)*Math.cos(rott)-(obj.height/2)*Math.sin(rott);
var y2 = (obj.width/2)*Math.sin(rott)+(obj.height/2)*Math.cos(rott);

var x3 = (obj.width/2)*Math.cos(rott)-(-obj.height/2)*Math.sin(rott);
var y3 = (obj.width/2)*Math.sin(rott)+(-obj.height/2)*Math.cos(rott);

var x4 = (-obj.width/2)*Math.cos(rott)-(-obj.height/2)*Math.sin(rott);
var y4 = (-obj.width/2)*Math.sin(rott)+(-obj.height/2)*Math.cos(rott);

Tanyel, Так. И углы поворота нужно в радианы перевести, потому, что на JavaScript Math понимает только в радианах если не ошибаюсь

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *