Как найти длину отрезка пересекающего треугольник

Чертежик

Метки

Точки пересечения треугольников пошаговое выполнение

Точки пересечения треугольников определяются в следующем порядке:

1.) Согласно заданию строятся точки по координатам.

2.) Теперь важным шагом является определение плоскости относительно которой будем искать точки пересечения треугольников.

Вы можете сказать: «можно найти точки относительно плоскости АВС», но нет. Почему!? Я объясню, посмотрев на рисунок, расположенный внизу, можно увидеть что треугольник D2E2F2, а точнее две стороны пересекают треугольник А2В2С2 в четырех точках, соответственно используем треугольник D2E2F2,как опорную плоскость.

  • Сторона D2E2 пересекает плоскость А2В2С2 в точках 1 2 и 2 2, эти точки переносим на нижнее изображение: на стороны относительно которых они были найдены и обозначаем 1 1 и 2 1.
  • Точки 1 1 и 2 1 соединяются.
  • Прямая 1 1 2 1 пересекает сторону D1E1 в точке, обозначим Р1 (первая точка найдена).

3.) Сторона E2F2 пересекает стороны B2C2 и A2C2 в точках 4 2 и 3 2. Опускаем их на нижний рисунок и обозначаем 4 1 и 3 1.

4.) Соединяются точки 3 1 и 4 1.

5.) Продливается прямая 3 1 4 1 до пересечения с отрезком E1F1. В месте пересечения ставим точку и обозначаем Н.

6.) Точки P1 и H соединяются. Полученная прямая P1H пересекает отрезок А2С2 в точке K1 (найдена вторая точка).

7.) Переносятся точки P1 и K1, расположенные на отрезках D1E1 и E1F1, на отрезки D2E2 и E2F2. И обозначаются P2 и K2.

8.) Соединяются P2 и K2.

9.) А теперь главный момент: указать видимые и невидимые стороны.

Посмотрите на рисунок снизу. На нем точки D, F, B, C и E находятся в двух проекциях «свободно», но не точка A. Соответственно, относительно ее и необходимо начинать чертить линии.

Пример выполненной работы на эту тему смотрите здесь.

Немного добавлю по этой статье: «Точки пересечения треугольников»

По своему опыту скажу: «чтобы начертить подобный чертеж, необходимо обладать пространственным воображением» и понимать, относительно какой плоскости отталкиваться для решения подобной задачи. Но благодаря этой статьи надеюсь у Вас получится разобраться с темой: пересечение плоских фигур.

Построить линию пересечения треугольников ABC и EDK и показать видимость их в проекциях.
Определить натуральную величину треугольника ABC.

1. Строим проекции треугольника АВС.

2. Строим проекции треугольника EDK.

3. Находим точку пересечения стороны АС с треугольником EDK

4. Находим точку пересечения стороны А B с треугольником EDK и строим линию пересечения MN

5. С помощью конкурирующих точек 4 и 5 определяем видимость треугольников на фронтальной плоскости проекций.

6. С помощью конкурирующих точек 6 и 7 определяем видимость треугольников на горизонтальной плоскости проекций.

7. В треугольнике ABC проводим горизонталь CL и плоскопараллельным перемещением относительно горизонтальной плоскости проекций располагаем горизонталь перпендикулярно фронтальной плоскости проекций.

Строим фронтальную проекцию треугольника ABC . Треугольник должен проецироваться в прямую линию.

8. Определяем действительную величину треугольника ABC и строим на нем линию пересечения MN.

Как проверить, пересекаются ли треугольники?

Моё почтение.
Задача: Сгенерировать 2 рандомных треугольника в системе координат, и проверить, пересекаются ли они.

Решил всё делать через canvas(а как же иначе).
Сгенерировать 2 раза по 3 отрезка (по координатам точек), проверить, что треугольник может получиться из них.
Затем соединить все три отрезка, что бы получились треугольники.

Интересует, как именно можно проверить пересекаются ли они, или нет?
Необходима формула с пояснением, где что.
Благодарю.

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

Оценить 1 комментарий

Решил всё делать через canvas(а как же иначе).

Варианты: не пересекаются, касаются снаружи, пересекаются, один касается другого изнутри, один полностью вложен во второй.

