Merge pull request #951 from mapbox/mbgl-render
Update static image rendering executable
This commit is contained in:
10
Makefile
10
Makefile
@@ -184,6 +184,16 @@ android-deploy: $(ANDROID_ABIS)
|
||||
cd android/java/MapboxGLAndroidSDK && chmod ugo+x deploy.sh && ./deploy.sh
|
||||
|
||||
|
||||
##### Render builds ############################################################
|
||||
|
||||
.PRECIOUS: Makefile/render
|
||||
Makefile/render: bin/render.gyp config/$(HOST).gypi
|
||||
deps/run_gyp bin/render.gyp $(CONFIG_$(HOST)) $(LIBS_$(HOST)) --generator-output=./build/$(HOST) -f make
|
||||
|
||||
render: Makefile/render
|
||||
$(MAKE) -C build/$(HOST) BUILDTYPE=$(BUILDTYPE) mbgl-render
|
||||
|
||||
|
||||
##### Maintenace operations ####################################################
|
||||
|
||||
.PHONY: clear_xcode_cache
|
||||
|
||||
@@ -3,10 +3,6 @@
|
||||
#include <mbgl/util/std.hpp>
|
||||
#include <mbgl/util/io.hpp>
|
||||
|
||||
#include <rapidjson/document.h>
|
||||
#include <rapidjson/writer.h>
|
||||
#include <rapidjson/stringbuffer.h>
|
||||
|
||||
#include <mbgl/platform/default/headless_view.hpp>
|
||||
#include <mbgl/platform/default/headless_display.hpp>
|
||||
#include <mbgl/storage/default_file_source.hpp>
|
||||
@@ -32,8 +28,8 @@ int main(int argc, char *argv[]) {
|
||||
double zoom = 0;
|
||||
double bearing = 0;
|
||||
|
||||
int width = 256;
|
||||
int height = 256;
|
||||
int width = 512;
|
||||
int height = 512;
|
||||
double pixelRatio = 1.0;
|
||||
std::string output = "out.png";
|
||||
std::string cache_file = "cache.sqlite";
|
||||
@@ -100,16 +96,14 @@ int main(int argc, char *argv[]) {
|
||||
|
||||
view.resize(width, height, pixelRatio);
|
||||
map.resize(width, height, pixelRatio);
|
||||
map.setLatLonZoom(LatLng(lat, lon), zoom);
|
||||
map.setLatLngZoom({ lat, lon }, zoom);
|
||||
map.setBearing(bearing);
|
||||
|
||||
std::unique_ptr<uint32_t[]> pixels;
|
||||
|
||||
// Run the loop. It will terminate when we don't have any further listeners.
|
||||
map.run();
|
||||
|
||||
// Get the data from the GPU.
|
||||
pixels = view.readPixels();
|
||||
auto pixels = view.readPixels();
|
||||
|
||||
const unsigned int w = width * pixelRatio;
|
||||
const unsigned int h = height * pixelRatio;
|
||||
|
||||
@@ -37,6 +37,11 @@ class GlyphAtlas;
|
||||
class SpriteAtlas;
|
||||
class LineAtlas;
|
||||
|
||||
struct exception : std::runtime_error {
|
||||
inline exception(const char *msg) : std::runtime_error(msg) {
|
||||
}
|
||||
};
|
||||
|
||||
class Map : private util::noncopyable {
|
||||
public:
|
||||
explicit Map(View&, FileSource&);
|
||||
|
||||
@@ -241,6 +241,10 @@ void Map::run() {
|
||||
checkForPause();
|
||||
}
|
||||
|
||||
if (mode == Mode::Static && !style && styleURL.empty()) {
|
||||
throw exception("Style is not set");
|
||||
}
|
||||
|
||||
view.activate();
|
||||
|
||||
workers = util::make_unique<uv::worker>(**loop, 4, "Tile Worker");
|
||||
|
||||
Reference in New Issue
Block a user