Export 0.2.1
[platform/framework/web/web-ui-fw.git] / libs / js / jquery-geo-1.0b2 / README.md
1 # jQuery Geo
2
3 After years of internal development, we are pleased to bring our JavaScript map widget and spatial analysis tools to the open-source world in the form of a jQuery plugin.
4
5 ## Getting Started
6 Using jQuery Geo requires adding one element, including one script (apart from jQuery itself) and calling one function. The following copy-and-paste snippet will help you get started.
7
8 ```html
9 <div id="map" style="height: 320px;"></div>
10 <script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
11 <script src="http://code.jquerygeo.com/jquery.geo-1.0b1.min.js"></script>
12 <script>
13   $(function() {
14     $( "#map" ).geomap( ); // you've got a map!
15   });
16 </script>
17 ```
18
19 You can also download the latest release as a [minified JavaScript file][min] or a [full, uncompressed one][max].
20
21 [min]: http://code.jquerygeo.com/jquery.geo-1.0b1.min.js
22 [max]: http://code.jquerygeo.com/jquery.geo-1.0b1.js
23
24
25 ## Documentation
26 The latest docs are hosted at: http://docs.jquerygeo.com
27
28 Release and other announcements via @jQueryGeo on Twitter: https://twitter.com/jQueryGeo
29
30 News and smaller updates via @ryanttb on Twitter: https://twitter.com/ryanttb
31
32 ## Contributing
33 In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [grunt](https://github.com/cowboy/grunt).
34
35 ## Release History
36
37 ### 1.0b2
38 * examples - drawing markers
39 * geomap - ie8 - [bug] graphics do not resize with window
40 * examples - kml points
41 * docs - geomap - default action for shift option should be dragBox in dragBox mode
42 * geomap - default action for shift option should be dragBox in dragBox mode
43 * geomap - don't empty graphics on map interaction
44 * geographics - build labels in background, replace html once
45 * geomap - [bug] sometimes interaction with other elements doesn't work right on a page with a map
46 * geographics - don't empty labels on map interaction
47
48 ### 1.0b1.1 (2012-08-24)
49 * geomap - [bug] shingled deferred services lose img elements when changing scales slowly
50 * geomap - [bug] shapes don't render on smaller windows when zoomed in
51 * geomap - [bug] changing the zoom & center options at the same time does not zoom to the correct location
52
53 ### 1.0b1 (2012-07-30)
54 * geographics - use canvas compositing for Polygons with holes
55 * geographics - [bug] on polygons with holes, stroke draws a line from exterior ring to interior one
56 * docs - geomap - trigger a shape event when a user finishes measuring
57 * geomap - trigger a shape event when a user finishes measuring
58 * geomap - [bug] elements inside the map div lose their position setting
59 * geomap - trigger bboxchange when we update the map size after the window resizes
60 * geomap - [bug] multiple map widgets share the same compiled measureLabels template names and overwrite each other
61 * examples - inset map/multiple maps example
62 * geomap - [bug] in zoom mode, dragging from bottom-right to top-left draws box but doesn't zoom
63 * geomap - [bug] any mouse down triggers refresh, even without pan
64 * cdn - fix caching
65 ** Cache-Control header max-age set to 5 years
66 ** remove Expires header
67 * geomap - upgrade to jsrender 1.0pre
68 * deploy - build releases using grunt
69 * deploy - make a package for new jQuery plugin directory
70 ** https://github.com/jquery/plugins.jquery.com/blob/master/docs/package.md
71 * deploy - lint JavaScript files
72 * docs - geomap - dragBbox mode
73 * docs - geo - polygonize function for bbox
74 * geo - polygonize function for bbox
75 * geomap - dragBbox mode
76 * docs - geomap - shift option (default, zoom, dragBbox, off)
77 * geomap - shift option (default, zoom, dragBbox, off)
78 * docs - geomap - loadstart, loadend events
79 * docs - geomap - allow append to take an array of shapes
80 * docs - geomap - allow remove to take an array of shapes
81 * docs - geomap - improve services option documentation
82 * geomap - clamp measure labels to [0, 0]
83 * geo - clamp centroid to bbox
84 * geomap - measure label for polygon should be in centroid
85 * geomap - merge interactive pan and zoom into one, faster system (pan/zoom rewrite)
86 * geomap - [bug] iOS - panning is visually jumpy but settles on the correct bbox in the end
87 * geomap - pinch-zoom doesn't follow user's fingers close enough when scaling
88 * geomap - [bug] pinch zoom on iPad 2 (iOS 5) doesn't refresh tiles when zooming out
89 * geomap - request new image in shingled service during interactive pan
90 * geomap - [bug] zoom in more than once with zoom method moves tiles to the wrong spot
91 * geomap - [bug] only services that have finished refreshing move when the user pans
92 * geomap - [bug] map panning is jumpy, appears to be related to shapes and/or drawing context
93 * geomap - [bug] pan sometimes lags on first drag
94 * geomap - tiled data-scaleOrigin should be stored as an array
95 * geomap - android - [bug] cannot always pan map after appending shapes
96 * geomap - android - browser stops pan/zoom after 7 logos on logo demo
97 * geomap - [bug] mouse wheel on bad or missing tile doesn't zoom out on first rotate
98 * geomap - increase mobile performance by 9000
99 * docs - geomap - add argument to refresh to force reload of images for dynamic data
100 * docs - geomap - allow service-level refresh
101 * docs - geomap - zoomMax option (tiled & shingled)
102 * docs - geo - include method for bbox
103 * geomap - bboxMax should reset center & pixelSize
104 * geomap - [bug] initializing center, zoom, & bbox doesn't set all properties
105 * geo - [bug] polygonize doesn't return valid polygon when using geodetic coordinates
106 * geomap - [bug] dragBbox doesn't include the bbox property in the shape
107 * geomap - dragBbox should send a Point (with bbox) for single clicks
108 * docs - geomap - dragCircle mode
109 * geo - include method for bbox
110 * geomap - dragCircle mode
111 * geomap - [regression] refresh & toggle methods no longer keep original service objects in sync
112 * geomap - [bug] when a singled image hasn't loaded after pan and you double click on empty space, the zoomed bbox seems wrong
113 * geomap - allow service-level refresh
114 * geographics - remove the blit canvas from the DOM, i.e., don't attach
115 * geomap - don't initialze service-level geographics until they're used
116 * geomap - add argument to refresh to force reload of images (in case of dynamic data)
117 * geomap - loadstart, loadend events
118 * geomap - allow append to take an array of shapes
119 * geomap - allow remove to take an array of shapes
120 * geomap - zoomMax option
121 * geomap - [bug] cannot interact with other elements on the page on iOS after panning the map (#71)
122 * geomap - iOS - [bug] after one finger is removed, stop processing as if multitouch is still on
123 * geomap - dumb high-precision mice down on tiled maps
124 ** otherwise, the high precision rounds down to zero change in zoom
125 * geomap - use linear distance for pinch zoom calculation
126 * docs - geomap - zoomMin option
127 * geomap - zoomMin option
128 * docs - geomap - use MapQuest Open by default; can't deny that it looks much nicer
129 * geomap - use MapQuest Open by default; can't deny that it looks much nicer
130 * docs - geomap - rename dragBbox to dragBox
131 * geomap - rename dragBbox to dragBox
132 * geomap - [bug] error using tiled deferred services
133
134 ### 1.0a4 (2012-02-19)
135 * geomap - [bug] changing the tilingScheme doesn't update pixelSize, maxPixelSize, center or centerMax
136 * geomap - [bug] shingled services throw exception during resize
137 * docs - geomap - axisLayout option
138 * geomap - axisLayout option
139 * docs - upgrade to jQuery Mobile rc3
140 * docs - allow page refreshing
141 * docs - geomap - more modes: measureDistance, measureArea, static
142 * docs - geomap - append label argument
143 * docs - geomap - toPixel/toMap should take all coordinate dimensions like the proj functions
144 * geomap - toPixel/toMap should take all coordinate dimensions like the proj functions
145 * geomap - move the drawing container instead of individual points during pan
146 * geomap - [bug] drawStyle resets after window resize
147 * geomap - append label argument
148 * docs - geomap - measureLabels option
149 * geomap - measureLabels option
150 * geomap - measureDistance mode
151 * geomap - measureArea mode
152 * docs - geomap - service-level shapeStyle
153 * docs - geomap - getUrl string option
154 * geomap - [bug] create doesn't clear drawing shapes
155 * docs - geomap - service-level shapes
156 * docs - geo - detect geodetic coordinates and call $.geo.proj automatically, don't require devs to set $.geo.proj to null
157 * docs - geomap - add projection section explaining how bbox & center affect map unit type
158 * docs - geomap - rename getUrl to src
159 * docs - geomap - scroll option
160 * docs - geomap - pannable option
161 * geomap - src string option
162 * examples - string service src
163 * geomap - [bug] map tracks mouse when not panning if click on other elements
164 * geomap - pannable option
165 * geomap - scroll option
166 * geomap - [bug] shapesContainer is being cleared twice during mouse wheel zoom
167 * geomap - support pinch zoom on iOS
168 * docs - geo - add recenter function for bbox
169 * geomap - static mode
170 * docs - geomap - allow Deferred or Promise as return value from src function
171 * geomap - [bug] widget factory merges first service with default sometimes causing exceptions with shingled services
172 * geomap - allow Deferred or Promise as return value from src function
173 * geomap - [bug] resize event triggered too many times during resize
174 * geomap - service-level shapes
175 * geomap - service-level find
176 * geographics - add a resize method, call from geomap.resize
177 * geo - add recenter function for bbox
178 * geomap - [bug] errors creating second un-tiled map after destroying a first on same element
179 * geomap - refresh shouldn't request new images if the map element is hidden
180 * geomap - [bug] delayed multitouch isn't nearly as smooth as true multitouch
181 * geomap - [bug] tiled pinch zoom isn't smooth
182 * geo - detect geodetic coordinates and call $.geo.proj automatically, don't require devs to set $.geo.proj to null
183 * geomap - [bug] mouse wheel doesn't work with jQuery 1.7
184 ** upgrade to latest jquery.mousewheel plugin
185 * geomap - service object visibility and opacity options should be moved to a style property
186 * geomap - use currentServices in all functions unless we actually need to update the public options services object
187 * geomap - don't change user's service objects in opacity/toggle
188 * geomap - show attr text
189 * docs - geomap - selector argument to find method
190 * geomap - selector argument to find method
191 * geomap - pan mode should use a hand cursor by default
192 * geomap - [bug] only services that have finished refreshing move when the user pans
193 ** for a4: hide unfinished services
194 * geomap - [bug] a user can mess with the center option, e.g., convert numbers to strings, and it can wreck havoc with map state
195 * geomap - [bug] zoom option doesn't return proper values for shingled services
196 * geomap - [bug] non-tiled maps can zoom out past zoom 0
197 * geomap - don't request tiles that are -y index
198 * geomap - [bug] initializing tiled map by non-geodetic bbox always causes zoom level 0
199 * docs - geomap - empty string needed for label element
200 * geomap - label divs should have class="geo-label" & style="position: absolute;"
201 * geomap - [bug] double tap to end shapes adds two points before ending the shape, in different places
202 * geomap - [bug] lifting fingers after pinch zoom in drawLineString or drawPolygon modes sometimes adds fake visual coordinate on touch point last lifted
203 * docs - upgrade to jQuery 1.7.2
204 * geomap - [bug] scroll=off doesn't zoom map but also doesn't allow document scroll
205 * geomap - [bug] changing mode does not reset measure drawing
206 * geomap - [bug] jQuery UI Widget Factory no longer passes pageX & pageY event properties during trigger when using jQuery 1.7
207 ** upgrade to Widget Factory 1.8.17
208 * examples - all demo (shingled)
209 * docs - geomap - custom modes
210 * examples - all demo (tiled)
211
212 ### 1.0a3 (2011-11-01)
213 * docs - geomap - more modes: zoom, drawPoint, drawLineString, drawPolygon
214 * geomap - [bug] tiles do not show when pixel sizes are near or lower than 1.0
215 * geo - cache bbox as geoBbox to match namespacing convention started by jQuery Mobile
216 * docs - geo - initial bbox operations: center, height/width, expandBy, scaleBy & reaspect functions
217 * docs - geo - initial geometry operations: bbox, distance, contains, centroid
218 * docs - geomap - shape event
219 * docs - geomap - refresh argument in append, remove & empty
220 * docs - geomap - document the resize method
221 * docs - launch jquerygeo.com
222 * docs - upgrade to jQuery Mobile b3
223 * docs - services - remove id property, explain the class property
224 * docs - rename getPixelSize to just pixelSize
225 * docs - services - change visible to visibility so it matches shapeStyle & CSS
226 * docs - geomap - allow child selector syntax to target service elements with toggle & opacity methods
227 * geomap - split servieTypes to different files
228 * geomap - add data-geo-service to all service container elements, set to type of service
229 * geomap - add data-geo-map to map divs initialized with geomap, remove on destroy
230 * geomap - allow child selector syntax to target service elements with toggle & opacity methods
231 * geomap - [bug] toggle does not refresh the map services being shown for the first time
232 * geomap - [bug] destroy keeps window resize handler
233 * geomap - [bug] destroy erases content originally inside map div
234 * geomap - serviceType objects' destroy method isn't being called
235 * geomap - [bug] destroyed geomaps remember appended shapes
236 * docs - geomap - zoom method
237 * geomap - zoom method
238 * geo - calculate bbox in projected coordinates
239 * docs - proj - mention that Geodetic methods can also do bbox
240 * geo - geometry - bbox function
241 * docs - geomap - destroy method
242 * geo - bbox - center function
243 * geo - bbox - height/width function
244 * geo - bbox - expandBy function
245 * geo - bbox - scaleBy function
246 * geo - bbox - reaspect function
247 * docs - geomap - drawStyle option
248 * geomap - [bug] shapeStyle not maintained after resize
249 * geomap - [bug] second drag while in inertial pan causes map to jump back
250 * geomap - drawPoint mode
251 * geomap - drawLineString mode
252 * geomap - refreshShapes should check bbox cache before drawing
253 * geomap - drawPolygon mode
254 * geomap - port zoom mode
255 * geomap - port shift-zoom mode for pan & draw modes
256 * geo - geometry - distance function
257 * examples - distance
258 * geomap - rename getPixelSize to just pixelSize
259 * geomap - [bug] zoom method doesn't work with shingled map
260 * geomap - store service state data as jQuery data on serviceContainer element
261 * geo - geometry - contains function
262 * geomap - rename service.visible to visibility having either "visible" or "hidden" values
263 * geo - geometry - centroid function
264 * geomap - make service id property optional, add HTML id to serviceContainer if present
265 * geomap - append should cache the shape's bbox (instead of the bbox function)
266 * geomap - remove should remove the shape's bbox cache
267 * geomap - empty should remove the bbox cache for all shapes
268 * geomap - make the refresh argument in append public, add one to remove & empty
269 * geomap - disable shape redraw during interactive zoom if more than 255 shapes
270 * geomap - [bug] shape bbox culling hides shapes that are partially on screen & should be drawn
271 * docs - geomap - make pixelSize a read-only option instead of a function
272 * geomap - make pixelSize a read-only option instead of a function
273 * docs - geomap - make shapeStyle an option
274 * geomap - make shapeStyle an option
275 * examples - rewrite shapeStyle example
276
277 ### 1.0a2.5 (2011-08-03)
278 * geomap - find - [bug] does not handle GeoJSON features
279 * geomap - find - allow for 0 pixel tolerance
280 * geomap - find - check for bbox on non-Point geometries before getting too specific
281 * geo - bbox - cache shape bboxes
282 * docs - do not suggest that it's ok to change the geometry now that we're caching bbox
283 * geomap - jsperf test of bbox query vs. geom query on point data
284 * geographics - [bug] 0 opacity acts as full opacity
285 * geomap - add opacity to service type objects & call from geomap's opacity method
286 * geomap - add toggle to service type objects & call from geomap's toggle method
287 * geo.proj - update bundled web mercator projection code (removed 150 lines of code)
288 * geomap - auto-handle window resize events
289 * docs/geomap - scale map according to cursor location instead of re-centering during double-click zoom
290 * geomap - iOS - [bug] second tap can be anywhere & cause a zoom
291 * geomap - shingled - [bug] map doesn't resize correctly
292 * examples - geomap drawStyle option
293
294 ### 1.0a2 (2011-06-29)
295 * geomap - Support dynamic map services
296 * geomap - [BUG] geomap causes a script error if jQuery UI is already included
297 * docs - Document shape methods
298 * geomap - [BUG] Port of soft double-click does not work
299 * geomap - [BUG] Cannot see dev-supplied inner content if not set to rel/abs position
300 * geomap - Add mobile test page
301 * geographics - Port graphic code from internal control
302 * geomap - Implement append method
303 * geographics - drawArc should use style's width and height and only take center as an argument
304 * geomap - Document and implement the public refresh method
305 * geomap - Implement shapeStyle method
306 * geographics - Draw points as rounded rectangles via width, height & borderRadius properties on shapeStyle, drop oval functionality
307 * geomap - Remove the pixels property from position events and add the type property to make the event argument a true GeoJSON Point
308 * proj - support up to four dimentional array to convert MultiPolygon coordinates in one shot
309 * proj - add functions to convert individual positions that developers can re-implement for their own projection
310 * geomap - implement remove method
311 * geomap - implement find method
312 * geomap - [bug] toPixel should round pixel values
313 * geomap - [bug] GeometryCollection shapes do not draw with their parent shape's style
314 * geomap - implement empty method
315
316 ### 1.0a1 (2011-05-09)
317 * docs - Document a new interface to our internal map control
318 * geomap - Port interactive map widget base to jQuery UI widget factory
319 * geomap - Support tiled map services
320
321 ## License
322 Copyright (c) 2012 Applied Geographics, Inc.
323 Project lead by Ryan Westphal
324 Licensed under the MIT, GPL licenses.