# Import .shp from Mapinfo - unsupported geometry type

**URL:** <https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387>\
**Category:** Bug Reports\
**Created:** [24 September 2021 03:44 UTC](https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387 "2021-09-24T03:44:24Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![thomas.schaap](https://discourse.gplates.org/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@thomas.schaap](https://discourse.gplates.org/u/thomas.schaap)\
**Post date:** [24 September 2021 03:44 UTC](https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387/1 "2021-09-24T03:44:24Z")

</div>

Hi folks,

A colleague of mine created a polygon feature class using mapinfo which we wanted to bring into GPlates to reconstruct. The problem is that GPlates won’t read it! It says the geometry type is unsupported (see below). Any ideas what is going on here? I have never used mapinfo before.

 ![image](https://discourse.gplates.org/uploads/default/original/1X/45c93f005e19c93ee39e4da8ea364a38596c4c20.png)

Cheers,  
Tom

---

<div class="post-metadata">

**Author:** ![john.cannon](https://discourse.gplates.org/letter_avatar_proxy/v4/letter/j/3e96dc/32.png) [@john.cannon](https://discourse.gplates.org/u/john.cannon)\
**Post date:** [24 September 2021 04:22 UTC](https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387/2 "2021-09-24T04:22:27Z")

</div>

Hi Tom,

It’s because the geometry is not a `Point`, `LineString` or `Polygon` (or `Multi` version of those). These are the types GPlates supports. Anything other than these just get ignored, but they don’t abort the loading of regular geometry types.

There are _curve_ versions of the above linear geometries - see [here](https://trac.osgeo.org/gdal/wiki/rfc49_curve_geometries). The problematic geometry might be one of these types. In future we’ll investigate accepting curve types - perhaps by turning them into tessellated linear versions.

---

<div class="post-metadata">

**Author:** ![thomas.schaap](https://discourse.gplates.org/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@thomas.schaap](https://discourse.gplates.org/u/thomas.schaap)\
**Post date:** [24 September 2021 04:27 UTC](https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387/3 "2021-09-24T04:27:23Z")

</div>

Hi John,

Thanks for the insight. There are no curves in this feature class. I copied the geometries into QGIS and exported them from there and they worked, so I wonder if it might be something to do with the way MapInfo exports vector data. Perhaps it’s a precision issue?

Tom

---

<div class="post-metadata">

**Author:** ![john.cannon](https://discourse.gplates.org/letter_avatar_proxy/v4/letter/j/3e96dc/32.png) [@john.cannon](https://discourse.gplates.org/u/john.cannon)\
**Post date:** [24 September 2021 04:33 UTC](https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387/4 "2021-09-24T04:33:33Z")

</div>

Hi Tom,

That’s interesting, it sounds like you could export from QGIS (presumably after importing from MapInfo) and then load into GPlates. As far as GPlates is concerned it’s definitely the geometry _type_ causing the issue. Maybe QGIS is also ignoring certain geometry types (when loading the MapInfo export).

---

<div class="post-metadata">

**Author:** ![alex.farrar](https://discourse.gplates.org/letter_avatar_proxy/v4/letter/a/f14d63/32.png) [@alex.farrar](https://discourse.gplates.org/u/alex.farrar)\
**Post date:** [27 September 2021 00:03 UTC](https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387/5 "2021-09-27T00:03:01Z")

</div>

Hi Tom and John,

I’m Tom’s colleague that was having the Mapinfo to GPlates shapefile issues. I’ve managed to resolve the issue using Mapinfo’s (now called Discover) secondary export tool called ‘ **universal translator** ’ to convert the .tab files to .shp. The primary .shp exporting function (via the Discover menu) produces a .shp format that is not readable by GPlates, though is by other GIS programmes.

Thanks for the assistance.

Alex

---

<div class="post-metadata">

**Author:** ![john.cannon](https://discourse.gplates.org/letter_avatar_proxy/v4/letter/j/3e96dc/32.png) [@john.cannon](https://discourse.gplates.org/u/john.cannon)\
**Post date:** [27 September 2021 01:04 UTC](https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387/6 "2021-09-27T01:04:04Z")

</div>

Hi Alex,

Thanks for this information. Feel free to PM me the Shapefile that _didn’t_ load into GPlates - I’d be interested to see what geometry _types_ it has.

---

<div class="post-metadata">

**Author:** ![thomas.schaap](https://discourse.gplates.org/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@thomas.schaap](https://discourse.gplates.org/u/thomas.schaap)\
**Post date:** [27 September 2021 01:18 UTC](https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387/7 "2021-09-27T01:18:30Z")

</div>

Hi John,

I opened the problematic shapefile in geopandas and the geometry is recorded in three dimensions (long lat elev), although the elevation values are all zeros. The GPlates-compatible version only consists of (long lat). Could that be the issue?

Tom

---

<div class="post-metadata">

**Author:** ![john.cannon](https://discourse.gplates.org/letter_avatar_proxy/v4/letter/j/3e96dc/32.png) [@john.cannon](https://discourse.gplates.org/u/john.cannon)\
**Post date:** [27 September 2021 02:58 UTC](https://discourse.gplates.org/t/import-shp-from-mapinfo-unsupported-geometry-type/387/8 "2021-09-27T02:58:27Z")

</div>

Hi Tom,

Actually yes, I think that’s the issue.

In GPlates we normally flatten the geometry type to 2D. For example, if it has a Z value (like height), or an M value (which is a measure such as distance to something), or both, then flattening removes it (leaving only the positional x and y). However I just looked at the GPlates source code and can see that we’ve copied a definition (for flattening) from an old version of GDAL (it was a risky thing to do). And the definition has since changed in such a way that it is likely causing this issue.

I’ll send you both a new build to test…
