public class Map {
private MapLongitude mapLongitude;
private Longitude longitude;
private MapLatitude mapLatitude;
private Latitude latitude;
private Presenter presenter;
public Map() {
this.mapLongitude = new MapLongitude();
this.longitude = new Longitude(mapLongitude);
this.mapLatitude = new MapLatitude();
this.latitude = new Latitude(mapLatitude);
this.presenter = new Presenter(mapLongitude, mapLatitude); // Presenterを初期化
}
public double getMapLongitude() {
return mapLongitude.getValue();
}
public double getLongitude() {
return longitude.getValue();
}
public void updateGPS(double lat2, double long2) {
this.longitude.updateGPS(lat2, long2);
this.latitude.updateGPS(lat2, long2);
this.presenter.updateGPS(lat2, long2);
}
public double getMapLatitude() {
return mapLatitude.getValue();
}
public double getLatitude() {
return latitude.getValue();
}
// 自動更新のON/OFFを切り替えるメソッド
public void setAutoUpdateEnabled(boolean enabled) {
presenter.setAutoUpdateEnabled(enabled);
}
// 手動更新のためのメソッド
public void manualUpdate(double lat, double lon) {
presenter.manualUpdate(lat, lon);
}
}