本文整理汇总了C++中ArgParse::argFloat方法的典型用法代码示例。如果您正苦于以下问题:C++ ArgParse::argFloat方法的具体用法?C++ ArgParse::argFloat怎么用?C++ ArgParse::argFloat使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ArgParse
的用法示例。
在下文中一共展示了ArgParse::argFloat方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main( int argc, const char** argv )
{
ArgParse ap;
RtFilterFunc filterfunc;
float bake;
ap.usageHeader( ArgParse::apstring( "Usage: " ) + argv[ 0 ] + " [options] infile outfile" );
ap.argFlag( "help", "\aPrint this help and exit", &g_help );
ap.alias( "help" , "h" );
ap.argFlag( "version", "\aPrint version information and exit", &g_version );
ap.argInt( "verbose", "=integer\aSet log output level\n"
"\a0 = errors\n"
"\a1 = warnings (default)\n"
"\a2 = information\n"
"\a3 = debug", &g_cl_verbose );
ap.alias( "verbose" , "v" );
ap.argString( "compression", "=string\a[none|lzw|packbits|deflate] (default: %default)", &g_compress );
ap.argFlag( "envcube", " px nx py ny pz nz\aproduce a cubeface environment map from 6 images.", &g_envcube );
ap.argFlag( "envlatl", "\aproduce a latlong environment map from an image file.", &g_envlatl );
ap.argFlag( "shadow", "\aproduce a shadow map from a z file.", &g_shadow );
ap.argString( "swrap", "=string\as wrap [black|periodic|clamp] (default: %default)", &g_swrap );
ap.argString( "smode", "=string\a(equivalent to swrap for BMRT compatibility)", &g_swrap );
ap.argString( "twrap", "=string\at wrap [black|periodic|clamp] (default: %default)", &g_twrap );
ap.argString( "tmode", "=string\a(equivalent to twrap for BMRT compatibility)", &g_swrap );
ap.argString( "wrap", "=string\awrap s&t [black|periodic|clamp]", &g_wrap );
ap.argString( "mode", "=string\as (equivalent to wrap for BMRT compatibility)", &g_wrap );
ap.argString( "filter", "=string\a[box|bessel|catmull-rom|disk|gaussian|sinc|triangle|mitchell] (default: %default)", &g_filter );
ap.argFloat( "fov(envcube)", "=float\a[>=0.0f] (default: %default)", &g_fov );
ap.argFloat( "swidth", "=float\as width [>0.0f] (default: %default)", &g_swidth );
ap.alias( "swidth", "sfilterwidth" );
ap.argFloat( "twidth", "=float\at width [>0.0f] (default: %default)", &g_twidth );
ap.alias( "twidth", "tfilterwidth" );
ap.argFloat( "width", "=float\awidth [>0.0f] set both swidth and twidth (default: %default)", &g_width );
ap.alias( "width", "filterwidth" );
ap.argFloat( "quality", "=float\a[>=1.0f && <= 100.0f] (default: %default)", &g_quality );
ap.argFloat( "bake", "=float\a[>=2.0f && <= 2048.0f] (default: %default)", &g_bake );
ap.argString( "resize", "=string\a[up|down|round|up-|down-|round-] (default: %default)\n\aNot used, for BMRT compatibility only!", &g_resize );
if ( argc > 1 && !ap.parse( argc - 1, argv + 1 ) )
{
Aqsis::log() << ap.errmsg() << std::endl << ap.usagemsg();
exit( 1 );
}
if ( g_version )
{
version( std::cout );
exit( 0 );
}
if ( g_help || ap.leftovers().size() <= 1 )
{
std::cout << ap.usagemsg();
exit( 0 );
}
if ( g_envcube && g_shadow )
{
std::cout << "Specify only one of envcube or shadow" << std::endl;
exit( 1 );
}
/* find the pixel's filter function */
filterfunc = RiBoxFilter;
if ( g_filter == "box" )
filterfunc = RiBoxFilter;
else if ( g_filter == "mitchell" )
filterfunc = RiMitchellFilter;
else if ( g_filter == "sinc" )
filterfunc = RiSincFilter;
else if ( g_filter == "catmull-rom" )
filterfunc = RiCatmullRomFilter;
else if ( g_filter == "disk" )
filterfunc = RiDiskFilter;
else if ( g_filter == "bessel" )
filterfunc = RiBesselFilter;
else if ( g_filter == "triangle" )
filterfunc = RiTriangleFilter;
else if ( g_filter == "gaussian" )
filterfunc = RiGaussianFilter;
/* protect the s,t width */
if ( g_swidth < 1.0 )
{
Aqsis::log() << "g_swidth is smaller than 1.0." << " 1.0 will be used instead." << std::endl;
g_swidth = 1.0;
}
if ( g_twidth < 1.0 )
{
Aqsis::log() << "g_twidth is smaller than 1.0." << " 1.0 will be used instead." << std::endl;
g_twidth = 1.0;
}
/* protect the s,t wrap mode */
if ( !( ( g_swrap == "black" ) || ( g_swrap == "periodic" ) || ( g_swrap == "clamp" ) ) )
{
//.........这里部分代码省略.........