@@ -30,27 +30,31 @@ getpoint(c::AbstractCurveTrait, geom, i) = getgeom(c, geom, i)
3030startpoint (c:: AbstractCurveTrait , geom) = getpoint (c, geom, 1 )
3131endpoint (c:: AbstractCurveTrait , geom) = getpoint (c, geom, length (geom))
3232
33- # # MultiLineString
34- nlinestring (p:: AbstractMultiLineStringTrait , geom) = ngeom (p, geom)
35- getlinestring (p:: AbstractMultiLineStringTrait , geom) = getgeom (p, geom)
36- getlinestring (p:: AbstractMultiLineStringTrait , geom, i) = getgeom (p, geom, i)
37- getpoint (g:: AbstractMultiLineStringTrait , geom) = (p for p in getpoint (p) for g in getlinestring (geom))
38-
3933# # Polygons
4034nring (p:: AbstractPolygonTrait , geom) = ngeom (p, geom)
4135getring (p:: AbstractPolygonTrait , geom) = getgeom (p, geom)
4236getring (p:: AbstractPolygonTrait , geom, i) = getgeom (p, geom, i)
4337getexterior (p:: AbstractPolygonTrait , geom) = getring (p, geom, 1 )
44- nhole (p:: AbstractPolygonTrait , geom) = nring (p, geom) - 1 ring
38+ nhole (p:: AbstractPolygonTrait , geom) = nring (p, geom) - 1
4539gethole (p:: AbstractPolygonTrait , geom, i) = getring (p, geom, i + 1 )
40+ npoint (p:: AbstractPolygonTrait , geom) = sum (npoint (p) for p in getring (p))
41+ getpoint (g:: AbstractPolygonTrait , geom) = (p for p in getpoint (r) for r in getring (geom))
42+
43+ # # MultiLineString
44+ nlinestring (p:: AbstractMultiLineStringTrait , geom) = ngeom (p, geom)
45+ getlinestring (p:: AbstractMultiLineStringTrait , geom) = getgeom (p, geom)
46+ getlinestring (p:: AbstractMultiLineStringTrait , geom, i) = getgeom (p, geom, i)
47+ npoint (g:: AbstractMultiLineStringTrait , geom) = sum (npoint (l) for ls in getlinestring (geom))
48+ getpoint (g:: AbstractMultiLineStringTrait , geom) = (p for p in getpoint (ls) for l in getlinestring (geom))
4649
4750# # MultiPolygon
4851npolygon (p:: AbstractMultiPolygonTrait , geom) = ngeom (p, geom)
4952getpolygon (p:: AbstractMultiPolygonTrait , geom) = getgeom (p, geom)
5053getpolygon (p:: AbstractMultiPolygonTrait , geom, i) = getgeom (p, geom, i)
54+ nring (p:: AbstractMultiPolygonTrait , geom) = sum (nring (p) for p in getpolygon (p))
5155getring (g:: AbstractMultiPolygonTrait , geom) = (r for r in getring (p) for p in getpolygon (geom))
56+ npoint (p:: AbstractMultiPolygonTrait , geom) = sum (npoint (r) for r in getring (geom))
5257getpoint (g:: AbstractMultiPolygonTrait , geom) = (p for p in getpoint (r) for r in getring (geom))
53- nring (p:: AbstractMultiPolygonTrait , geom) = sum (nring (p) for p in getpolygon (p))
5458
5559# # Surface
5660npatch (p:: AbstractPolyHedralSurfaceTrait , geom):: Integer = ngeom (p, geom)
0 commit comments