Пересекаются – какая-либо сторона одного треугольника пересекается с какой-нибудь стороной второго и стороны не параллельны, для каждой стороны первого треугольника проверяем каждую сторону второго.

Один полностью внутри другого – все вершины треугольника A расположены по одну сторону от сторон второго треугольника B, обходимого по контуру, то есть от отрезков B1B2, B2B3, B3B1.

Касание – вершина одного из треугольников лежит на стороне другого треугольника или сторона одного треугольника параллельна стороне второго и пересекается с ней.

Umid: Ок.
Отрезки AB и CD на плоскости пересекаются если пересекаются их проекции на оси X и Y, точки A и B лежат по разные стороны от отрезка CD, точки C и D лежат по разные стороны от отрезка AB.

Umid: Нарисуйте отрезок AB в системе координат OXY. Теперь из концов отрезка проведите вертикальные линии до пересечения с осью OX. Две получившиеся точки на оси дают новый отрезок, который является проекцией AB на ось OX. Аналогично, горизонтальные линии дадут проекцию на ось OY.

Теперь нарисуйте отрезок AB, поставьте рядом с ним точку C. Дорисуйте ещё один отрезок AC. Направление угла поворота от AB к AC можно найти через знак векторного произведения AB*AC, формулу я привёл выше. Точка C лежит слева от отрезка AB, если поворачивать надо влево, а векторное произведение больше нуля.

” Направление угла поворота от AB к AC можно найти через знак векторного произведения AB*AC, формулу я привёл выше. “

Здесь вы имеете ввиду найти угол между двумя векторами AB и AC?

“Точка C лежит слева от отрезка AB, если поворачивать надо влево, а векторное произведение больше нуля.”

Не понял это предложение, и зачем нам знать слева ли лежит точка C?

1. Получаете уравнения прямой для каждой из сторон каждого треугольника (y=kx+b и cоответствующее уравнение x=(y-b)/k)
обоснование решения: аксиома 1. При пересечении фигур, хотя бы одна вершина одной из фигур будет лежать на другой фигуре.
Далее при чтении см. Рисунок
2. Поочередно подставляете каждую координату каждой из вершин в получившиеся уравнения, красной линией показана геометрическая интерпретация подстановки X синей точки(предполагаемой вершины треугольника). При этом мы подставляем Х синей точки только в уравнения тех линий, у которых этот Х тоже присутствует. Геом. интерпретация – коричневые линии. То есть Х синей точки вне диапазона правой серой линии по Х, потому мы эту линию не проверяем.
Когда будем подставлять У, мы не будем проверять нижнюю линию по этой же причине.
Чтобы вершина, находилась внутри треугольника, вторая координата синей точки должна быть внутри интервала, полученного из уравнений (геом. интерпретация – зеленые линии – тот самый интервал, внутри которого должен быть Y синей точки).
Таким образом, если хоть одна из вершин проходит проверку и по Х и по У, она находится внутри или на поверхности другого треугольника и треугольники пересекаются.

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

Совсем не понял. Велосипед не могу себе позволить. Задача на городской олимпиаде по информатике встретилась. Скоро будет битва за выход на республиканскую олимпиаду. Хочу подготовиться как следует.

Как получить уравнение прямой?
С остальным тоже не понял.
Если можно, было бы неплохо 1 пример разобрать, если вам не составит труда.

[spoiler title=”источники:”]

http://student-com.ru/%D0%BF%D0%BE%D1%81%D1%82%D1%80%D0%BE%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BB%D0%B8%D0%BD%D0%B8%D0%B8-%D0%BF%D0%B5%D1%80%D0%B5%D1%81%D0%B5%D1%87%D0%B5%D0%BD%D0%B8%D1%8F-%D0%B4%D0%B2%D1%83%D1%85-%D1%82%D1%80%D0%B5%D1%83%D0%B3%D0%BE%D0%BB%D1%8C%D0%BD%D0%B8%D0%BA%D0%BE%D0%B2.html

http://qna.habr.com/q/388763

[/spoiler]

Точки пересечения треугольников определяются в следующем порядке:

1.) Согласно заданию строятся точки по координатам.

