Determine if two triangles overlap: Difference between revisions
Content added Content deleted
Walterpachl (talk | contribs) (→{{header|ooRexx}}: removed the fraction arithmetic (was a false Alarm?)) |
Walterpachl (talk | contribs) m (→{{header|ooRexx}}: align Output with program (includes the Extended testing)) |
||
Line 700: | Line 700: | ||
Return res </lang> |
Return res </lang> |
||
{{out}} |
{{out}} |
||
<pre> |
<pre>0 0 4 0 0 4 1 1 2 1 1 2 |
||
Triangle: ABC: (0,0) (4,0) (0,4) |
|||
Triangle: DEF: (1,1) (2,1) (1,2) |
|||
(1,1) (2,1) (1,2) is fully contained in (0,0) (4,0) (0,4) |
|||
2 1 1 2 1 1 4 0 0 4 0 0 |
|||
Triangle: ABC: (2,1) (1,2) (1,1) |
|||
Triangle: DEF: (4,0) (0,4) (0,0) |
|||
(2,1) (1,2) (1,1) is fully contained in (4,0) (0,4) (0,0) |
|||
1 2 2 1 1 1 0 4 4 0 0 0 |
|||
Triangle: ABC: (1,2) (2,1) (1,1) |
|||
Triangle: DEF: (0,4) (4,0) (0,0) |
|||
(1,2) (2,1) (1,1) is fully contained in (0,4) (4,0) (0,0) |
|||
0 0 0 4 4 0 1 1 1 2 2 1 |
|||
Triangle: ABC: (0,0) (0,4) (4,0) |
|||
Triangle: DEF: (1,1) (1,2) (2,1) |
|||
(1,1) (1,2) (2,1) is fully contained in (0,0) (0,4) (4,0) |
|||
1 1 1 2 2 1 0 0 0 4 4 0 |
|||
Triangle: ABC: (1,1) (1,2) (2,1) |
|||
Triangle: DEF: (0,0) (0,4) (4,0) |
|||
(1,1) (1,2) (2,1) is fully contained in (0,0) (0,4) (4,0) |
|||
0 0 0 4 4 0 1 1 1 2 2 1 |
|||
Triangle: ABC: (0,0) (0,4) (4,0) |
|||
Triangle: DEF: (1,1) (1,2) (2,1) |
|||
(1,1) (1,2) (2,1) is fully contained in (0,0) (0,4) (4,0) |
|||
0 0 0 6 8 3 8 0 8 8 0 3 |
|||
Triangle: ABC: (0,0) (0,6) (8,3) |
|||
Triangle: DEF: (8,0) (8,8) (0,3) |
|||
Corner(s) that touch the other triangle: (0,3) (8,3) |
|||
Triangles overlap and touch on (0,3) (8,3) |
|||
3 0 8 8 0 8 3 8 6 0 0 0 |
|||
Triangle: ABC: (3,0) (8,8) (0,8) |
|||
Triangle: DEF: (3,8) (6,0) (0,0) |
|||
Corner(s) that touch the other triangle: (3,8) (3,0) |
|||
Triangles overlap and touch on (3,8) (3,0) |
|||
0 3 8 8 8 0 8 3 0 6 0 0 |
|||
Triangle: ABC: (0,3) (8,8) (8,0) |
|||
Triangle: DEF: (8,3) (0,6) (0,0) |
|||
Corner(s) that touch the other triangle: (8,3) (0,3) |
|||
Triangles overlap and touch on (8,3) (0,3) |
|||
0 0 6 0 3 8 0 8 8 8 3 0 |
|||
Triangle: ABC: (0,0) (6,0) (3,8) |
|||
Triangle: DEF: (0,8) (8,8) (3,0) |
|||
Corner(s) that touch the other triangle: (3,0) (3,8) |
|||
Triangles overlap and touch on (3,0) (3,8) |
|||
0 8 8 8 3 0 0 0 6 0 3 8 |
|||
Triangle: ABC: (0,8) (8,8) (3,0) |
|||
Triangle: DEF: (0,0) (6,0) (3,8) |
|||
Corner(s) that touch the other triangle: (3,8) (3,0) |
|||
Triangles overlap and touch on (3,8) (3,0) |
|||
0 0 6 0 3 8 0 8 8 8 3 0 |
|||
Triangle: ABC: (0,0) (6,0) (3,8) |
|||
Triangle: DEF: (0,8) (8,8) (3,0) |
|||
Corner(s) that touch the other triangle: (3,0) (3,8) |
|||
Triangles overlap and touch on (3,0) (3,8) |
|||
0 0 0 2 2 0 0 0 4 0 0 6 |
|||
Triangle: ABC: (0,0) (0,2) (2,0) |
|||
Triangle: DEF: (0,0) (4,0) (0,6) |
|||
Corner(s) that touch the other triangle: (0,0) (0,2) (2,0) |
|||
Triangles overlap and touch on (0,0) (0,2) (2,0) |
|||
6 0 0 4 0 0 0 2 2 0 0 0 |
|||
Triangle: ABC: (6,0) (0,4) (0,0) |
|||
Triangle: DEF: (0,2) (2,0) (0,0) |
|||
Corner(s) that touch the other triangle: (0,2) (2,0) (0,0) |
|||
Triangles overlap and touch on (0,2) (2,0) (0,0) |
|||
0 6 4 0 0 0 2 0 0 2 0 0 |
|||
Triangle: ABC: (0,6) (4,0) (0,0) |
|||
Triangle: DEF: (2,0) (0,2) (0,0) |
|||
Corner(s) that touch the other triangle: (2,0) (0,2) (0,0) |
|||
Triangles overlap and touch on (2,0) (0,2) (0,0) |
|||
0 0 2 0 0 2 0 0 0 4 6 0 |
|||
Triangle: ABC: (0,0) (2,0) (0,2) |
|||
Triangle: DEF: (0,0) (0,4) (6,0) |
|||
Corner(s) that touch the other triangle: (0,0) (2,0) (0,2) |
|||
Triangles overlap and touch on (0,0) (2,0) (0,2) |
|||
0 0 0 4 6 0 0 0 2 0 0 2 |
|||
Triangle: ABC: (0,0) (0,4) (6,0) |
|||
Triangle: DEF: (0,0) (2,0) (0,2) |
|||
Corner(s) that touch the other triangle: (0,0) (2,0) (0,2) |
|||
Triangles overlap and touch on (0,0) (2,0) (0,2) |
|||
0 0 2 0 0 2 0 0 0 4 6 0 |
|||
Triangle: ABC: (0,0) (2,0) (0,2) |
|||
Triangle: DEF: (0,0) (0,4) (6,0) |
|||
Corner(s) that touch the other triangle: (0,0) (2,0) (0,2) |
|||
Triangles overlap and touch on (0,0) (2,0) (0,2) |
|||
0 0 5 0 0 5 0 0 5 0 0 6 |
|||
Triangle: ABC: (0,0) (5,0) (0,5) |
|||
Triangle: DEF: (0,0) (5,0) (0,6) |
Triangle: DEF: (0,0) (5,0) (0,6) |
||
Corner(s) that touch the other triangle: (0,0) (5,0) (0,5) |
Corner(s) that touch the other triangle: (0,0) (5,0) (0,5) |
||
Triangles have an edge in common: (0,0) (5,0) |
Triangles have an edge in common: (0,0) (5,0) |
||
6 0 0 5 0 0 5 0 0 5 0 0 |
|||
Triangle: ABC: (6,0) (0,5) (0,0) |
|||
Triangle: DEF: (5,0) (0,5) (0,0) |
|||
Corner(s) that touch the other triangle: (5,0) (0,5) (0,0) |
|||
Triangles have an edge in common: (0,5) (0,0) |
|||
0 6 5 0 0 0 0 5 5 0 0 0 |
|||
Triangle: ABC: (0,6) (5,0) (0,0) |
|||
Triangle: DEF: (0,5) (5,0) (0,0) |
|||
Corner(s) that touch the other triangle: (0,5) (5,0) (0,0) |
|||
Triangles have an edge in common: (5,0) (0,0) |
|||
0 0 0 5 5 0 0 0 0 5 6 0 |
|||
Triangle: ABC: (0,0) (0,5) (5,0) |
|||
Triangle: DEF: (0,0) (0,5) (6,0) |
|||
Corner(s) that touch the other triangle: (0,0) (0,5) (5,0) |
|||
Triangles have an edge in common: (0,0) (0,5) |
|||
0 0 0 5 6 0 0 0 0 5 5 0 |
|||
Triangle: ABC: (0,0) (0,5) (6,0) |
|||
Triangle: DEF: (0,0) (0,5) (5,0) |
|||
Corner(s) that touch the other triangle: (0,0) (0,5) (5,0) |
|||
Triangles have an edge in common: (0,0) (0,5) |
|||
0 0 0 5 5 0 0 0 0 5 6 0 |
|||
Triangle: ABC: (0,0) (0,5) (5,0) |
|||
Triangle: DEF: (0,0) (0,5) (6,0) |
|||
Corner(s) that touch the other triangle: (0,0) (0,5) (5,0) |
|||
Triangles have an edge in common: (0,0) (0,5) |
|||
0 0 0 5 5 0 0 0 0 5 5 0 |
|||
Triangle: ABC: (0,0) (0,5) (5,0) |
Triangle: ABC: (0,0) (0,5) (5,0) |
||
Triangle: DEF: (0,0) (0,5) (5,0) |
Triangle: DEF: (0,0) (0,5) (5,0) |
||
Line 711: | Line 838: | ||
Triangles are identical |
Triangles are identical |
||
0 5 5 0 0 0 0 5 5 0 0 0 |
|||
Triangle: ABC: (0,5) (5,0) (0,0) |
|||
Triangle: DEF: (0,5) (5,0) (0,0) |
|||
Corner(s) that touch the other triangle: (0,5) (5,0) (0,0) |
|||
Triangles are identical |
|||
5 0 0 5 0 0 5 0 0 5 0 0 |
|||
Triangle: ABC: (5,0) (0,5) (0,0) |
|||
Triangle: DEF: (5,0) (0,5) (0,0) |
|||
Corner(s) that touch the other triangle: (5,0) (0,5) (0,0) |
|||
Triangles are identical |
|||
0 0 5 0 0 5 0 0 5 0 0 5 |
|||
Triangle: ABC: (0,0) (5,0) (0,5) |
|||
Triangle: DEF: (0,0) (5,0) (0,5) |
|||
Corner(s) that touch the other triangle: (0,0) (5,0) (0,5) |
|||
Triangles are identical |
|||
0 0 5 0 0 5 0 0 5 0 0 5 |
|||
Triangle: ABC: (0,0) (5,0) (0,5) |
|||
Triangle: DEF: (0,0) (5,0) (0,5) |
|||
Corner(s) that touch the other triangle: (0,0) (5,0) (0,5) |
|||
Triangles are identical |
|||
0 0 5 0 0 5 0 0 5 0 0 5 |
|||
Triangle: ABC: (0,0) (5,0) (0,5) |
|||
Triangle: DEF: (0,0) (5,0) (0,5) |
|||
Corner(s) that touch the other triangle: (0,0) (5,0) (0,5) |
|||
Triangles are identical |
|||
0 0 5 0 0 5 -10 0 -5 0 -1 6 |
|||
Triangle: ABC: (0,0) (5,0) (0,5) |
Triangle: ABC: (0,0) (5,0) (0,5) |
||
Triangle: DEF: (-10,0) (-5,0) (-1,6) |
Triangle: DEF: (-10,0) (-5,0) (-1,6) |
||
(0,0) (5,0) (0,5) and (-10,0) (-5,0) (-1,6) don't overlap |
(0,0) (5,0) (0,5) and (-10,0) (-5,0) (-1,6) don't overlap |
||
6 -1 0 -5 0 -10 5 0 0 5 0 0 |
|||
Triangle: ABC: (6,-1) (0,-5) (0,-10) |
|||
Triangle: DEF: (5,0) (0,5) (0,0) |
|||
(6,-1) (0,-5) (0,-10) and (5,0) (0,5) (0,0) don't overlap |
|||
-1 6 -5 0 -10 0 0 5 5 0 0 0 |
|||
Triangle: ABC: (-1,6) (-5,0) (-10,0) |
|||
Triangle: DEF: (0,5) (5,0) (0,0) |
|||
(-1,6) (-5,0) (-10,0) and (0,5) (5,0) (0,0) don't overlap |
|||
0 0 0 5 5 0 0 -10 0 -5 6 -1 |
|||
Triangle: ABC: (0,0) (0,5) (5,0) |
|||
Triangle: DEF: (0,-10) (0,-5) (6,-1) |
|||
(0,0) (0,5) (5,0) and (0,-10) (0,-5) (6,-1) don't overlap |
|||
0 -10 0 -5 6 -1 0 0 0 5 5 0 |
|||
Triangle: ABC: (0,-10) (0,-5) (6,-1) |
|||
Triangle: DEF: (0,0) (0,5) (5,0) |
|||
(0,-10) (0,-5) (6,-1) and (0,0) (0,5) (5,0) don't overlap |
|||
0 0 0 5 5 0 0 -10 0 -5 6 -1 |
|||
Triangle: ABC: (0,0) (0,5) (5,0) |
|||
Triangle: DEF: (0,-10) (0,-5) (6,-1) |
|||
(0,0) (0,5) (5,0) and (0,-10) (0,-5) (6,-1) don't overlap |
|||
0 0 5 0 2.5 5 0 4 2.5 -1 5 4 |
|||
Triangle: ABC: (0,0) (5,0) (2.5,5) |
Triangle: ABC: (0,0) (5,0) (2.5,5) |
||
Triangle: DEF: (0,4) (2.5,-1) (5,4) |
Triangle: DEF: (0,4) (2.5,-1) (5,4) |
||
(0,0) (5,0) (2.5,5) and (0,4) (2.5,-1) (5,4) overlap |
(0,0) (5,0) (2.5,5) and (0,4) (2.5,-1) (5,4) overlap |
||
4 5 -1 2.5 4 0 5 2.5 0 5 0 0 |
|||
Triangle: ABC: (4,5) (-1,2.5) (4,0) |
|||
Triangle: DEF: (5,2.5) (0,5) (0,0) |
|||
(4,5) (-1,2.5) (4,0) and (5,2.5) (0,5) (0,0) overlap |
|||
5 4 2.5 -1 0 4 2.5 5 5 0 0 0 |
|||
Triangle: ABC: (5,4) (2.5,-1) (0,4) |
|||
Triangle: DEF: (2.5,5) (5,0) (0,0) |
|||
(5,4) (2.5,-1) (0,4) and (2.5,5) (5,0) (0,0) overlap |
|||
0 0 0 5 5 2.5 4 0 -1 2.5 4 5 |
|||
Triangle: ABC: (0,0) (0,5) (5,2.5) |
|||
Triangle: DEF: (4,0) (-1,2.5) (4,5) |
|||
(0,0) (0,5) (5,2.5) and (4,0) (-1,2.5) (4,5) overlap |
|||
4 0 -1 2.5 4 5 0 0 0 5 5 2.5 |
|||
Triangle: ABC: (4,0) (-1,2.5) (4,5) |
|||
Triangle: DEF: (0,0) (0,5) (5,2.5) |
|||
(4,0) (-1,2.5) (4,5) and (0,0) (0,5) (5,2.5) overlap |
|||
0 0 0 5 5 2.5 4 0 -1 2.5 4 5 |
|||
Triangle: ABC: (0,0) (0,5) (5,2.5) |
|||
Triangle: DEF: (4,0) (-1,2.5) (4,5) |
|||
(0,0) (0,5) (5,2.5) and (4,0) (-1,2.5) (4,5) overlap |
|||
0 0 1 1 0 2 2 1 3 0 3 2 |
|||
Triangle: ABC: (0,0) (1,1) (0,2) |
Triangle: ABC: (0,0) (1,1) (0,2) |
||
Triangle: DEF: (2,1) (3,0) (3,2) |
Triangle: DEF: (2,1) (3,0) (3,2) |
||
(0,0) (1,1) (0,2) and (2,1) (3,0) (3,2) don't overlap |
(0,0) (1,1) (0,2) and (2,1) (3,0) (3,2) don't overlap |
||
2 3 0 3 1 2 2 0 1 1 0 0 |
|||
Triangle: ABC: (2,3) (0,3) (1,2) |
|||
Triangle: DEF: (2,0) (1,1) (0,0) |
|||
(2,3) (0,3) (1,2) and (2,0) (1,1) (0,0) don't overlap |
|||
3 2 3 0 2 1 0 2 1 1 0 0 |
|||
Triangle: ABC: (3,2) (3,0) (2,1) |
|||
Triangle: DEF: (0,2) (1,1) (0,0) |
|||
(3,2) (3,0) (2,1) and (0,2) (1,1) (0,0) don't overlap |
|||
0 0 1 1 2 0 1 2 0 3 2 3 |
|||
Triangle: ABC: (0,0) (1,1) (2,0) |
|||
Triangle: DEF: (1,2) (0,3) (2,3) |
|||
(0,0) (1,1) (2,0) and (1,2) (0,3) (2,3) don't overlap |
|||
1 2 0 3 2 3 0 0 1 1 2 0 |
|||
Triangle: ABC: (1,2) (0,3) (2,3) |
|||
Triangle: DEF: (0,0) (1,1) (2,0) |
|||
(1,2) (0,3) (2,3) and (0,0) (1,1) (2,0) don't overlap |
|||
0 0 1 1 2 0 1 2 0 3 2 3 |
|||
Triangle: ABC: (0,0) (1,1) (2,0) |
|||
Triangle: DEF: (1,2) (0,3) (2,3) |
|||
(0,0) (1,1) (2,0) and (1,2) (0,3) (2,3) don't overlap |
|||
0 0 1 1 0 2 2 1 3 -2 3 4 |
|||
Triangle: ABC: (0,0) (1,1) (0,2) |
Triangle: ABC: (0,0) (1,1) (0,2) |
||
Triangle: DEF: (2,1) (3,-2) (3,4) |
Triangle: DEF: (2,1) (3,-2) (3,4) |
||
(0,0) (1,1) (0,2) and (2,1) (3,-2) (3,4) don't overlap |
(0,0) (1,1) (0,2) and (2,1) (3,-2) (3,4) don't overlap |
||
4 3 -2 3 1 2 2 0 1 1 0 0 |
|||
Triangle: ABC: (4,3) (-2,3) (1,2) |
|||
Triangle: DEF: (2,0) (1,1) (0,0) |
|||
(4,3) (-2,3) (1,2) and (2,0) (1,1) (0,0) don't overlap |
|||
3 4 3 -2 2 1 0 2 1 1 0 0 |
|||
Triangle: ABC: (3,4) (3,-2) (2,1) |
|||
Triangle: DEF: (0,2) (1,1) (0,0) |
|||
(3,4) (3,-2) (2,1) and (0,2) (1,1) (0,0) don't overlap |
|||
0 0 1 1 2 0 1 2 -2 3 4 3 |
|||
Triangle: ABC: (0,0) (1,1) (2,0) |
|||
Triangle: DEF: (1,2) (-2,3) (4,3) |
|||
(0,0) (1,1) (2,0) and (1,2) (-2,3) (4,3) don't overlap |
|||
1 2 -2 3 4 3 0 0 1 1 2 0 |
|||
Triangle: ABC: (1,2) (-2,3) (4,3) |
|||
Triangle: DEF: (0,0) (1,1) (2,0) |
|||
(1,2) (-2,3) (4,3) and (0,0) (1,1) (2,0) don't overlap |
|||
0 0 1 1 2 0 1 2 -2 3 4 3 |
|||
Triangle: ABC: (0,0) (1,1) (2,0) |
|||
Triangle: DEF: (1,2) (-2,3) (4,3) |
|||
(0,0) (1,1) (2,0) and (1,2) (-2,3) (4,3) don't overlap |
|||
0 0 1 0 0 1 1 0 2 0 1 1 |
|||
Triangle: ABC: (0,0) (1,0) (0,1) |
Triangle: ABC: (0,0) (1,0) (0,1) |
||
Triangle: DEF: (1,0) (2,0) (1,1) |
Triangle: DEF: (1,0) (2,0) (1,1) |
||
Line 737: | Line 994: | ||
Triangles touch on (1,0) |
Triangles touch on (1,0) |
||
we analyze further |
we analyze further |
||
(0,0) (1,0) (0,1) and (1,0) (2,0) (1,1) don't overlap but touch on (1,0) |
(0,0) (1,0) (0,1) and (1,0) (2,0) (1,1) don't overlap but touch on (1,0) |
||
1 1 0 2 0 1 1 0 0 1 0 0 |
|||
Triangle: ABC: (1,1) (0,2) (0,1) |
|||
Triangle: DEF: (1,0) (0,1) (0,0) |
|||
Corner(s) that touch the other triangle: (0,1) |
|||
Triangles touch on (0,1) |
|||
we analyze further |
|||
(1,1) (0,2) (0,1) and (1,0) (0,1) (0,0) don't overlap but touch on (0,1) |
|||
1 1 2 0 1 0 0 1 1 0 0 0 |
|||
Triangle: ABC: (1,1) (2,0) (1,0) |
|||
Triangle: DEF: (0,1) (1,0) (0,0) |
|||
Corner(s) that touch the other triangle: (1,0) |
|||
Triangles touch on (1,0) |
|||
we analyze further |
|||
(1,1) (2,0) (1,0) and (0,1) (1,0) (0,0) overlap and touch on (1,0) |
|||
0 0 0 1 1 0 0 1 0 2 1 1 |
|||
Triangle: ABC: (0,0) (0,1) (1,0) |
|||
Triangle: DEF: (0,1) (0,2) (1,1) |
|||
Corner(s) that touch the other triangle: (0,1) |
|||
Triangles touch on (0,1) |
|||
we analyze further |
|||
(0,0) (0,1) (1,0) and (0,1) (0,2) (1,1) don't overlap but touch on (0,1) |
|||
0 1 0 2 1 1 0 0 0 1 1 0 |
|||
Triangle: ABC: (0,1) (0,2) (1,1) |
|||
Triangle: DEF: (0,0) (0,1) (1,0) |
|||
Corner(s) that touch the other triangle: (0,1) |
|||
Triangles touch on (0,1) |
|||
we analyze further |
|||
(0,1) (0,2) (1,1) and (0,0) (0,1) (1,0) don't overlap but touch on (0,1) |
|||
0 0 0 1 1 0 0 1 0 2 1 1 |
|||
Triangle: ABC: (0,0) (0,1) (1,0) |
|||
Triangle: DEF: (0,1) (0,2) (1,1) |
|||
Corner(s) that touch the other triangle: (0,1) |
|||
Triangles touch on (0,1) |
|||
we analyze further |
|||
(0,0) (0,1) (1,0) and (0,1) (0,2) (1,1) don't overlap but touch on (0,1)</pre> |
|||
=={{header|Python}}== |
=={{header|Python}}== |