
- •«Точка в 3d пространстве»
- •Постановка задачи.
- •Теория.
- •Три координаты и три проекции точки
- •Структура решения (этапы решения и их взаимосвязь).
- •Обзор и анализ методов решения.
- •Описание реализации применяемых методов.
- •Описание программного обеспечения (руководство программиста).
- •Описание интерфейса с пользователем (руководство пользователя).
Три координаты и три проекции точки
Координатами называют числа, которые ставят в соответствие точке для определения ее положения в пространстве или на поверхности.
В трехмерном пространстве положение точки устанавливают с помощью прямоугольных декартовых координат x, y, z.. Абсцисса x определяет расстояние от данной точки до плоскости П3, ордината y - до плоскости П2 и аппликата z- до плоскости П1.
Какая-либо точка пространства A, заданная координатами, будет обозначаться так: A (x, y, z). Построение изображения самой точки и ее проекций на пространственной модели рекомендуется осуществлять с помощью координатного прямоугольного параллелепипеда. Прежде всего на осях координат от точки O откладывают отрезки, соответственно равные единицам длины. На этих отрезках (OAX, OAY, OAZ), как на ребрах, строят прямоугольный параллелепипед. Вершина его, противоположная началу координат, и будет определять заданную точку A.
Построение параллелепипеда позволяет определить не только точку A, но и все три ее ортогональные проекции.
Лучами, проецирующими точку на плоскости П1, П2 и П3, являются те три ребра параллелепипеда, которые пересекаются в точке A.
Рис. 3. – Пространственный макет точки T.
На эпюре, где все плоскости проекций совмещены, проекции A1 и A2 окажутся на одном перпендикуляре к оси OX, а проекции A2 и A3 - на одном перпендикуляре к оси OZ.
Рис. 4. – Комплексный чертеж точки T.
Структура решения (этапы решения и их взаимосвязь).
Преобразования из трехмерных координат в экранные координаты:
координатных осей, координат точек и линий проекций пространственного чертежа.
координат точек и линий проекций для комплексного чертежа.
Отрисовка:
пространственного чертежа;
комплексного чертежа.
Обзор и анализ методов решения.
Преобразования из трехмерных координат в экранные координаты.
Для изображения проекций точки на пространственном или комплексном чертеже необходимо сначала перевести трехмерные координаты этой точки в двумерные.
преобразование координатных осей, координат точек и линий проекций пространственного чертежа.
Даны координаты точки А в трехмерной декартовой системе координат пространства - x, y, z, а также угол α между положительным направлением оси OY и отрицательным направлением оси OX на пространственном макете, ширина и высота чертежа – w и h.
Для построения пространственного чертежа необходимо рассчитать:
экранные координаты оси OY;
экранные начальные координаты пространственного чертежа;
экранные координаты точки А;
экранные координаты проекций точки на плоскости - А1, А2, А3;
экранные координаты проекций точки на координатные оси – АX, АY, АZ;
Экранная система координат выглядит следующим образом:
Экранные координаты координатных осей вычисляются по следующим формулам:
ось x
x0 = 0; координаты начала
y0 = h/2; оси OX
x1 = w; координаты конца
y1 = h/2; оси OX
ось y
x4 = 0; координаты начала
y4 = h / 2 - ang; оси OY
x5 = w; координаты конца
y5 = h/2 + ang; оси OY
ось z
x2 = w / 2; координаты начала
y2 = 0; оси OZ
x3 = w / 2; координаты конца
y3 = h; оси OZ
где ang = tg(α) * w / 2);
Начальные координаты находятся следующим образом: x0 = w / 2; y0 = h / 2;
Выведем координаты проекций точки А.
Рассмотрим следующий рисунок.
x0, y0– начальные координаты;
x, y, z – координаты точки А;
x2, y2 – координаты от экранных осей до ближних точек проекций;
Δx, Δy – координаты между проекцией на ось и проекцией на плоскость;
α – угол между положительным направлением OY и отрицательным направлением OX.
Найдем Δx, Δy из треугольников:
∆x = y*cos(α),
∆y = y*sin(α).
Теперь вычислим экранные координаты точек проекций на плоскости и на координатные оси:
АX = x0 – x + y*cos(α) координаты точки А АY = y0 – z + y*sin(α)
Координаты проекций на плоскости: А1X = x0 – x + y*cos(α) А1Y = y0 + y*sin(α)
А2X= x0 – x А2Y= y0 – z
А3X = x0 + y*cos(α) А3Y = y0 – z + y*sin(α)
Координаты проекций на оси:
АxX = x0 + y*cos(α) АxY = y0 + y*sin(α)
АyX = x0 – x АyY = y0
АzX = x0 АzY = y0 – z
координат точек и линий проекций для комплексного чертежа.
Даны координаты точки А в трехмерной декартовой системе координат пространства – x, y, z, а также ширина и высота чертежа – w и h. Для построения комплексного чертежа нам необходимо найти:
экранные начальные координаты комплексного чертежа;
координаты точек комплексного чертежа: A1, A2, A3, Ax, Ay1, Ay2, Az.
Начальные координаты находятся следующим образом: x0 = w / 2 y0 = h / 2
Рассмотрим следующий рисунок:
Расстояния x, y, z обозначены в соответствии с построением пространственного чертежа.
Из этого рисунка найдем координаты точек проекций на оси и на плоскости:
A1X = x0 – x A1Y = y0 + y
A2X= x0 – x A2Y= y0 – z
A3X = x0 + y A3Y = y0 – z
AxX = x0 – x AxY = y0
Ay1X = x0 + y Ay1Y = y0
Ay2X = x0 Ay2Y = y0 + y
AzX = x0 AzY = y0 – z
Отрисовка.
Для изображения необходимых объектов мы используем различные функции, определенные в C#, типа DrawLine, DrawString, DrawEllipse, DrawArc и т.д. Рисовать будем по вспомогательным координатам, рассчитанным на предыдущем этапе.
При каждом изменении положения одного из ползунков необходимо будет перерисовать чертежи. Во время перерисовки экрана, предыдущий чертеж стирается и рисуется новый.