Точки пересечения треугольников

2.) Теперь важным шагом является определение плоскости относительно которой будем искать точки пересечения треугольников.

Вы можете сказать: «можно найти точки относительно плоскости АВС», но нет. Почему!? Я объясню, посмотрев на рисунок, расположенный внизу, можно увидеть что треугольник D2E2F2, а точнее две стороны пересекают треугольник А2В2С2 в четырех точках, соответственно используем треугольник D2E2F2,как опорную плоскость. 

  • Сторона D2E2 пересекает плоскость А2В2С2 в точках 12 и 22, эти точки переносим на нижнее изображение: на стороны относительно которых они были найдены и обозначаем 11 и 21.
  • Точки 11 и 21 соединяются.
  • Прямая 1121 пересекает сторону D1E1 в точке, обозначим Р1 (первая точка найдена).

Точки пересечения треугольников_2

3.) Сторона E2F2 пересекает стороны B2C2 и A2C2 в точках 42 и 32. Опускаем их на нижний рисунок и обозначаем 41 и 31.

Точки пересечения треугольников_3

4.) Соединяются точки 31 и 41.

Точки пересечения треугольников_4

5.) Продливается прямая 3141 до пересечения с отрезком E1F1. В месте пересечения ставим точку и обозначаем Н.

Точки пересечения треугольников_5

6.) Точки P1 и H соединяются. Полученная прямая P1H пересекает отрезок А2С2 в точке K1 (найдена вторая точка).

Точки пересечения треугольников_6

7.) Переносятся точки P1 и K1, расположенные на отрезках D1E1 и E1F1, на отрезки D2E2 и E2F2. И обозначаются P2 и K2.

Точки пересечения треугольников_7

8.) Соединяются P2 и K2.

Точки пересечения треугольников_8

9.) А теперь главный момент: указать видимые и невидимые стороны.

Посмотрите на рисунок снизу. На нем точки D, F, B, C и E находятся в двух проекциях «свободно», но не точка A. Соответственно, относительно ее и необходимо начинать чертить линии.

Точки пересечения треугольников_9

Пример выполненной работы на эту тему смотрите здесь.

Немного добавлю по этой статье: «Точки пересечения треугольников»

По своему опыту скажу: «чтобы начертить подобный чертеж, необходимо обладать пространственным воображением» и понимать, относительно какой плоскости отталкиваться для решения подобной задачи. Но благодаря этой статьи надеюсь у Вас получится разобраться с темой: пересечение плоских фигур.

Просмотрели 356


Простой алгоритм определения пересечения двух отрезков

Время на прочтение
4 мин

Количество просмотров 204K

Введение

В былые времена я увлекался компьютерной графикой, как 2х так и 3х мерной, в том числе математическими визуализациями. Что называется just for fun, будучи студентом, написал программу визуализирующую N-мерные фигуры, вращающиеся в любых измерениях, хотя практически меня хватило только на определение точек для 4-D гиперкуба. Но это только присказка. Любовь к геометрии осталась у меня с тех пор и по сей день, и я до сих пор люблю решать интересные задачи интересными способами.
Одна из таких задач попалась мне в 2010 году. Сама задача достаточно тривиальна: необходимо найти, пересекаются ли два 2-D отрезка, и если пересекаются — найти точку их пересечения. Более интересно решение, которое, я считаю, получилось достаточно элегантным, и которое я хочу предложить на суд читателя. На оригинальность алгоритма не претендую (хотя и хотелось бы), но в сети подобных решений я найти не смог.

Задача

Даны два отрезка, каждый из которых задан двумя точками: (v11, v12), (v21, v22). Необходимо определить, пересекаются ли они, и если пересекаются, найти точку их пересечения.

Решение

