Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

To find all the nearby locations(latitude and longitude values) within a radius for a provided location(a single latitude and longitude)

RkR_F5
Level 2
Level 2

Hi Team,

 

Got a requirement where, we have a path /etc/storelocator in aem. Under this path, we have several child nodes and each node contains 2 properties latitude and longitude. Please see the scrrenshot below:

RkR_F5_0-1620369226387.png

Now, we need to find all those nodes which are nearby to a location within a provided radius.

 

For example, let say radius = 10 km and location is {45.4286698 , -122.5752410}. we need to find all the nearby locations and its corresponding nodes under /etc/storelocator nodes.

 

Any input is highly appreciable.

 

Thanks!

 

@Arun_Patidar 

@kautuk_sahni 

1 Accepted Solution
Arun_Patidar
Correct answer by
Community Advisor
Community Advisor

Hi,

The approximate conversions are:

  • Latitude: 1 deg = 110.574 km
  • Longitude: 1 deg = 111.320*cos(latitude) km

You can use this logic to scan nodes and filter out neraby nodes.

View solution in original post

3 Replies
asutosh_jena
Community Advisor
Community Advisor

Hi @RkR_F5 

 

Hi

Please go through the below article:

http://theoryapp.com/store-locator-using-java/


The basic idea is as below:

  • Design a Store class, and load all data into an ArrayList of Stores.
  • Ask the user for an address, and find its geographical location.
  • Scan through the ArrayList of all stores to find the closest one.

Please note this will use the google geo API.

 

Thanks!

KiranVedantam1992
Community Advisor
Community Advisor

Hi @RkR_F5 ],

 

You can find the distance between 2 points by writing code in JS. Please find a related URL here.

 

Hope this helps.

 

Thanks,

Kiran Vedantam

Arun_Patidar
Correct answer by
Community Advisor
Community Advisor

Hi,

The approximate conversions are:

  • Latitude: 1 deg = 110.574 km
  • Longitude: 1 deg = 111.320*cos(latitude) km

You can use this logic to scan nodes and filter out neraby nodes.

View solution in original post