Commit Graph

294 Commits

Author SHA1 Message Date
John Firebaugh
31047b6cb5 [core] Default camera position to that specified by the style 2016-11-09 17:27:35 -08:00
John Firebaugh
7ea0457e89 [core] Ensure correct GL context in Map::onLowMemory() 2016-11-09 09:57:20 -08:00
Bruno de Oliveira Abinader
e2981c890e Revert "[core] Don't use GL_LINEAR if panning w/o rotation nor pitch"
This reverts commit a70bfd8910.
2016-11-01 17:44:34 +02:00
Bruno de Oliveira Abinader
38f536049a [core] Moved util::log2 to its own header
- Added util::{MIN,MAX}_ZOOM_F to avoid consecutive conversions from
double to float
- Move util::log2 to its own header (part of mbgl/math)
2016-10-31 16:53:07 +02:00
Bruno de Oliveira Abinader
a70bfd8910 [core] Don't use GL_LINEAR if panning w/o rotation nor pitch 2016-10-31 16:53:07 +02:00
Konstantin Käfer
62b56b799a [core] change std::array<uint16_t, 2> to mbgl::Size 2016-10-27 18:30:58 -07:00
Konstantin Käfer
a4d259c33f [core] move gl::Context to Backend and refactor View 2016-10-25 13:52:36 -07:00
Konstantin Käfer
5cc390d694 [core] separate Backend from View for headless rendering 2016-10-25 13:52:36 -07:00
Mike Morris
817c26111a [core] [node] pass thread pool impl to Map constructor
Updates mbgl::Map constructor usage everywhere

Adds NodeThreadPool implementation using AsyncQueue to call
Nan::AsyncQueueWorker from main thread
2016-10-20 14:37:36 -04:00
Bruno de Oliveira Abinader
436a22efe9 [core] Skip duplicated IDs when querying point annotations 2016-10-12 18:58:22 +03:00
Bruno de Oliveira Abinader
3b8b68d028 [core] Fix Map::setLatLng behavior
We were erroneously assigning a value to optional<ScreenCoordinate>
(null island), causing it to be a valid anchor for Transform::easeTo.
2016-10-07 17:23:17 +03:00
John Firebaugh
7a3bef091e [core] Refactor Buffer 2016-10-05 10:52:19 -07:00
Konstantin Käfer
cc78b74098 [core] remove dependence on gl.h types 2016-09-29 10:17:47 -07:00
Konstantin Käfer
44c7e9d05e [core] merge gl::ObjectStore into gl::Context 2016-09-27 11:03:29 -07:00
Minh Nguyễn
0f5b194617 [core, qt] Generalized source change notification
This same notification can in the future be used for other changes to a source.
2016-09-26 15:43:01 -07:00
Minh Nguyễn
7ff036cd01 [core] Removed map attribution API
Since client code can readily access the individual sources, Map doesn’t need to expose a dedicated API for iterating over them.
2016-09-26 15:42:57 -07:00
Minh Nguyễn
f307652548 [core] Source-driven attribution
Implemented observer callbacks so the style knows when the source’s attribution changes and the map knows when the style’s attribution changes. Also implemented a getter for a tile source’s attribution.

