private void calculateExtremPoints() {
        ModelProxy tmp;
        String[] lowest = new String[]{"bottom", "left", "far"};
        String[] highest = new String[]{"top", "right", "near"};

        for (Map.Entry i : models.entrySet()) {
            tmp = (ModelProxy) i.getValue();

            for (String k : highest) {
                if (tmp.getExtremPoint(k) > extremPoints.get(k)) {
                    extremPoints.put(k, tmp.getExtremPoint(k));
                }
            }

            for (String k : lowest) {
                if (tmp.getExtremPoint(k) < extremPoints.get(k)) {
                    extremPoints.put(k, tmp.getExtremPoint(k));
                }
            }

        }
    }