Commit Graph

435 Commits

Author SHA1 Message Date
Vladimir Agafonkin
453fd4c0b0 fix layer minZoom being ignored if not less than source maxZoom
This condition led to layers with high minzoom like oneway street
arrows (z15) get parsed and placed regardless of minzoom (e.g. z11+),
wasting a lot of worker CPU time.

It became unnecessary after we added reparsing tiles when overscaling,
and even before that it should have probably been <= rather than <.
2015-10-06 14:25:00 +03:00
Leith Bade
b869771992 Correctly handle spurious wake-ups in Map::pause()
Fixes #2522
2015-10-06 14:10:32 +11:00
Konstantin Käfer
3d834b5c40 give every bucket its own set of buffers
This allows changing individual buckets without having leftover data
2015-10-02 15:05:19 +02:00
John Firebaugh
2066295e35 Install RapidJSON from mason 2015-10-01 11:40:47 -07:00
Mike Morris
b46c102eb0 mason variant@1.0 2015-09-30 15:34:40 -07:00
bsudekum
7112d43609 [node] Handle tiles which 404 better 2015-09-29 18:20:22 -07:00
Adam Hunter
fa2d7453a5 Fix up of some naming issues, etc. 2015-09-29 15:07:39 -07:00
Adam Hunter
3f9f259619 Added GL logging utility 2015-09-29 15:07:39 -07:00
John Firebaugh
af392b9434 Rewrite annotation invalidation strategy
First, move style mutation code out of StyleParser and into AnnotationManager,
coalescing it with the mutation code for shape layers.

Second, allow AnnotationManager to keep track of stale tiles entirely
internally. There's no reason to pass sets of TileIDs around.

Third, correct the logic for invalidating the shape source. Since
AnnotationManager does not track shape invalidations on a tile-by-tile basis,
don't try to invalidate the shape source tile-by-tile.

Fixes #1675
Fixes #2322
Fixes #2095
2015-09-28 14:10:23 -07:00
John Firebaugh
24a5834428 Move updateAnnotationTiles[IfNeeded] to AnnotationManager 2015-09-28 14:10:01 -07:00
John Firebaugh
0c4c7ed901 map/annotation.* ⇢ annotation/annotation_manager.* 2015-09-28 14:10:01 -07:00
John Firebaugh
588fed9a9d Move Annotation class to cpp file 2015-09-28 14:10:01 -07:00
John Firebaugh
bc9aaa5e91 Move entire loop body to helper function 2015-09-28 14:10:00 -07:00
John Firebaugh
dd0e6e0257 Inline AnnotationManager::addTileFeature 2015-09-28 14:10:00 -07:00
John Firebaugh
028abaab00 Ensure that LiveTileData can be reparsed
Annotation tiles may become partially parsed just like regular tiles,
for example if a point annotation is added to the map before the style's
sprite has been loaded. In such cases, they need to be reparsed or the
annotation will not be rendered. Previously, the code path for reparsing
would be short-circuited by a dynamic_cast<VectorTileData*> followed by
a null check. This commit removes that case and adds (back) a virtual
reparse method to the TileData interface.
2015-09-28 14:10:00 -07:00
Leith Bade
feae692dba Fix freezing on Android when rotating
Fixes #1941
2015-09-22 16:23:39 +10:00
Henry Dooley
2141d95196 [core] Annotation cleanup
Eliminate dead code and unecessary STL container usage. Refactor large
methods into smaller functional units.
2015-09-16 17:06:13 -07:00
Lucas Wojciechowski
311bf93abe Revert "[node] Enable npm to build mapbox-gl-native package from source"
This reverts commit 4e1ead344b.
2015-09-16 16:27:53 -07:00
Lucas Wojciechowski
4e1ead344b [node] Enable npm to build mapbox-gl-native package from source
- Allow node bindings to be built if git submodules cannot be checked out
 - Made geojsonvt a mason package instead of a git submodule
 - Use globally installed mason if it cannot be checked out via git submodules
2015-09-15 11:17:53 -07:00
Minh Nguyễn
60d0db0d2d Increased precision of coordinate conversion methods
Fixes #2230.
2015-09-11 11:56:25 -07:00
Ansis Brammanis
b4b56c951e increase precision for coordinate conversions
This fixes the earthquakes while panning at high zoom levels.

Cherry-picked from 9607171612c4a40e41eddaff5230ad571571a5b9 on the perspective-improved-gestures branch.
2015-09-11 11:56:25 -07:00
Justin R. Miller
0d899df9dd fixes #1675: abstract annotation tile refresh check/render; trigger post-sprite/sprite store load 2015-09-08 18:03:10 -07:00
Minh Nguyễn
0a172a21fd CameraOptions
Plumbed camera options all the way through to MGLMapView. Added a method that lets you specify a direction in addition to center point and zoom level.

