Let me start by explaining what I am trying to do. I have about 5 lakh data points and I need to generate a heat-map out of it. I am using http://www.patrick-wied.at/static/heatmapjs/ library for this. This library works fine for limited data points. I could render 1 lakh points in 7 secs.
Rendering these many points on map is NOT possible and is also useless in this case. Each data point provided to the heat-map has 'count' property associated with it which is the frequency of that point. I want to make use of this 'count' property and reduce the number of points I am plotting.
For this I need to group (cluster) those points based on the proximity, so that they are converted into say 1000 points with the respective frequencies associated with each point.
Does ArcGIS provide any service (REST/SOAP which could be invoked from server say Java code and not client) for this?
This is one part. Next, once I do this and generate a heat-map out of it I need to do following. Every time I zoom in/out or rather change the extent of the map I want to know of all the data points I have, how many belong to current extent and if count is less than threshold (say 1000) I will be hiding the heat-map layer and plotting actual points. This way I will be plotting actual points only if they are less than threshold else I will be showing heat-map.
So, is there any ArcGIS service (REST/SOAP which could be invoked from server say Java code and not client) that will take input as geometries (all the data points) and the region ( say any polygon geometry) and tell me how many of those points belong to the input region.