Для начала необходимо определить, пересекаются ли отрезки. Необходимое и достаточное условие пересечения, которое должно быть соблюдено для обоих отрезков следующее: конечные точки одного из отрезков должны лежать в разных полуплоскостях, если разделить плоскость линией, на которой лежит второй из отрезков. Продемонстрируем это рисунком.
image
На левом рисунке (1) показаны два отрезка, для обоих из которых условие соблюдено, и отрезки пересекаются. На правом (2) рисунке условие соблюдено для отрезка b, но для отрезка a оно не соблюдается, соответственно отрезки не пересекаются.
Может показаться, что определить, с какой стороны от линии лежит точка — нетривиальная задача, но у страха глаза велики, и всё не так сложно. Мы знаем, что векторное умножение двух векторов даёт нам третий вектор, направление которого зависит от того, положительный или отрицательный угол между первым и вторым вектором, соответственно такая операция антикоммутативна. А так как все вектора лежат на плоскости X-Y, то их векторное произведение (которое обязано быть перпендикулярным перемножаемым векторам) будет иметь ненулевой только компоненту Z, соответственно и отличие произведений векторов будет только в этой компоненте. Причем при изменении порядка перемножения векторов (читай: угла между перемножаемыми векторами) состоять оно будет исключительно в изменении знака этой компоненты.
Поэтому мы можем умножить попарно-векторно вектор разделяющего отрезка на векторы направленные от начала разделяющего отрезка к обеим точкам проверяемого отрезка.
image
Если компоненты Z обоих произведений будет иметь различный знак, значит один из углов меньше 0 но больше -180, а второй больше 0 и меньше 180, соответственно точки лежат по разные стороны от прямой. Если компоненты Z обоих произведений имеют одинаковый знак, следовательно и лежат они по одну сторону от прямой.
Если один из компонент Z является нулём, значит мы имеем пограничный случай, когда точка лежит аккурат на проверяемой прямой. Оставим пользователю определять, хочет ли он считать это пересечением.
Затем нам необходимо повторить операцию для другого отрезка и прямой, и убедиться в том, что расположение его конечных точек также удовлетворяет условию.
Итак, если всё хорошо и оба отрезка удовлетворяют условию, значит пересечение существует. Давайте найдём его, и в этом нам также поможет векторное произведение.
Так как в векторном произведении мы имеем ненулевой лишь компоненту Z, то его модуль (длина вектора) будет численно равен именно этой компоненте. Давайте посмотрим, как найти точку пересечения.
image
Длина векторного произведения векторов a и b (как мы выяснили, численно равная его компоненте Z) равна произведению модулей этих векторов на синус угла между ними (|a| |b| sin(ab)). Соответственно, для конфигурации на рисунке мы имеем следующее: |AB x AC| = |AB||AC|sin(α), и |AB x AD| = |AB||AD| sin(β). |AC|sin(α) является перпендикуляром, опущенным из точки C на отрезок AB, а |AD|sin(β) является перпендикуляром, опущенным из точки D на отрезок AB (катетом ADD’). Так как углы γ и δ — вертикальные углы, то они равны, а значит треугольники PCC’ и PDD’ подобны, а соответственно и длины всех их сторон пропорциональны в равном отношении.
Имея Z1 (AB x AC, а значит |AB||AC|sin(α) ) и Z2 (AB x AD, а значит |AB||AD|sin(β) ), мы можем рассчитать CC’/DD’ (которая будет равна Z1/Z2), а также зная что CC’/DD’ = CP/DP легко можно высчитать местоположение точки P. Лично я делаю это следующим образом:

Px = Cx + (Dx-Cx)*|Z1|/|Z2-Z1|;
Py = Cy + (Dy-Cy)*|Z1|/|Z2-Z1|;

