Related Articles

# Python – Sympy Polygon.intersection() Method

• Last Updated : 01 Aug, 2020

In Sympy, the function Polygon.intersection() is used to get the intersection of a given polygon and the given geometry entity. The geometry entity can be a point, line, polygon, or other geometric figures. The intersection may be empty if the polygon and the given geometry entity are not intersected anywhere. But can contain individual Points or complete Line Segments if intersection exists.

```Syntax: Polygon.intersection(o)

Parameters: Geometry Entity

Returns: The list of Segments or Points of intersection.
```

Example #1:

## Python3

 `# import Point, Polygon``from` `sympy ``import` `Point, Polygon`` ` `# creating points using Point()``p1, p2, p3, p4 ``=` `map``(Point, [(``0``, ``0``), (``1``, ``0``), (``5``, ``1``), (``0``, ``1``)])``p5, p6, p7 ``=` `map``(Point, [(``3``, ``2``), (``1``, ``-``1``), (``0``, ``2``)])`` ` `# creating polygons using Polygon()``poly1 ``=` `Polygon(p1, p2, p3, p4)``poly2 ``=` `Polygon(p5, p6, p7)`` ` `# using intersection()``isIntersection ``=` `poly1.intersection(poly2)`` ` `print``(isIntersection)`

Output:

`[Point2D(1/3, 1), Point2D(2/3, 0), Point2D(9/5, 1/5), Point2D(7/3, 1)]`

Example #2:

## Python3

 `# import Point, Polygon``from` `sympy ``import` `Point, Polygon`` ` `# creating points using Point()``p1, p2, p3, p4 ``=` `map``(Point, [(``0``, ``0``), (``1``, ``0``), (``5``, ``1``), (``0``, ``1``)])`` ` `# creating polygon using Polygon()``poly1 ``=` `Polygon(p1, p2, p3, p4)`` ` `# using intersection()``isIntersection ``=` `poly1.intersection(Line(p1, Point(``3``, ``2``)))``                                     ` `print``(isIntersection)`

Output:

`[Point2D(0, 0), Point2D(3/2, 1)]`

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up