本文整理汇总了C++中StyleSheet::addStyle方法的典型用法代码示例。如果您正苦于以下问题:C++ StyleSheet::addStyle方法的具体用法?C++ StyleSheet::addStyle怎么用?C++ StyleSheet::addStyle使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类StyleSheet
的用法示例。
在下文中一共展示了StyleSheet::addStyle方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: buildStyleSheet
StyleSheet* buildStyleSheet( const osg::Vec4 &color, float width )
{
// Define a style for the feature data. Since we are going to render the
// vectors as lines, configure the line symbolizer:
Style style;
LineSymbol* ls = style.getOrCreateSymbol<LineSymbol>();
ls->stroke()->color() = color;
ls->stroke()->width() = width;
//AltitudeSymbol* as = style.getOrCreate<AltitudeSymbol>();
//as->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
StyleSheet* styleSheet = new StyleSheet();
styleSheet->addStyle( style );
return styleSheet;
}
示例2: arguments
/**
* This code example effectively duplicates the "boston.earth" sample,
* demonstrating how to create a 3D city model in osgEarth.
*
* Run this from the tests folder.
*/
int
main(int argc, char** argv)
{
osg::ArgumentParser arguments(&argc,argv);
// create the map.
Map* map = new Map();
// add a TMS imagery layer:
TMSOptions imagery;
imagery.url() = "http://readymap.org/readymap/tiles/1.0.0/22/";
map->addImageLayer( new ImageLayer("ReadyMap imagery", imagery) );
// create a feature source to load the building footprint shapefile.
OGRFeatureOptions feature_opt;
feature_opt.name() = "buildings";
feature_opt.url() = "../data/boston_buildings_utm19.shp";
feature_opt.buildSpatialIndex() = true;
// a style for the building data:
Style buildingStyle;
buildingStyle.setName( "default" );
ExtrusionSymbol* extrusion = buildingStyle.getOrCreate<ExtrusionSymbol>();
extrusion->heightExpression() = NumericExpression( "3.5 * max( [story_ht_], 1 )" );
extrusion->flatten() = true;
extrusion->wallStyleName() = "building-wall";
extrusion->roofStyleName() = "building-roof";
// a style for the wall textures:
Style wallStyle;
wallStyle.setName( "building-wall" );
SkinSymbol* wallSkin = wallStyle.getOrCreate<SkinSymbol>();
wallSkin->libraryName() = "us_resources";
wallSkin->addTag( "building" );
wallSkin->randomSeed() = 1;
// a style for the rooftop textures:
Style roofStyle;
roofStyle.setName( "building-roof" );
SkinSymbol* roofSkin = roofStyle.getOrCreate<SkinSymbol>();
roofSkin->libraryName() = "us_resources";
roofSkin->addTag( "rooftop" );
roofSkin->randomSeed() = 1;
roofSkin->isTiled() = true;
// assemble a stylesheet and add our styles to it:
StyleSheet* styleSheet = new StyleSheet();
styleSheet->addStyle( buildingStyle );
styleSheet->addStyle( wallStyle );
styleSheet->addStyle( roofStyle );
// load a resource library that contains the building textures.
ResourceLibrary* reslib = new ResourceLibrary( "us_resources", "../data/resources/textures_us/catalog.xml" );
styleSheet->addResourceLibrary( reslib );
// set up a paging layout for incremental loading.
FeatureDisplayLayout layout;
layout.tileSizeFactor() = 45.0;
layout.addLevel( FeatureLevel(0.0f, 20000.0f) );
// create a model layer that will render the buildings according to our style sheet.
FeatureGeomModelOptions fgm_opt;
fgm_opt.featureOptions() = feature_opt;
fgm_opt.styles() = styleSheet;
fgm_opt.layout() = layout;
map->addModelLayer( new ModelLayer( "buildings", fgm_opt ) );
// initialize a viewer:
osgViewer::Viewer viewer(arguments);
EarthManipulator* manip = new EarthManipulator();
viewer.setCameraManipulator( manip );
// make the map scene graph:
osg::Group* root = new osg::Group();
viewer.setSceneData( root );
MapNode* mapNode = new MapNode( map );
root->addChild( mapNode );
// Process cmdline args
MapNodeHelper helper;
helper.configureView( &viewer );
helper.parse(mapNode, arguments, &viewer, root, new LabelControl("City Demo"));
// zoom to a good startup position
manip->setViewpoint( Viewpoint(-71.0763, 42.34425, 0, 24.261, -21.6, 3450.0), 5.0 );
viewer.getDatabasePager()->setDoPreCompile( true );
viewer.getCamera()->addCullCallback( new AutoClipPlaneCullCallback(mapNode) );
return viewer.run();
//.........这里部分代码省略.........