[gdal-dev] Unable to create MApInfo .tab File

Chaitanya kumar CH chaitanya.ch at gmail.com
Fri Dec 27 04:28:48 PST 2013


av,

Can you check if ogr2ogr can convert the shapefile to mapinfo?

--
Best regards,
Chaitanya Kumar CH
On Dec 26, 2013 8:14 AM, "Avenger Maslog" <amamaslog at gmail.com> wrote:

> Hi Everyone!
>
> I'm having an issue with creating MapInfo .tab files. I'm trying to
> automate the process of creating either .tab or .shp files using the same
> set of codes. It works fine when the output specified are shapefiles but
> fails with a message: "Failed writing geometry for feature id #" for each
> .tab point feature that I was trying to create.The input is dictionary
> information and the output comes out as either .shp or .tab depending on
> which one was specified. I really hope somebody could point out the reason
> why it works with shapefiles but not with tab files. Thanks in advance!
>
>         if fileType == "TAB":
>             driver = ogr.GetDriverByName('MapInfo File')
>
>         if fileType == "SHP":
>             driver = ogr.GetDriverByName('ESRI Shapefile')
>
>         featureDataSource = driver.CreateDataSource(fileName)
>
>         layerName = "FeatureList"
>         featureSpatialRef = osr.SpatialReference()
>         featureSpatialRef.ImportFromEPSG(4326)
>         featureLayer = featureDataSource.CreateLayer(layerName, srs =
> featureSpatialRef, geom_type=ogr.wkbPoint)
>
>         standardFieldsList = []
>
>         standardField = ""
>
>         for attrib in attribList:
>
>             if attrib["FLD_KEY"] == "ATTRIB_NAME":
>                 standardField = attrib["FLD_VAL"]
>
>             if attrib["FLD_KEY"] == "DATA_TYPE":
>                 standardField = standardField + "." + attrib["FLD_VAL"]
>
>             if attrib["FLD_KEY"] == "DATA_LEN":
>                 standardField = standardField + "." +
> str(attrib["FLD_VAL"])
>
>             if attrib["FLD_KEY"] == "DEF_VAL":
>                 standardFieldsList.append(standardField)
>                 standardField = ""
>
>         standardFieldsFileCreator = FileCreator()
>         standardFieldsFileCreator.createStandardFields(standardFieldsList,
> featureLayer)
>
>         featureObj = ogr.Feature(featureLayer.GetLayerDefn())
>         featurePoint = ogr.Geometry(ogr.wkbPoint)
>
>         for feature in featureList:
>             for fieldName in feature.keys():
>                 fieldValue = feature[fieldName]
>                 featureObj.SetField(str(fieldName), str(fieldValue))
>
>             coords = str(feature["COORDS"])
>             coords = coords.strip()[1:-1]
>             coords = coords.split(", ")
>
>             featurePoint.AddPoint(float(coords[0]),float(coords[1]))
>
>             featureObj.SetGeometry(featurePoint)
>
>             featureLayer.CreateFeature(featureObj)
>
>         featureDataSource.Destroy()
>
> av
>
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20131227/15b016d5/attachment.html>


More information about the gdal-dev mailing list