Added Map::jumpTo() for parity with mapbox-gl-js. Replaced usage of Map::setLatLng() and Map::setLatLngZoom() with Map::jumpTo() or Map::easeTo() within MGLMapView. Replaced MGLMapView.pitch with MGLMapCamera for setting all supported degrees of freedom simultaneously. Simultaneously move and rotate with course.

Support customizable timing functions on iOS.

iosapp now persists an archived MGLMapCamera instead of separate viewpoint properties and also synchronizes user defaults on termination. This change implements persistence entirely in Objective-C, eliminating the use of the Objective-C++ implementation.

Fixes #1643, fixes #1834. Ref #1581.
2015-09-07 09:22:52 -07:00
Bruno de Oliveira Abinader
0ff7cf20e9 Get rid of MapData::{get,set}NeedsRepaint 2015-09-02 23:20:47 +03:00
Bruno de Oliveira Abinader
0b501e0566 Substitute nudgeTransitions with async view invalidation 2015-09-02 23:20:46 +03:00
Bruno de Oliveira Abinader
e920328223 Provide view invalidation call coalescion via uv_async_t 2015-09-02 23:20:46 +03:00
Bruno de Oliveira Abinader
227776dee0 Style no longer requires mainloop access 2015-09-02 23:18:29 +03:00
Mike Morris
45eb197bd3 remove debug logging and whitespace [skip ci] 2015-09-01 16:46:57 -04:00
John Firebaugh
55d25a80a7 In still mode, don't load resources until a render request is made 2015-08-31 18:09:11 -07:00
John Firebaugh
abc1c84fb8 Merge branch 'master' into node 2015-08-31 16:45:21 -07:00
Mike Morris
6bfda4fcef local nvm? 2015-08-28 15:49:25 -04:00
Minh Nguyễn
0e456940b9 Merge branch 'master' into perspective-without-y-flip 2015-08-25 14:13:16 -07:00
Mike Morris
4540c3c0e8 View::swap -> View::beforeRender View::afterRender
To be able to resize the framebuffer on the map thread
in HeadlessView.
2015-08-25 14:39:49 -04:00
Bruno de Oliveira Abinader
765c4695d8 Revert "only update the render order array when there are changes to tiles"
This reverts commit fd98607c5f.

Fixes #2163.
2015-08-25 11:36:10 -07:00
Ansis Brammanis
36d71c95dc move the point origin back to bottom-left 2015-08-25 11:59:02 -04:00
Ansis Brammanis
51c93867ae fix LatLng --> point for perspective views 2015-08-24 18:41:51 -04:00
Ansis Brammanis
99c5976498 port minor collision code cleanup, fix #1705
https://github.com/mapbox/mapbox-gl-js/pull/1261
2015-08-24 18:41:51 -04:00
Ansis Brammanis
14dee43a71 add map.setPitch(pitch) and map.getPitch() 2015-08-24 18:41:51 -04:00
Ansis Brammanis
9e68e49c89 fix depth clipping in perspective view
The depth range is now set slightly differently. Both ends of the range
are shifted for each layer to solve some precision issues.

Some layers draw multiple things at different depths. For example, fill
layers draw fills and antialiasing separately. To handle this case, I
added setDepthSublayer(n) which a
2015-08-24 18:41:51 -04:00
Ansis Brammanis
0d68c4fedf load correct covering tiles in perspective view
port pointCoordinate from -js to convert screen points to tile
coordinates correctly in perspective view.
2015-08-24 18:41:51 -04:00
Ansis Brammanis
bc92c2de39 fix symbol collision detection in perspective view 2015-08-24 18:41:50 -04:00
Ansis Brammanis
2535e669e2 hacks to see stuff 2015-08-24 18:41:50 -04:00
Ansis Brammanis
8d22e2bf01 port perspective projection matrix from -js 2015-08-24 18:41:50 -04:00
John Firebaugh
0451aca37e Merge branch 'v8' 2015-08-24 10:47:30 -07:00
Lucas Wojciechowski
e97662972f Support v8 sprite, glyph, and style mapbox:// urls 2015-08-21 14:39:26 -07:00
Konstantin Käfer
fd98607c5f only update the render order array when there are changes to tiles 2015-08-20 16:13:46 -04:00
Ansis Brammanis
231e83b450 reverse label priority order 2015-08-20 11:59:08 -07:00
Ansis Brammanis
60e9712916 remove text-max-size and icon-max-size
port https://github.com/mapbox/mapbox-gl-js/pull/1419
2015-08-20 11:59:08 -07:00
Bruno de Oliveira Abinader
98534631e0 Add circle render type
As specified in:
https://github.com/mapbox/mapbox-gl-style-spec/blob/v8-circle/reference/v8.json

Part of #1740.
2015-08-20 11:59:07 -07:00
Tom MacWright
d1100f34de Rename some style properties
symbol-min-distance ⇢ symbol-spacing
background-image ⇢ background-pattern
line-image ⇢ line-pattern
fill-image ⇢ fill-pattern
2015-08-20 11:58:57 -07:00