本文整理汇总了C++中ProfileOptions::getConfig方法的典型用法代码示例。如果您正苦于以下问题:C++ ProfileOptions::getConfig方法的具体用法?C++ ProfileOptions::getConfig怎么用?C++ ProfileOptions::getConfig使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ProfileOptions
的用法示例。
在下文中一共展示了ProfileOptions::getConfig方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GeoExtent
Profile::Profile(const SpatialReference* srs,
double xmin, double ymin, double xmax, double ymax,
double geo_xmin, double geo_ymin, double geo_xmax, double geo_ymax,
unsigned int numTilesWideAtLod0,
unsigned int numTilesHighAtLod0 ) :
osg::Referenced( true )
{
_extent = GeoExtent( srs, xmin, ymin, xmax, ymax );
_numTilesWideAtLod0 = numTilesWideAtLod0 != 0? numTilesWideAtLod0 : srs->isGeographic()? 2 : 1;
_numTilesHighAtLod0 = numTilesHighAtLod0 != 0? numTilesHighAtLod0 : 1;
_latlong_extent = GeoExtent(
srs->getGeographicSRS(),
geo_xmin, geo_ymin, geo_xmax, geo_ymax );
//if ( !_vsrs.valid() )
// _vsrs = Registry::instance()->getDefaultVSRS();
// make a profile sig (sans srs) and an srs sig for quick comparisons.
ProfileOptions temp = toProfileOptions();
_fullSignature = Stringify() << std::hex << hashString( temp.getConfig().toJSON() );
temp.vsrsString() = "";
_horizSignature = Stringify() << std::hex << hashString( temp.getConfig().toJSON() );
}
示例2: args
/**
* Command-line tool that copies the contents of one TileSource
* to another. All arguments are Config name/value pairs, so you need
* to look in the header file for each driver's Options structure for
* options :)
*
* Example: copy a GDAL file to an MBTiles repo:
*
* osgearth_conv
* --in driver gdal
* --in url world.tif
* --out driver mbtiles
* --out filename world.db
*
* The "in" properties come from the GDALOptions getConfig method. The
* "out" properties come from the MBTilesOptions getConfig method.
*
* Other arguments:
*
* --elevation : convert as elevation data (instead of image data)
* --profile [profile] : reproject to the target profile, e.g. "wgs84"
* --min-level [int] : min level of detail to copy
* --max-level [int] : max level of detail to copy
* --threads [n] : threads to use (may crash. Careful.)
*
* --extents [minLat] [minLong] [maxLat] [maxLong] : Lat/Long extends to copy (*)
*
* Of course, the output driver must support writing (by implementing
* the ReadWriteTileSource interface).
*/
int
main(int argc, char** argv)
{
osg::ArgumentParser args(&argc,argv);
if ( argc == 1 )
return usage(argv);
typedef std::map<std::string,std::string> KeyValue;
std::string key, value;
// collect input configuration:
Config inConf;
while( args.read("--in", key, value) )
inConf.set(key, value);
TileSourceOptions inOptions(inConf);
osg::ref_ptr<TileSource> input = TileSourceFactory::create(inOptions);
if ( !input.valid() )
{
OE_WARN << LC << "Failed to open input" << std::endl;
return -1;
}
TileSource::Status inputStatus = input->open();
if ( inputStatus.isError() )
{
OE_WARN << LC << "Error initializing input" << std::endl;
return -1;
}
// collect output configuration:
Config outConf;
while( args.read("--out", key, value) )
outConf.set(key, value);
// heightfields?
bool heightFields = args.read("--heightfield") || args.read("--hf") || args.read("--elevation");
if ( heightFields )
OE_INFO << LC << "Converting heightfield tiles" << std::endl;
else
OE_INFO << LC << "Converting image tiles" << std::endl;
// are we changing profiles?
osg::ref_ptr<const Profile> outputProfile = input->getProfile();
std::string profileString;
bool isSameProfile = true;
if ( args.read("--profile", profileString) )
{
outputProfile = Profile::create(profileString);
if ( !outputProfile.valid() || !outputProfile->isOK() )
{
OE_WARN << LC << "Output profile is not recognized" << std::endl;
return -1;
}
isSameProfile = outputProfile->isHorizEquivalentTo(input->getProfile());
}
// set the output profile.
ProfileOptions profileOptions = outputProfile->toProfileOptions();
outConf.add("profile", profileOptions.getConfig());
// open the output tile source:
TileSourceOptions outOptions(outConf);
osg::ref_ptr<TileSource> output = TileSourceFactory::create(outOptions);
if ( !output.valid() )
{
OE_WARN << LC << "Failed to open output" << std::endl;
return -1;
//.........这里部分代码省略.........