# Calculate Intersections of Vector Data

This example shows how to calculate the intersections of arbitrary vector data, such as polylines or polygons, using the `polyxpoly` function.

Create two polygons that intersect.

```x1 = [10 20 40 50 50 40 20 10 10]; y1 = [20 10 10 20 40 50 50 40 20]; x2 = [30 60 30 0 30]; y2 = [40 50 70 60 40];```

Plot the polygons.

```mapshow(x1,y1) mapshow(x2,y2)``` Calculate the points where these two polygons intersect. The `polyxpoly` command finds the segments that intersect and interpolates to find the intersection points.

`[xint,yint] = polyxpoly(x1,y1,x2,y2)`
```xint = 2×1 45 18 ```
```yint = 2×1 45 48 ```

Display the points of intersection. If the spacing between points is large, there can be some difference between the intersection points computed by `polyxpoly` and the intersections shown on a map display. This is a result of the difference between straight lines in the unprojected and projected coordinates. Similarly, there can be differences between the `polyxpoly` result and intersections assuming great circles or rhumb lines between points.

`mapshow(xint,yint,'Displaytype','point','Marker','o')` ## Support Get trial now