Вот и все. Мне кажется что это действительно очень просто, и элегантно. В заключение хочу привести код функции, реализующий данный алгоритм. В функции использован самодельный шаблон vector<typename, int>, который является шаблоном вектора размерностью int с компонентами типа typename. Желающие легко могут подогнать функцию к своим типам векторов.

 1 template<typename T>
 2 bool are_crossing(vector<T, 2> const &v11, vector<T, 2> const &v12, vector<T, 2> const &v21, vector<T, 2> const &v22, vector<T, 2> *crossing)
 3 {
 4   vector<T, 3> cut1(v12-v11), cut2(v22-v21);
 5   vector<T, 3> prod1, prod2;
 6 
 7   prod1 = cross(cut1 * (v21-v11));
 8   prod2 = cross(cut1 * (v22-v11));
 9 
10   if(sign(prod1[Z]) == sign(prod2[Z]) || (prod1[Z] == 0) || (prod2[Z] == 0)) // Отсекаем также и пограничные случаи
11     return false;
12 
13   prod1 = cross(cut2 * (v11-v21));
14   prod2 = cross(cut2 * (v12-v21));
15 
16   if(sign(prod1[Z]) == sign(prod2[Z]) || (prod1[Z] == 0) || (prod2[Z] == 0)) // Отсекаем также и пограничные случаи
17     return false;
18 
19   if(crossing) { // Проверяем, надо ли определять место пересечения
20     (*crossing)[X] = v11[X] + cut1[X]*fabs(prod1[Z])/fabs(prod2[Z]-prod1[Z]);
21     (*crossing)[Y] = v11[Y] + cut1[Y]*fabs(prod1[Z])/fabs(prod2[Z]-prod1[Z]);
22   }
23 
24   return true;
25 }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
typedef struct _point 
{
    double x;
    double y;
}point;
 
// вычисляет положение точки D относительно AB
// важен знак
int g(point a, point b, point d) 
{
    double r = (d.x - a.x) * (b.y - a.y) - (d.y - a.y) * (b.x - a.x);
    if (fabs(r) < 0.000001)
        return 0;
    else if (r < 0)
        return -1;
    else return 1;
}
 
// возвращает 1/0, если отрезок [x,y] пересекает/не пересекает треугольник abc
bool f(point a, point b, point c, point x, point y) 
{
    // r1 == 3 -> треугольник по одну сторону от отрезка
    bool r1 = (3 != abs(g(x,y,a) + g(x,y,b) + g(x,y,c)));
    // r2 == 2 -> точки x,y по одну сторону от стороны ab
    bool r2 = (2 != abs(g(a,b,x) + g(a,b,y)));
    // r3 == 2 -> точки x,y по одну сторону от стороны bc
    bool r3 = (2 != abs(g(b,c,x) + g(b,c,y)));
    // r4 == 2 -> точки x,y по одну сторону от стороны ca
    bool r4 = (2 != abs(g(c,a,x) + g(c,a,y)));
    // r2 == r3 == r4 == 2 -> точки x,y по одну сторону от треугольника abс
 
    return (r1 && (r2 || r3 || r4));
}
 
int main() 
{
    point   a = {1,1};
    point   b = {5,5};
    point   c = {6,0};
    
    point   x = {1, 5};
    point   y = {2, 4};
   
    printf ("%dn",f(a,b,c,x,y));
   
    return 0;
}

Содержание

  1. Чертежик
  2. Метки
  3. Точки пересечения треугольников пошаговое выполнение
  4. Немного добавлю по этой статье: «Точки пересечения треугольников»
  5. Построить линию пересечения треугольников ABC и EDK и показать видимость их в проекциях. Определить натуральную величину треугольника ABC.
  6. Построение линии пересечения плоскостей, заданных различными способами
  7. Пересечение плоскостей, заданных следами
  8. Пересечение плоскостей треугольников
  9. Чертежик
  10. Метки
  11. Линия пересечения плоскостей двух треугольников

Чертежик

Метки

Точки пересечения треугольников пошаговое выполнение

Точки пересечения треугольников определяются в следующем порядке:

1.) Согласно заданию строятся точки по координатам.

2.) Теперь важным шагом является определение плоскости относительно которой будем искать точки пересечения треугольников.

Вы можете сказать: «можно найти точки относительно плоскости АВС», но нет. Почему!? Я объясню, посмотрев на рисунок, расположенный внизу, можно увидеть что треугольник D2E2F2, а точнее две стороны пересекают треугольник А2В2С2 в четырех точках, соответственно используем треугольник D2E2F2,как опорную плоскость.

  • Сторона D2E2 пересекает плоскость А2В2С2 в точках 1 2 и 2 2, эти точки переносим на нижнее изображение: на стороны относительно которых они были найдены и обозначаем 1 1 и 2 1.
  • Точки 1 1 и 2 1 соединяются.
  • Прямая 1 1 2 1 пересекает сторону D1E1 в точке, обозначим Р1 (первая точка найдена).

3.) Сторона E2F2 пересекает стороны B2C2 и A2C2 в точках 4 2 и 3 2. Опускаем их на нижний рисунок и обозначаем 4 1 и 3 1.

