File tree Expand file tree Collapse file tree 2 files changed +21
-0
lines changed
Fitfty/Projects/Core/Sources Expand file tree Collapse file tree 2 files changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -44,6 +44,7 @@ public final class DefaultAddressRepository: AddressRepository {
4444 }
4545
4646 public func fetchAddress( longitude: Double , latitude: Double ) async throws -> Address {
47+ let ( longitude, latitude) = check ( longitude: longitude, latitude: latitude)
4748 let searchAddress = AddressConversionRequest ( x: longitude, y: latitude)
4849 let response = try await KakaoAKAPI . request (
4950 target: KakaoAKAPI . fetchAddressConversion ( parameter: try searchAddress. asDictionary ( ) ) ,
@@ -63,3 +64,14 @@ public final class DefaultAddressRepository: AddressRepository {
6364 }
6465
6566}
67+
68+ private extension DefaultAddressRepository {
69+
70+ func check( longitude: Double , latitude: Double ) -> ( longitude: Double , latitude: Double ) {
71+ if longitude <= 130 , longitude >= 127 && latitude <= 38 , latitude >= 35 {
72+ return ( longitude, latitude)
73+ } else {
74+ return ( LocationManager . Constant. defaultLongitude, LocationManager . Constant. defaultLatitude)
75+ }
76+ }
77+ }
Original file line number Diff line number Diff line change @@ -69,6 +69,7 @@ final class LocationConverter {
6969 }
7070
7171 func grid( longitude: Double , latitude: Double ) -> ( x: Int , y: Int ) {
72+ let ( longitude, latitude) = check ( longitude: longitude, latitude: latitude)
7273 var ra : Double = tan ( pi * 0.25 + latitude * degrad * 0.5 )
7374 ra = re * sf / pow( ra, sn)
7475 var theta : Double = longitude * degrad - olon
@@ -83,4 +84,12 @@ final class LocationConverter {
8384 let y : Double = ro - ra * cos( theta) + map. yCoordinate
8485 return ( Int ( x + 1.5 ) , Int ( y + 1.5 ) )
8586 }
87+
88+ private func check( longitude: Double , latitude: Double ) -> ( longitude: Double , latitude: Double ) {
89+ if longitude <= 130 , longitude >= 127 && latitude <= 38 , latitude >= 35 {
90+ return ( longitude, latitude)
91+ } else {
92+ return ( LocationManager . Constant. defaultLongitude, LocationManager . Constant. defaultLatitude)
93+ }
94+ }
8695}
You canโt perform that action at this time.
0 commit comments