00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef OST_GFX_TRACE_RENDER_OPTIONS_HH
00024 #define OST_GFX_TRACE_RENDER_OPTIONS_HH
00025
00026 #include <boost/shared_ptr.hpp>
00027
00028 #include <ost/gfx/module_config.hh>
00029
00030 #include "render_options.hh"
00031
00032 namespace ost { namespace gfx {
00033
00034 class DLLEXPORT_OST_GFX TraceRenderOptions: public RenderOptions {
00035 public:
00036 TraceRenderOptions();
00037
00038
00039 virtual RenderMode::Type GetRenderMode();
00040 virtual bool CanApplyRenderOptions(RenderOptionsPtr render_options);
00041 virtual void ApplyRenderOptions(RenderOptionsPtr render_options);
00042
00043
00044 void SetArcDetail(uint arc_detail);
00045 uint GetArcDetail() const;
00046 void SetNormalSmoothFactor(float smooth_factor);
00047 float GetNormalSmoothFactor() const;
00048 void SetTubeRadius(float tube_radius);
00049 float GetTubeRadius() const;
00050 float GetMaxRad() const;
00051
00052 private:
00053 uint spline_detail_;
00054 uint poly_mode_;
00055 uint arc_detail_;
00056 float smooth_factor_;
00057 float tube_radius_;
00058 };
00059
00060 typedef boost::shared_ptr<TraceRenderOptions> TraceRenderOptionsPtr;
00061
00062 }}
00063
00064 #endif