4.) Соединяются точки 3 1 и 4 1.

5.) Продливается прямая 3 1 4 1 до пересечения с отрезком E1F1. В месте пересечения ставим точку и обозначаем Н.

6.) Точки P1 и H соединяются. Полученная прямая P1H пересекает отрезок А2С2 в точке K1 (найдена вторая точка).

7.) Переносятся точки P1 и K1, расположенные на отрезках D1E1 и E1F1, на отрезки D2E2 и E2F2. И обозначаются P2 и K2.

8.) Соединяются P2 и K2.

9.) А теперь главный момент: указать видимые и невидимые стороны.

Посмотрите на рисунок снизу. На нем точки D, F, B, C и E находятся в двух проекциях «свободно», но не точка A. Соответственно, относительно ее и необходимо начинать чертить линии.

Пример выполненной работы на эту тему смотрите здесь.

Немного добавлю по этой статье: «Точки пересечения треугольников»

По своему опыту скажу: «чтобы начертить подобный чертеж, необходимо обладать пространственным воображением» и понимать, относительно какой плоскости отталкиваться для решения подобной задачи. Но благодаря этой статьи надеюсь у Вас получится разобраться с темой: пересечение плоских фигур.

Источник

Построить линию пересечения треугольников ABC и EDK и показать видимость их в проекциях.
Определить натуральную величину треугольника ABC.

1. Строим проекции треугольника АВС.

2. Строим проекции треугольника EDK.

3. Находим точку пересечения стороны АС с треугольником EDK

4. Находим точку пересечения стороны А B с треугольником EDK и строим линию пересечения MN

5. С помощью конкурирующих точек 4 и 5 определяем видимость треугольников на фронтальной плоскости проекций.

6. С помощью конкурирующих точек 6 и 7 определяем видимость треугольников на горизонтальной плоскости проекций.

7. В треугольнике ABC проводим горизонталь CL и плоскопараллельным перемещением относительно горизонтальной плоскости проекций располагаем горизонталь перпендикулярно фронтальной плоскости проекций.

Строим фронтальную проекцию треугольника ABC . Треугольник должен проецироваться в прямую линию.

8. Определяем действительную величину треугольника ABC и строим на нем линию пересечения MN.

Источник

Построение линии пересечения плоскостей, заданных различными способами

Две плоскости пересекаются друг с другом по прямой линии. Чтобы её построить, необходимо определить две точки, принадлежащие одновременно каждой из заданных плоскостей. Рассмотрим, как это делается, на следующих примерах.

Найдем линию пересечения плоскостей общего положения α и β для случая, когда пл. α задана проекциями треугольника ABC, а пл. β – параллельными прямыми d и e. Решение этой задачи осуществляется путем построения точек L1 и L2, принадлежащих линии пересечения.

  1. Вводим вспомогательную горизонтальную плоскость γ1. Она пересекает α и β по прямым. Фронтальные проекции этих прямых, 1»C» и 2»3», совпадают с фронтальным следом пл. γ1. Он обозначен на рисунке как f0γ1 и расположен параллельно оси x.
  2. Определяем горизонтальные проекции 1’C’ и 2’3′ по линиям связи.
  3. Находим горизонтальную проекцию точки L1 на пересечении прямых 1’C’ и 2’3′. Фронтальная проекция точки L1 лежит на фронтальном следе плоскости γ.
  4. Вводим вспомогательную горизонтальную плоскость γ2. С помощью построений, аналогичных описанным в пунктах 1, 2, 3, находим проекции точки L2.
  5. Через L1 и L2 проводим искомую прямую l.

Стоит отметить, что в качестве пл. γ удобно использовать как плоскости уровня, так и проецирующие плоскости.

Пересечение плоскостей, заданных следами

Найдем линию пересечения плоскостей α и β, заданных следами. Эта задача значительно проще предыдущей. Она не требует введения вспомогательных плоскостей. Их роль выполняют плоскости проекций П1 и П2.

  1. Находим точку L’1, расположенную на пересечении горизонтальных следов h0α и h0β. Точка L»1 лежит на оси x. Её положение определяется при помощи линии связи, проведенной из L’1.
  2. Находим точку L»2 на пересечении фронтальных следов пл. α и β. Точка L’2 лежит на оси x. Её положение определяется по линии связи, проведенной из L»2.
  3. Проводим прямые l’ и l» через соответствующие проекции точек L1 и L2, как это показано на рисунке.

