osgEarth 2.1.1
|
00001 /* -*-c++-*- */ 00002 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph 00003 * Copyright 2008-2010 Pelican Mapping 00004 * http://osgearth.org 00005 * 00006 * osgEarth is free software; you can redistribute it and/or modify 00007 * it under the terms of the GNU Lesser General Public License as published by 00008 * the Free Software Foundation; either version 2 of the License, or 00009 * (at your option) any later version. 00010 * 00011 * This program is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 * GNU Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public License 00017 * along with this program. If not, see <http://www.gnu.org/licenses/> 00018 */ 00019 #ifndef OSGEARTHSYMBOLOGY_POINT_SYMBOL_H 00020 #define OSGEARTHSYMBOLOGY_POINT_SYMBOL_H 1 00021 00022 #include <osgEarthSymbology/Common> 00023 #include <osgEarthSymbology/Symbol> 00024 00025 namespace osgEarth { namespace Symbology 00026 { 00030 class OSGEARTHSYMBOLOGY_EXPORT PointSymbol : public Symbol 00031 { 00032 public: 00033 PointSymbol( const Config& conf =Config() ); 00034 00036 optional<Fill>& fill() { return _fill; } 00037 const optional<Fill>& fill() const { return _fill; } 00038 00040 optional<float>& size() { return _size; } 00041 const optional<float>& size() const { return _size; } 00042 00043 public: 00044 virtual Config getConfig() const; 00045 virtual void mergeConfig( const Config& conf ); 00046 00047 protected: 00048 optional<Fill> _fill; 00049 optional<float> _size; 00050 }; 00051 00052 } } // namespace osgEarth::Symbology 00053 00054 #endif // OSGEARTHSYMBOLOGY_POINT_SYMBOL_H