for (MapOverlap<?,?> overlap : area.getOverlaps()) {
MapElement other = overlap.getOther(area);
if (other instanceof MapArea
&& other.getTags().containsKey("building:part")) {
MapArea otherArea = (MapArea)other;
//TODO: check whether the building contains the part (instead of just touching it)
if (area.getPolygon().contains(
otherArea.getPolygon().getOuter())) {
parts.add(new BuildingPart(this, otherArea,
otherArea.getPolygon(), useBuildingColors,
drawBuildingWindows));
}
}
}