Fixes #2723.
2016-09-26 11:37:06 -07:00
Bruno de Oliveira Abinader
ae3a02babe [core] Reuse Map::update() 2016-09-26 11:47:34 +02:00
Thiago Marcos P. Santos
486bdddb23 [core] Add interface to add sprites to the style
Unlike annotations, they will go away when we change the style.
2016-09-22 17:43:28 +03:00
Ivo van Dongen
f3b38df91d [core] add MapChangeDidFinishLoadingStyle signal (#6371) 2016-09-20 09:55:53 +02:00
John Firebaugh
41bbd4e4f7 [core] Use an actor model for tile worker concurrency 2016-09-16 12:01:06 -07:00
Bruno de Oliveira Abinader
beb67fb7b2 [core] Separate transition options accessors from class API
Now the style class transition options have its own getter/setter, which
persists for each style until a new style is set.
2016-09-13 12:38:59 +03:00
Bruno de Oliveira Abinader
0cc062a5fd [core] Check if style exists prior to accessing via Map functions 2016-09-13 12:38:59 +03:00
John Firebaugh
8e2170c885 [core] Batch source updates 2016-09-06 14:29:22 -07:00
John Firebaugh
3635b9f147 [core] Prepare style observer interfaces for source reloading
* Renamed {Source,Tile}Observer::onNeedsRepaint to onTileUpdated. Messages should be in terms of what happened to the observed object, not in terms of what the observer needs to do. This also removes a confusing overlap of virtual methods on StyleObserver.
* Added style::Observer::onUpdate(Update). This is also a violation of the above rule, but I'm hopeful that it will disappear when update batching is implemented.
2016-09-06 12:52:14 -07:00
Konstantin Käfer
4eb54270d7 [core] remove unused TimePoint during Source update 2016-09-05 19:04:34 +02:00
Konstantin Käfer
46b73b8a2c [core] Source::update => Source::{load,parse}Tiles, Source::load => Source::loadDescription 2016-09-05 19:03:27 +02:00
Thiago Marcos P. Santos
c98f4f476b [core] Emit MapChangeDidFailLoadingMap when the style cannot be loaded or parsed
Currently this signal is never emitted, which can cause the Still mode
to starve in case of an invalid style or failed request.
2016-08-24 20:02:31 +03:00
John Firebaugh
86cccc4d24 [core] Don't allow style mutations to be overwritten by revalidation
* Once we get a fresh style, stop revalidating.
* If the style is mutated, stop revalidating and preserve the existing mutations.
2016-08-23 09:55:32 -07:00
Konstantin Käfer
cb33c861b4 [core] parse more Style JSON properties
We're now parsing "name", "center", "zoom", "bearing", and "pitch" from the stylesheet.
2016-08-19 17:34:10 +02:00
Minh Nguyễn
e147887e35 [core, android, ios, macos] Replaced getPointAnnotationsInBounds() w/ queryPointAnnotations() (#5165)
queryPointAnnotations() accepts a screen rectangle instead of a geographic bounding box, so marker hit testing works at the edges of a rotated, tilted map view.

Fixes #5151.
2016-08-12 15:45:18 -07:00
Minh Nguyễn
1cf6b5de0c Merge branch 'release-ios-v3.3.0' 2016-07-19 15:22:17 -07:00
Jason Wray
09221ecf1a [core] Guard against camera's minScale being NaN
Fixes a bug where calculating the padded bounds for a single point would cause division by zero, resulting in NaN for `minScale`. This invalid `minScale` would then be used to create an invalid padded `centerPixel`.
2016-07-15 12:20:56 -04:00
Konstantin Käfer
77e7846756 [core] code style cleanups
- puts function definitions in a namespace ... {} rather than using namespace ...;
- remove trailing whitespace
- add trailing newline
- protect SQL statements from being formatted by clang-format
2016-07-01 12:38:33 +02:00
John Firebaugh
8956179ce0 [core] Merge TexturePool into ObjectStore; pool all textures (#5477) 2016-06-27 13:44:46 -07:00
John Firebaugh
699076c2fa [core] Remove TexturePool from style::UpdateParameters (#5442) 2016-06-22 12:32:06 -07:00
Konstantin Käfer
d58ed6f9f3 [core] remove TexturePool dependency from Raster constructor 2016-06-22 16:28:32 +02:00
Bruno de Oliveira Abinader
97dffeb03d [core] s/Wireframe/Overdraw/g 2016-06-20 13:24:20 +03:00
Bruno de Oliveira Abinader
df5a395708 [core] Refactor wireframe to match JS overdraw mode 2016-06-20 13:24:20 +03:00
John Firebaugh
2921127bdb [core] Avoid unnecessary work when a symbol annotation is updated
In particular, if only the geometry changes, don't cascade and recalculate the style.
2016-06-17 11:38:04 -07:00
John Firebaugh
5254127e8c [core] Runtime source API: Map methods 2016-06-16 13:27:15 -07:00
John Firebaugh
1529116ef6 [core] Introduce Map::getLayer 2016-06-13 17:22:05 -07:00
Konstantin Käfer
8a8f828e41 [core] rename onPlacementRedone -> onNeedsRepaint 2016-06-10 12:42:14 +02:00
Brad Leege
d67b88dba9 Merge branch 'release-android-v4.1.0'
# Conflicts:
#	platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/BaseMarkerViewOptions.java
#	platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java
#	platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerViewManager.java
#	platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
#	platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java
#	platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
#	platform/android/src/jni.cpp
#	src/mbgl/geometry/buffer.hpp
#	src/mbgl/geometry/glyph_atlas.cpp
#	src/mbgl/geometry/glyph_atlas.hpp
#	src/mbgl/geometry/line_atlas.cpp
#	src/mbgl/geometry/vao.cpp
#	src/mbgl/gl/gl_object_store.cpp
#	src/mbgl/gl/gl_object_store.hpp
#	src/mbgl/renderer/frame_history.cpp
#	src/mbgl/shader/shader.cpp
#	src/mbgl/sprite/sprite_atlas.cpp
#	src/mbgl/sprite/sprite_atlas.hpp
#	src/mbgl/text/glyph_pbf.hpp
2016-06-09 14:00:49 -05:00
Thiago Marcos P. Santos
b711979e32 [android] #5254 - fix ARMv5 support
Backported patches fixing ARMv5 support for issue #3985.
2016-06-06 23:31:51 +03:00
Thiago Marcos P. Santos
313d9ce09c [core] log2 polyfill for ARMv5
ARMv5 doesn't have a FPU and apparently the soft code for log2()
is wrong and giving weird results. log() works, so we use a log()
based log2() implementation for ARMv5.
2016-06-06 22:19:25 +03:00
Konstantin Käfer
c3cbe67c01 [core] code style and remove unused code 2016-06-06 17:55:01 +02:00
Bruno de Oliveira Abinader
650b988874 [core] Perform GL object store cleanup on low memory 2016-06-03 11:03:16 +03:00
John Firebaugh
e802aedb8c [core, node, android] Remove used "base" parameter from setStyleJSON 2016-06-02 16:33:56 -07:00
John Firebaugh
c902f9098b [core] Rationalize naming for style-related code 2016-06-02 14:51:39 -07:00