package de.ivu.elect.business.gebietsbaum.entity;

import java.util.List;

import org.primefaces.model.map.LatLng;

public abstract class AbstractGebietPolygonPoint implements GebietPolygonPointBase {

  public void setLatLng(LatLng latLng) {
    setLatitude(latLng.getLat());
    setLongitude(latLng.getLng());
  }

  public LatLng getLatLng() {
    return new LatLng(getLatitude(), getLongitude());
  }

  public static LatLng berechneMitteLatLng(List<GebietPolygonPoint> pointList) {
    double lat = 0d;
    double lng = 0d;
    for (GebietPolygonPoint polygoneDesGebiete : pointList) {
      lat += polygoneDesGebiete.getLatitude();
      lng += polygoneDesGebiete.getLongitude();
    }

    lat = lat / (pointList.size() * 1.d);
    lng = lng / (pointList.size() * 1.d);
    return new LatLng(lat, lng);
  }


}
