[gdal-dev] [python-ogr] GetNumPoints from geometry

Frank Broniewski brfr at metrico.lu
Wed Feb 9 10:36:51 EST 2011


Yes, thank you. GetPointCount() works. Another thing I noticed:

point = geometry.GetPoint(point_index)

point is of type tuple(x, y, z), not as one would guess an OGRPoint() 
geometry. At least for me this was unexpected. And the python GetPoint 
method does not take a OGRPoint geometry, like it is mentioned here [1]

Frank


[1] 
http://www.gdal.org/ogr/classOGRLineString.html#ab63760022e49a795477f2fd31da059f

Am 09.02.2011 15:44, schrieb Ari Jolma:
> On 02/09/2011 04:19 PM, Frank Broniewski wrote:
>> Hi,
>>
>> just a quick question: isn't GetNumPoints implemented on a geometry in
>> ogr python?
>
> There are OGR_G_GetPointCount in ogr_api.h and GetPointCount method in
> the Geometry class in Swig bindings.
>
> Hm. It seems that NumPoints is the name of the method in the OGC simple
> features standard (it is defined for LineStrings).
>
> Ari
>
>> Neither GetNumPoints() nor getNumPoints() (small g) work.
>> The passed in geometry is a geometry object from a
>>
>> geometry = feature.GetGeometryRef()
>>
>> call and the geometry is of type 'LINESTRING' taken from
>>
>> geometry.GetGeometryName() ...
>>
>>
>> code:
>> def line_nodes(geometry):
>> nodes = list()
>>
>> for point_index in xrange(geometry.GetNumPoints()):
>> ogr_point = ogr.OGRPoint()
>> point = geometry.GetPoint(point_index, ogr_point)
>> dimenion = point.GetCoordinateDimension()
>> if dimension == 3:
>> list.append(point_index, point.GetX(), point.GetY(), point.GetZ())
>> else:
>> list.append(point_index, point.GetX(), point.GetY())
>>
>> return nodes
>>
>>
>> raises an AttributeError
>> ...
>> for point_index in xrange(geometry.getNumPoints()):
>> File "C:\Python26\lib\site-packages\osgeo\ogr.py", line 2672, in <lambda>
>> __getattr__ = lambda self, name: _swig_getattr(self, Geometry, name)
>> File "C:\Python26\lib\site-packages\osgeo\ogr.py", line 34, in
>> _swig_getattr
>> raise AttributeError,name
>> AttributeError: GetNumPoints
>>
>>
>> Many thanks
>>
>> Frank
>>
>
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev
>


-- 
Frank BRONIEWSKI

METRICO s.à r.l.
géomètres
technologies d'information géographique
rue des Romains 36
L-5433 NIEDERDONVEN

tél.: +352 26 74 94 - 28
fax.: +352 26 74 94 99
http://www.metrico.lu


More information about the gdal-dev mailing list