Map.javaと指示のみ
1 parent c228bbf commit 27f5d09cf5eae6b3c9ebf04162a8cac49f089c3e
r-nishimura authored on 9 Nov 2023
Showing 2 changed files
View
13
src/Map.java
import java.util.*;
 
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, longitude, mapLatitude, latitude);
}
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);
public void updateGPS(double lat, double lon) {
presenter.updateGPS(lat, lon);
}
public double getMapLatitude() {
return mapLatitude.getValue();
}
public double getLatitude() {
return latitude.getValue();
}
public void setAutoUpdateEnabled(boolean enabled) {
presenter.setAutoUpdateEnabled(enabled);
}
}
View
34
src/Presenter.java 0 → 100644
public class Presenter {
private MapLongitude mapLongitude;
private Longitude longitude;
private MapLatitude mapLatitude;
private Latitude latitude;
private boolean autoUpdateEnabled;
 
public Presenter(MapLongitude mapLong, Longitude longi, MapLatitude mapLat, Latitude lat) {
this.mapLongitude = mapLong;
this.longitude = longi;
this.mapLatitude = mapLat;
this.latitude = lat;
this.autoUpdateEnabled = false; // デフォルトでは自動更新はOFF
}
 
public void setAutoUpdateEnabled(boolean enabled) {
this.autoUpdateEnabled = enabled;
}
 
// GPSの位置情報を更新し、必要に応じてMapLongitudeとMapLatitudeも更新する
public void updateGPS(double lat2, double long2) {
// LongitudeとLatitudeの状態を更新
longitude.updateGPS(long2, lat2);
latitude.updateGPS(long2, lat2);
 
// autoUpdateEnabledがtrueならMapの状態も更新
if (autoUpdateEnabled) {
mapLongitude.updateGPS(long2, lat2);
mapLatitude.updateGPS(long2, lat2);
}
}
 
// 他に必要なメソッドがあればここに追加する
}