/** * Parse building model from multipolygon. * * @param pRelation * @param pers * @return */ public static BuildingModel parseBuildingMultiPolygon(Relation pRelation, Perspective pers) { if (!pRelation.isMultipolygon()) { throw new IllegalArgumentException("for multipolygon relations!"); } BuildingModel bm = new BuildingModel(); List<BuildingPart> bps = new ArrayList<BuildingPart>(); bm.setParts(bps); List<BuildingPart> bp = parseBuildingMultiPolygonPart(pRelation, pers); if (bp != null) { bps.addAll(bp); } return bm; }
Relation r = (Relation) primitive; if (r.isMultipolygon()) { List<BuildingPart> bp = parseBuildingMultiPolygonPart((Relation) primitive, pers); if (bp != null) { bps.addAll(bp);