Ejemplo n.º 1
0
<?php

/**
 * Created by JetBrains PhpStorm.
 * User: meelis
 * Date: 7/24/13
 * Time: 10:44 AM
 * To change this template use File | Settings | File Templates.
 */
use Bmsite\Maps\ResourceLoader;
use Bmsite\Maps\Tools\Console\Helper\ResourceHelper;
require_once dirname(__DIR__) . '/vendor/autoload.php';
$appRoot = dirname(__DIR__);
$loader = new ResourceLoader();
$serverZonesFile = $loader->getFilePath('server.json');
$worldZonesFile = $loader->getFilePath('world.json');
$labelsFile = $loader->getFilePath('labels.json');
$resources = new ResourceHelper();
$resources->set('app.path', $appRoot);
$resources->set('server.json.file', $serverZonesFile);
$resources->set('world.json.file', $worldZonesFile);
$resources->set('labels.json.file', $labelsFile);
$helperSet = new \Symfony\Component\Console\Helper\HelperSet();
$helperSet->set($resources);
$helperSet->set(new \Bmsite\Maps\Tools\Console\Helper\TranslateHelper());
// TODO: region force from json file
$helperSet->set(new \Bmsite\Maps\Tools\Console\Helper\RegionsHelper());
$cli = new \Symfony\Component\Console\Application('Bmsite Ryzom Maps', '0.1');
$cli->setCatchExceptions(true);
$cli->setHelperSet($helperSet);
$cli->addCommands(array(new \Bmsite\Maps\Tools\Console\Command\BuildJsonFiles()));
Ejemplo n.º 2
0
<?php

/**
 * Created by JetBrains PhpStorm.
 * User: meelis
 * Date: 7/24/13
 * Time: 10:44 AM
 * To change this template use File | Settings | File Templates.
 */
use Bmsite\Maps\ResourceLoader;
use Bmsite\Maps\Tools\Console\Helper\ResourceHelper;
require_once dirname(__DIR__) . '/vendor/autoload.php';
$appRoot = dirname(__DIR__);
$config = (include $appRoot . '/resources/map-config.php');
$loader = new ResourceLoader();
$serverZonesFile = $loader->getFilePath('server.json');
$worldZonesFile = $loader->getFilePath('world.json');
$labelsFile = $loader->getFilePath('labels.json');
//$db = new SQLite3(__DIR__ . '/../app/maptiles.sqlite3');
//if (!$db->querySingle('SELECT 1 FROM sqlite_master WHERE type = "table" and name = "map"')) {
//    $sql = file_get_contents(__DIR__ . '/../app/maptiles-schema.sql');
//    if (!$db->exec($sql)) {
//        $err = $db->lastErrorMsg();
//        throw new \RuntimeException("Failed to create maptiles.sqlite3 database ({$err})");
//    }
//}
//$tilestorage = new \Bmsite\Maps\TileStorage($db);
$tilestorage = new \Bmsite\Maps\Tiles\FileTileStorage($appRoot . '/tiles');
$resources = new ResourceHelper();
$resources->set('app.path', $appRoot);
$resources->set('map-config', $config);
Ejemplo n.º 3
0
<?php

use Bmsite\Maps\MapProjection;
use Bmsite\Maps\ResourceLoader;
use Bmsite\Maps\StaticMap;
require_once __DIR__ . '/../vendor/autoload.php';
$tiledir = '/srv/websites/maps/htdocs/webroot/api/tiles';
$params = array('maptype' => 'atys', 'size' => '512x300', 'maxzoom' => 10, 'markers' => array('icon:lm_marker|color:0xff5050|label:Glue|8749.71,-3163.33', 'icon:lm_marker|color:0xff5050|label:Zun|8812.64,-3243.71', 'icon:lm_marker|color:0xff5050|label:Koorin|8732.69,-3387.78', 'icon:lm_marker|color:0xff5050|label:Splinter|8909.87,-3028.54', 'icon:lm_marker|color:0xff5050|label:Oath|8991.02,-3053.90'));
$loader = new ResourceLoader();
$proj = new MapProjection();
$proj->setServerZones($loader->loadJson('server.json'));
$proj->setWorldZones($loader->loadJson('world.json'));
$map = new StaticMap($tiledir, $proj);
$map->configure($params);
$etag = $map->etag();
echo "etag:[{$etag}]\n";
$img = $map->render();
file_put_contents(__DIR__ . '/../static-map-result.png', $img);
$size = strlen($img);
echo "size:[{$size}]\n";