Таким образом, прямая l, проходящая через точки пересечения следов плоскостей, является искомой.

Пересечение плоскостей треугольников

Рассмотрим построение линии пересечения плоскостей, заданных треугольниками ABC и DEF, и определение их видимости методом конкурирующих точек.

  1. Через прямую DE проводим фронтально-проецирующую плоскость σ: на чертеже обозначен ее след f. Плоскость σ пересекает треугольник ABC по прямой 35. Отметив точки 3»=A»B»∩f и 5»=A»С»∩f, определяем положение (∙)3′ и (∙)5′ по линиям связи на ΔA’B’C’.
  2. Находим горизонтальную проекцию N’=D’E’∩3’5′ точки N пересечения прямых DE и 35, которые лежат во вспомогательной плоскости σ. Проекция N» расположена на фронтальном следе f на одной линии связи с N’.

Через прямую BC проводим фронтально-проецирующую плоскость τ: на чертеже обозначен ее след f. С помощью построений, аналогичных тем, что описаны в пунктах 1 и 2 алгоритма, находим проекции точки K.

  • Через N и K проводим искомую прямую NK – линию пересечения ΔABC и ΔDEF.
  • Фронтально-конкурирующие точки 4 и 5, принадлежащие ΔDEF и ΔABC соответственно, находятся на одной фронтально-проецирующей прямой, но расположены на разном удалении от плоскости проекций π2. Так как (∙)5′ находится ближе к наблюдателю, чем (∙)4′, то отсек ΔABC с принадлежащей ему (∙)5 является видимым в проекции на пл. π2. С противоположной стороны от линии N»K» видимость треугольников меняется.

    Горизонтально-конкурирующие точки 6 и 7, принадлежащие ΔABC и ΔDEF соответственно, находятся на одной горизонтально-проецирующей прямой, но расположены на разном удалении от плоскости проекций π1. Так как (∙)6» находится выше, чем (∙)7», то отсек ΔABC с принадлежащей ему (∙)6 является видимым в проекции на пл. π1. С противоположной стороны от линии N’K’ видимость треугольников меняется.

    Источник

    Чертежик

    Метки

    Линия пересечения плоскостей двух треугольников

    Линия пересечения плоскостей двух треугольников начинают с построения точек по координатам. (на рисунке 1 представлены построенные плоскости)

    1. Построение по координатам.

    2. Выбираете какая из сторон плоскостей будет секущей . В данном случае возьмем Е2D2 ,принадлежащая плоскости Е2D2F2, которая пересекает плоскость А2В2С2 в точка 12 и 22.

    Полученные точки, проецируют на стороны плоскости, которым они принадлежат, т.е С1В1 и А1В1.

    Т.к. секущей является ЕD, то необходимо чтобы прямая 1121 пересекла секущую. В данном случае в точке К1.(Первая точка найдена)

    3. Одной точки мало будет. Повторим действия, описанные в пункте 2, но с отрезком E2F2.

    E2F2 пересекает А2В2С2 в точках 32 и 42. Проецируете на стороны А1С1 и А1В1.

    Т.к. секущей является EF, то необходимо чтобы прямая 3141 пересекла секущую, но такого нет (не хватает немного отрезка). Для этого прямая 3141 продливается пока не пересечется с E1F1. Обозначаете точку (обозначил Н1).(Но Н1 не является точкой пересечения, потому как на виде сверху принадлежит только одной плости)

    4. Соединяются точки К1 и Н1. Ближайшая точка, принадлежащая этой прямой и двум плоскостям, находится на стороне А1В1 плоскости А1В1С1, обозначаем Р1. (Вторая точка найдена)

    5. Найденные точки необходимо спроецировать на стороны плоскости, которым они принадлежат.

    5. Обводите соответсвующими линиями контуры плоскостей, воспользовавшись методом конкурирующих точек.

    Источник

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