本文整理汇总了C++中TDomain::subRange方法的典型用法代码示例。如果您正苦于以下问题:C++ TDomain::subRange方法的具体用法?C++ TDomain::subRange怎么用?C++ TDomain::subRange使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TDomain
的用法示例。
在下文中一共展示了TDomain::subRange方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: testEmptyDomain
bool testEmptyDomain()
{
typedef SpaceND<3> TSpace;
typedef TSpace::Point TPoint;
typedef HyperRectDomain<TSpace> TDomain;
unsigned int nb = 0;
unsigned int nbok = 0;
trace.beginBlock( "Test empty domain." );
const TDomain nonempty_domain( TPoint::diagonal(0), TPoint::diagonal(0) );
++nb; nbok += nonempty_domain.isEmpty() ? 0 : 1;
trace.info() << "(" << nbok << "/" << nb << ") Creating non-empty domain & checking isEmpty." << std::endl;
const TDomain default_domain;
++nb; nbok += default_domain.isEmpty() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Creating default empty domain & checking isEmpty." << std::endl;
const TDomain domain( TPoint::diagonal(1), TPoint::diagonal(0) );
++nb; nbok += domain.isEmpty() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Creating default custom domain & checking isEmpty." << std::endl;
++nb; nbok += domain.size() == 0 ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Empty domain has size = " << domain.size() << std::endl;
++nb; nbok += domain.begin() == domain.end() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that begin() == end()" << std::endl;
++nb; nbok += domain.rbegin() == domain.rend() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that rbegin() == rend()" << std::endl;
TDomain::ConstSubRange range = domain.subRange( 0, 1, 2, domain.lowerBound() );
++nb; nbok += range.begin() == range.end() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that begin() == end() for sub-range {0,1,2}" << std::endl;
++nb; nbok += range.rbegin() == range.rend() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that rbegin() == rend() for sub-range {0,1,2}" << std::endl;
range = domain.subRange( 2, 1, 0, domain.lowerBound() );
++nb; nbok += range.begin() == range.end() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that begin() == end() for sub-range {2,1,0}" << std::endl;
++nb; nbok += range.rbegin() == range.rend() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that rbegin() == rend() for sub-range {2,1,0}" << std::endl;
range = domain.subRange( 0, 2, domain.lowerBound() );
++nb; nbok += range.begin() == range.end() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that begin() == end() for sub-range {0,2}" << std::endl;
++nb; nbok += range.rbegin() == range.rend() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that rbegin() == rend() for sub-range {0,2}" << std::endl;
range = domain.subRange( 2, 0, domain.lowerBound() );
++nb; nbok += range.begin() == range.end() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that begin() == end() for sub-range {2,0}" << std::endl;
++nb; nbok += range.rbegin() == range.rend() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that rbegin() == rend() for sub-range {2,0}" << std::endl;
range = domain.subRange( 1, domain.lowerBound() );
++nb; nbok += range.begin() == range.end() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that begin() == end() for sub-range {1}" << std::endl;
++nb; nbok += range.rbegin() == range.rend() ? 1 : 0;
trace.info() << "(" << nbok << "/" << nb << ") Checking that rbegin() == rend() for sub-rang {1}" << std::endl;
trace.endBlock();
return nb == nbok;
}