์, ๊ทธ๊ฑด ์๋ง๋ ์ฉ์ ๋๋ฏธ์ ์ถ๊ฐ๋ ์๋ ์๊ฒ ๋ค์. ์ ๋ ๊ทธ ์ ์ ์ผ๋์ ๋๊ฒ ์ต๋๋ค.
@angus @merefield ๋๊ป ๊ธฐ๋ฅ ์์ฒญ์ ๋จ๊ฒจ๋ ๋ ๊น์?
ํ์ ์์น ๊ฒ์์ ์๊ตญ(UK)์ผ๋ก๋ง ์ ํํ ์ ์์ผ๋ฉด ์ ๋ง ์ ์ฉํ ๊ฒ ๊ฐ์ต๋๋ค.
์๋ฅผ ๋ค์ด:
ํด๋น ๊ฒฐ๊ณผ ์ค ์๊ตญ์ ์๋ ํญ๋ชฉ์ ํ๋๋ ์์ต๋๋ค.
GBR(์๊ตญ) ๊ฒฐ๊ณผ๋ง ๊ฐ์ ํ ์ ์๊ฑฐ๋(๋๋ ๊ด๋ฆฌ์ ์ค์ ์ ํตํด ํน์ ๊ตญ๊ฐ ์ฝ๋๋ฅผ ์ง์ ํ ์ ์๋ค๋ฉด) ์ฌ์ฉ์๊ฐ ์ค์ ๋ก ์ฐพ๋ ๊ฒฐ๊ณผ๋ฅผ ์ฆ์ ์ ์ํ ์ ์์ด ๋งค์ฐ ์ข์ ๊ฒ์ ๋๋ค:
๋ค๋ฅธ ์ฌ์ดํธ์์๋ ESRI ์ง์ค์์น๋ฅผ ์ฌ์ฉํ๋๋ฐ, ์ ๊ฒ์์ GBR๋ก ์ ํํ๊ณ ๋ฏธ๋ฆฌ ์ ์๋ ์๊ตญ ๋ฐ์ด๋ฉ ๋ฐ์ค(bounding box)๋ก ์ ํํ๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
// Search button
var searchControl = L.esri.Geocoding.geosearch({
useMapBounds: false,
searchBounds: L.latLngBounds(SW, NE),
providers: [L.esri.Geocoding.arcgisOnlineProvider({
countries: ['GBR'],
// https://developers.arcgis.com/rest/geocode/api-reference/geocoding-category-filtering.htm#ESRI_SECTION1_502B3FE2028145D7B189C25B1A00E17B
//categories: ['Address', 'Postal', 'Coordinate System'],
categories: ['District', 'City', 'Postal', 'Coordinate System'],
maxResults: 10
})],
placeholder: 'Town, Postcode, Co-ordinates...',
position: 'topright'
}).addTo(map);
์ด๋ฐ ๋ฐฉ์์ด ๊ฐ๋ฅํ ๊น์?
@angus ์ฃผ์ ๋ชฉ๋ก์ ์์น๋ฅผ ํ์ํ ์ ์๋ ์ต์ ์ด ์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค. ๊ทธ๋ฐ ์ต์ ์ ๋ชป ๋ดค๋๋ฐ, ์ ๊ฐ ๋์น ๊ฑฐ๋ผ๋ฉด ์๋ ค์ฃผ์ธ์! ๊ฐ์ฌํฉ๋๋ค
์ ๋ ์ด ์นดํ ๊ณ ๋ฆฌ์์ ํ ํฝ ๋ชฉ๋ก์ ์์น ์ฃผ์ ์ํ ์์ด์ฝ ํ์ฑํ ์ค์ ์ด ์ด๋ค ์ญํ ์ ํ๋์ง ๊ถ๊ธํ์ต๋๋ค. ์ค์ ์ ์๋ฏธ๋ฅผ ์ ํํ ํ์ ํ์ง ๋ชปํ๊ณ , ์ ์ฉํ์ ๋ ์ด๋ค ๋ณํ๊ฐ ์๋์ง ๋ณด์ด์ง๋ ์์์ต๋๋ค.
๋ฐฉ๊ธ ํฌ๋ผ์์ ํ ์ฌ์ฉ์๊ฐ ์์ ์ ์์น๋ฅผ ์ค์ ํ ์ ์๋ค๊ณ ๋งํ์ด์.
ํด์ธ ์์น ์ ์์ ๋ณด์์ง๋ง, ์์น๋ฅผ ์ ๋ ฅํ๋ ๋์ค์ ํน์ ์ง์ ์ ๋๋ฌํ๋ฉด ๋ชจ๋ ์ ์์ด ์ฌ๋ผ์ก๋ค๊ณ ํด์.
์ ๋ ํด๋น ์ฌ์ฉ์๋ฅผ ์ํด ์์น๋ฅผ ์ค์ ํด ์ฃผ์๋๋ฐ, ์๋ฌด ๋ฌธ์ ์์ด ์ ๋๋๋ผ๊ณ ์. ๊ทธ๋์ API๊ฐ ์ ์๊ฒ๋ ์๋ํ๋๋ฐ ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ๋ ์ ์๋ํ์ง ์๋์ง ๊ถ๊ธํด์ก์ด์.
ํน์ ์ด๋ฐ ๋ฌธ์ ๋ฅผ ๊ฒช์ด ๋ณธ ๋ถ์ด ๊ณ์ ๊ฐ์?
๋ค, ์ ํฌ๋ ์ ํํ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ ์์ต๋๋ค. ์ด ๋ฌธ์ ๋ ์ฐ๋ฆฌ ํฌ๋ผ์ ์ต๊ทผ ์ค๋ ๋์์ ๋ ผ์๋์์ต๋๋ค.
ํ์ง๋ง ์ ํํ ์์ธ์ ์์ง ํ์
ํ์ง ๋ชปํ์ต๋๋ค ![]()
ํฅ๋ฏธ๋กญ๋ค์, ๋ค, ๋ฐ๋ก ์ ์ฌ์ฉ์๋ถ๋ค์ด ๊ฒช๊ณ ์๋ ๋ฌธ์ ์ ์ ํํ ์ผ์นํฉ๋๋ค.
ํด๋น ๋ฌธ์ ์ ๋ํด ์ธ์งํ๊ณ ์์ผ๋ฉฐ, ์ด ํ๋ฌ๊ทธ์ธ์์๋ ํญ์ ์ค๋ฅ๊ฐ ๋ฐ์ํด ์์ต๋๋ค. ์ฌ์ฉ์๊ฐ ๊ธฐ๋ณธ ์ค์ ๋ ๋ฌด๋ฃ ์ง์ค(Geo) ์ ๊ณต์์ ๋ ์ดํธ ๋ฆฌ๋ฐ(rate limit)์ ๊ฑธ๋ ธ์ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค. ์์ํ ์ ์๋ฏ์ด ์ด ๋ฌด๋ฃ ์ ๊ณต์์ ํ๋๋ ๋งค์ฐ ์ ํ์ ์ ๋๋ค. ์ด ๋ฌธ์ ๋ ์ฌ์ฉ์์๊ฒ ๋ฌด์์์ ์ด๊ณ , ๊ฒ๋ณด๊ธฐ์ ์๋ฌด๋ฐ ์ด์ ์์ด, ๊ทธ๋ฆฌ๊ณ ํนํ ์ค๋ช ์ด ๋ถ๊ฐ๋ฅํ ์์ ์ ๋ฐ์ํ ์ ์์ต๋๋ค. ๋ถํํ๋, ์ค๋ฅ๊ฐ ๋ฐ์ํ์ ๋ ์ด๋ฅผ ํ์ํ ์ก์ ํธ๋ค๋ฌ๊ฐ ์๋ ๊ฒ์ด ๋ฌธ์ ์ ํต์ฌ์ด๋ฉฐ, ์ด ๋ถ๋ถ์ ์๋ง๋ ์ฒ์๋ถํฐ ์ ๋๋ก ๋์ํ์ง ์์์ ๊ฒ์ ๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ ์ฝ์์์ ์ค๋ฅ๊ฐ ํ์๋๊ณ ์๋์?
์ผ์์ ์ธ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ช ์๊ฐ ๋์ ๊ธฐ๋ค๋ฆฐ ํ ๋ค์ ์๋ํ๋ ๊ฒ์ ๋๋ค. ๋ ์ดํธ ๋ฆฌ๋ฐ์ ๊ฑธ๋ฆฌ์ง ์์ผ๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํ์ง ์๊ณ ์ ์์ ์ผ๋ก ์๋ํ ์ ์์ต๋๋ค.
ํ์ฌ ๋๊ท๋ชจ ํด๋ผ์ด์ธํธ ์์ ๋ง๊ฐ ๊ธฐํ์ด ์์ด ๋น์ฅ ์ฒ๋ฆฌํ๊ธฐ ์ด๋ ต์ง๋ง, ์ดํ ์ด ๋ฌธ์ ๋ฅผ ์ดํด๋ณด๊ณ ๋๋ฝ๋ ํธ๋ค๋ฌ๋ฅผ ์ถ๊ฐํ ๊ฒ์ ๋๋ค. ํด๋น ํธ๋ค๋ฌ๊ฐ ์ถ๊ฐ๋๋ฉด ์ ๊ฐ ๊ทผ๋ณธ ์์ธ์ ๋ํด ์๋ชป ์ถ์ธกํ๊ณ ์์ ๊ฒฝ์ฐ์๋ ๋ ๋์ ์ ๋ณด๋ฅผ ์ป์ ์ ์์ ๊ฒ์ ๋๋ค.
์ฝ์์๋ ์ค๋ฅ๊ฐ ์์ด์ ![]()
'covenโ์ ์
๋ ฅํ๋ฉด ๊ฒฐ๊ณผ๊ฐ ๋์ค๋๋ฐ, ๋ ๋ถ์ฌ์ 'coventrโ๋ก ๋ง๋ค๋ฉด ๊ฒฐ๊ณผ๊ฐ ์๊ณ , ๋์ Y๋ฅผ ๋ถ์ฌ 'coventryโ๋ก ๋ง๋ค๋ฉด ๋ค์ ๊ฒฐ๊ณผ๊ฐ ๋์ค๋ ๊ฒ ์ ๋ง ๊ธฐ๋งํ๋ค์ ![]()
์ด๊ฒ์ Locations์ ๋ฒ๊ทธ๋ผ๊ณ ์๊ฐํ์ง ์์ต๋๋ค.
https://www.openstreetmap.org/์์ ์ง์ ๊ฒ์ํด๋ ๋ง์ฐฌ๊ฐ์ง๋ก ๋์์ด ๋์ง ์๋ ๋ฐฉ์์ผ๋ก ๋์ํ๋์?
๊ทธ ์ฌ์ดํธ์์๋ ๊ฒ์ ์ ์์ด ์ ํ ์ ๋์์? ![]()
์ญ๋์ ์ด์ง๋ ์์์, ๋งค๋ฒ ์ํฐ๋ฅผ ๋๋ฌ์ผ ํ๋๊น์. ํ์ง๋ง ๊ฒ์ ๊ฒฐ๊ณผ๋ ํฐ ํํธ๊ฐ ๋ฉ๋๋ค.
์ฌ๋ฌ๋ถ ์๋ ํ์ธ์. ํ์ฌ ์์น ํ๋ฌ๊ทธ์ธ๊ณผ ์ด๋ฒคํธ ํ๋ฌ๊ทธ์ธ์ ํจ๊ป ์ฌ์ฉํ์ฌ ์ง๋์ ์ด๋ฒคํธ๋ฅผ ํ์ํ๊ณ ์์ต๋๋ค.
๋ํ Fairphone Angels Program์ด๋ผ๋ ํ๋ก๊ทธ๋จ๋ ์ด์ํ๊ณ ์์ต๋๋ค. ์ด ํ๋ก๊ทธ๋จ์ ์ง์ญ ๋ด ๋ค๋ฅธ Fairphone ์ฌ์ฉ์์๊ฒ ๋์์ ์ค ์ ์๋๋ก ๊ทธ๋ฃน์ด ์๋ฐ์ ์ผ๋ก ์ฐธ์ฌํ๋ ์ปค๋ฎค๋ํฐ ์ง์ ํ๋ก๊ทธ๋จ์ ๋๋ค. ํ์ฌ Github Pages๋ฅผ ํตํด ์ปค์คํ ์ง๋๋ฅผ ๊ตฌ์ถํ๊ณ ์์ง๋ง, ๊ธฐ์กด Discourse ๊ทธ๋ฃน์ ์ง๋ ์์ ํ์ํ ์ ์๋ค๋ฉด ํจ์ฌ ํธ๋ฆฌํ ๊ฒ์ ๋๋ค.
์ฌ๊ธฐ์ ๋ช ๊ฐ์ง ๊ฒ์๊ธ์ ์ฝ๋ค๊ฐ ์ฌ์ฉ์ ์ง๋(user map)๋ฅผ ๋ง๋ค ์ ์๋ค๋ ์ฌ์ค์ ์๊ฒ ๋์์ต๋๋ค(์ด์ ์๋ ์ด๋ฐ ๊ธฐ๋ฅ์ด ์๋ค๋ ๊ฒ์ ๋ชฐ๋์ต๋๋ค). ์ ์๊ฐ์๋ ๊ทธ๋ฃน ์ง๋(group map) ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋๋ฉด ์ข์ ๊ฒ ๊ฐ์ต๋๋ค. ์ฌ๋ฌ๋ถ์ ์๊ฒฌ์ ์ด๋ ์ ๊ฐ์?
๊ฐ์ฌํฉ๋๋ค, Stefan
์๋ ํ์ธ์! ์ ๋ง ๋ฉ์ง ํ๋ฌ๊ทธ์ธ์ ๋๋ค. ์ด ํ๋ฌ๊ทธ์ธ๋ฟ ์๋๋ผ ๋ค๋ฅธ ์์ ๋ค๋ ํ๋ฅญํ์ จ๋ค์!
ํ๋์ ์ง๋ฌธ์ด์ ๊ธฐ๋ฅ ์์ฒญ์ ๋๋ค: ํ๋์ ์ฃผ์ ์ ์์น๋ฅผ ๋ ๊ฐ ์ด์ ์ถ๊ฐํ ์ ์๊ฑฐ๋, ๊ฐ๋ฅํด์ง ์์ ์ธ๊ฐ์? ์ค์ ํญ๋ชฉ์ด๋ ํฌ๋ผ์์ ๊ด๋ จ ํํธ๋ฅผ ์ฐพ์ง ๋ชปํ์ต๋๋ค. ์๋๋ฉด ์ฃผ์ ๋ต๊ธ์ ํตํด (๋ ๋ฒ์งธ ๋ฐ ๊ทธ ์ดํ์) ์์น๋ฅผ ์ถ๊ฐํ ์ ์๊ฒ ๋ ๊น์?
ํ ํฝ๋น ์์น๋ ํ๋๋ง ๊ฐ๋ฅํฉ๋๋ค. ๊ฒ์๊ธ ๋จ์์ ์์น๋ ์ง์ํ์ง ์์ต๋๋ค.
์ด๊ฒ์ ์ฃ์ง ์ผ์ด์ค(๊ฒฝ๊ณ ์ฌ๋ก)๋ผ๊ณ ์๊ฐ๋๋์? ์ฌ์ฉ ๋น๋๊ฐ ๊ตฌํ์ ํ์ํ ๋ ธ๋ ฅ ์์ค์ ์ ๋นํํ์ง ๋ชปํ ๊ฒ์ผ๋ก ๋ณด์ด๋ฏ๋ก, ๊ตฌํ๋ ๊ฐ๋ฅ์ฑ์ ๋ฎ๋ค๊ณ ์๊ฐํฉ๋๋ค.
์ฌ์ฉ ์ฌ๋ก๋ฅผ ์กฐ๊ธ ๋ ์์ธํ ์ค๋ช ํด ์ฃผ์ค ์ ์๋์? ํ ํฝ๋น ์์น๊ฐ ํ๋ ์ด์ ํ์ํ ์ด์ ๋ ๋ฌด์์ธ๊ฐ์?
ํ ์นดํ ๊ณ ๋ฆฌ ๋ด์์ ์ฌ๋ฌ ํ ํฝ์ ์์น๋ฅผ ์ง์ ํ๋ฉด, ์นดํ ๊ณ ๋ฆฌ ์ง๋์์ ํด๋น ์์น๋ค์ด ํจ๊ป ํ์๋๋ค๋ ๊ฒ์ ์๊ณ ๊ณ์ จ๋์? ๊ตฌ์กฐ๋ฅผ ์กฐ์ ํ์ฌ ์ด ๊ธฐ๋ฅ์ ํ์ฉํ ์ ์์๊น์?
@forgenst ๋, ์๋ ํ์ธ์. ํ ํฝ์ ์์ฑํ๋ ค๋ ์นดํ ๊ณ ๋ฆฌ ์ค์ ์์ ์์น(locations)๋ฅผ ํ์ฑํํด์ผ ํ ๊ฐ๋ฅ์ฑ์ด ํฝ๋๋ค. ์คํฌ๋ฆฐ์ท์ ๋ฐ๋ฅด๋ฉด โ๋ถ๋ฅ๋์ง ์์(Uncategorized)โ ์นดํ ๊ณ ๋ฆฌ์ ๋๋ค.
๋ก๋ฒํธ, ์๋ ํ์ธ์. ์ ํฌ ์ฌ์ฉ ์ฌ๋ก๋ ๋งค์ฐ ๊ตฌ์ฒด์ ์ ๋๋ค. ์ ํฌ๋ ํต์๋น์ค ํ์ฌ๋ก์ ๋งค์ผ ์ ๋ ํ๋ฃจ ์ผ์ง๋ฅผ ์์ฑํ๋๋ฐ, ๊ทธ๋ ์ ์ ๊ธฐ์ฐจ ์ถฉ์ /์ฃผ์ฐจ ์์น๋ฅผ ํฌํจํ์ฌ ๋ค์ ๋ ์ด์ ์์ ๋ฐฐ์ฐจ ๋ด๋น์๊ฐ ์ฐธ๊ณ ํ ์ ์๋๋ก ํ๊ณ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐจ๋์ด ํ ๋ ์ด์์ด๋ฏ๋ก, ์ง์ค์ฝ๋ฉ๋ ์์น์ ์ง๋์ ์์น๋ฅผ ํ๋์ ์ฃผ์ ์์ ํจ๊ป ๋ณผ ์ ์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค.
๋ค๋ง, ์ด๊ฑธ ๊ธฐ๋ฅ ์์ฒญ์ผ๋ก๊น์ง ๋ง๋ค ํ์๋ ์์ต๋๋ค. ์์น๋ฅผ ์ ๋ฌํ ๋ค๋ฅธ ๋ฐฉ๋ฒ๋ ์์ผ๋๊น์. ๋ค๋ง, ์ ํฌ ๊ด๋ฆฌ์์ ์ง์๋ค์๊ฒ๋ ์ด๋ ๊ฒ ํ๋ฉด ํจ์ฌ ํธ๋ฆฌํ ๊ฒ ๊ฐ์ต๋๋ค.
ํ๋ฌ๊ทธ์ธ ์ค์ ์ด ์๋๋ผ ๊ฐ ์นดํ ๊ณ ๋ฆฌ ์ค์ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ Discourse ์ธ์คํด์ค์ ์นดํ ๊ณ ๋ฆฌ ๊ฐ์๋ก ์ด๋ํ ํ, ์๋ฅผ ๋ค์ด '๋ถ๋ฅ๋์ง ์์โ์ ํด๋ฆญํ๊ณ ํ์ด์ง ์๋จ์ โํธ์งโ ๋ฒํผ์ ๋๋ฅด์ธ์. ์ด์ ์ด๋ฆฐ ์นดํ ๊ณ ๋ฆฌ ์ค์ ์์ โ์ค์ โ ํญ์ ์ฐพ์ ์ ์์ผ๋ฉฐ, ์ฌ๊ธฐ์๋ '์์นโ๋ผ๋ ์น์ ์ด ์์ต๋๋ค. ์ด๊ณณ์์(์์น ๊ธฐ๋ฅ์ ํ์ฑํํ๋ ค๋ ๋ชจ๋ ๋ค๋ฅธ ์นดํ ๊ณ ๋ฆฌ์์๋) ์์น๋ฅผ ํ์ฑํํด์ผ ํฉ๋๋ค.
๋ค, ์๊ฒ ์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
์ด๊ฒ์ ๋ฌด๋ฃ ์ํํธ์จ์ด๋ผ๋ ์ ์ ์์ง ๋ง์ธ์. ๊ฝค ๊น๋ค๋ก์ด ์๊ตฌ ์ฌํญ์ด์ฃ . :). ์ต์ ๋ฒ์ ์ Discourse์ ํธํ๋๋๋ก ํ๋ฌ๊ทธ์ธ์ ์ ์งํ๋ ๊ฒ๋ง์ผ๋ก๋ ๋ถ๋ด์ด ํฝ๋๋ค.
์ด๋ฌํ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ธฐ ์ํด ์๊ธ์ด ์ง์๋๋ ํ๋ก์ ํธ๋ฅผ ๊ณ ๋ คํด ๋ณผ ์ ์์ง๋ง, ๊ฝค ๋ณต์กํ ์์ ์ด ๋ ๊ฒ์ ๋๋ค.
๊ฒ์๋ฌผ ์์ค์์ ์ฌ์ฉํ ์ ์๋ ๋งํฌ์ ๋ฐฉ์์ ๋์ ํ ์๋ ์์ต๋๋ค.


