本文整理汇总了C++中IntervalObject::end方法的典型用法代码示例。如果您正苦于以下问题:C++ IntervalObject::end方法的具体用法?C++ IntervalObject::end怎么用?C++ IntervalObject::end使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IntervalObject
的用法示例。
在下文中一共展示了IntervalObject::end方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: split
void split(const IntervalObject & v, IntervalObject& center, IntervalObject & diameter) {
if((v.dimension()!=center.dimension()) && (v.dimension()!=diameter.dimension()))
throw std::range_error("Unequal dimensions in function chomp::vectalg::split");
typename IntervalObject::const_iterator b = v.begin(), e=v.end();
typename IntervalObject::iterator c = center.begin(), d=diameter.begin();
while(b!=e) {
b->split(*c, *d);
b++; c++; d++;
}
}
示例2: intersectionIsEmpty
bool intersectionIsEmpty(const IntervalObject & v, const IntervalObject &w){
typename IntervalObject::const_iterator iv = v.begin(), iw = w.begin(), endv = v.end();
while(iv != endv){
if((iv->leftBound() > iw->rightBound()) || (iw->leftBound() > iv->rightBound()))
return true;
++iv; ++iw;
}
return false;
}
示例3: rightObject
void rightObject(const IntervalObject &v, ResultType& result)
{
typename ResultType::iterator i = result.begin();
typename IntervalObject::const_iterator b = v.begin(), e=v.end();
while(b!=e)
{
*i = b->rightBound();
++i;
++b;
}
}
示例4: containsZero
bool containsZero(const IntervalObject& v)
{
typename IntervalObject::const_iterator b = v.begin(), e=v.end();
while(b!=e)
{
if(!(isSingular(*b)))
return false;
++b;
}
return true;
}
示例5: result
typename IntervalObject::ScalarType size(const IntervalObject& v)
{
typedef typename IntervalObject::ScalarType ScalarType;
ScalarType result(0.);
typename IntervalObject::const_iterator b=v.begin(), e=v.end();
while(b!=e)
{
result = chomp::max(result,diam(*b));
++b;
}
return ScalarType(result.rightBound());
}
示例6: leftObject
void leftObject(const IntervalObject &v, ResultType& result)
{
typename ResultType::iterator i = result.begin();
typename IntervalObject::const_iterator b = v.begin(), e=v.end();
while(b!=e)
{
*i = b->leftBound();
++i;
++b;
}
// std::transform(v.begin(), v.end(), result.begin(), leftBound<ScalarType> );
}
示例7: subsetInterior
bool subsetInterior(const IntervalObject& v1, const IntervalObject& v2)
{
if(v1.dimension()!=v2.dimension())
throw std::range_error("Unequal dimensions in function capd::vectalg::subsetInterior");
typename IntervalObject::const_iterator b = v1.begin(), e=v1.end(), i=v2.begin();
while(b!=e)
{
if(!(b->subsetInterior(*i))) return false;
++b;
++i;
}
return true;
}
示例8: mid
void mid(const IntervalObject& v, ResultType& result)
{
if(v.dimension()!=result.dimension())
throw std::range_error("Unequal dimensions in function capd::vectalg::mid");
typename ResultType::iterator i = result.begin();
typename IntervalObject::const_iterator b = v.begin(), e=v.end();
while(b!=e)
{
*i = mid(*b);
++i;
++b;
}
}
示例9: diameter
void diameter(const IntervalObject &v, ResultContainer &result)
{
if(v.dimension()!=result.dimension())
throw std::range_error("Unequal dimensions in function capd::vectalg::diameter");
typename ResultContainer::iterator i = result.begin();
typename IntervalObject::const_iterator b = v.begin(), e=v.end();
while(b!=e)
{
*i = diam(*b);
++i;
++b;
}
}
示例10: midObject
ResultType midObject(const IntervalObject &v)
{
ResultType result(v.dimension());
typedef typename ResultType::ScalarType ScalarType;
typename ResultType::iterator i = result.begin();
typename IntervalObject::const_iterator b = v.begin(), e=v.end();
while(b!=e)
{
*i = (b->leftBound()+b->rightBound())/ScalarType(2.0);
++i;
++b;
}
return result;
}
示例11: mid
void mid(const IntervalObject &v, IntervalObject &result)
{
if(v.dimension()!=result.dimension())
throw std::range_error("Unequal dimensions in function chomp::vectalg::mid");
typedef typename IntervalObject::ScalarType ScalarType;
typename IntervalObject::iterator i = result.begin();
typename IntervalObject::const_iterator b = v.begin(), e=v.end();
while(b!=e)
{
*i = b->mid();
++i;
++b;
}
}
示例12: diameter
void diameter(const IntervalObject &v, ResultContainer &result)
{
if(v.dimension()!=result.dimension())
throw std::range_error("Unequal dimensions in function chomp::vectalg::diameter");
typedef typename IntervalObject::ScalarType ScalarType;
typename ResultContainer::iterator i = result.begin();
typename IntervalObject::const_iterator b = v.begin(), e=v.end();
while(b!=e)
{
*i = (ScalarType(b->rightBound()) - ScalarType(b->leftBound())).rightBound();
++i;
++b;
}
}
示例13: intersection
bool intersection(const IntervalObject &v1, const IntervalObject &v2, IntervalObject &result)
{
if(v1.dimension()!=v2.dimension())
throw std::range_error("Unequal dimensions in function chomp::vectalg::intersection");
if(v1.dimension()!=result.dimension())
throw std::range_error("Unequal dimensions in function chomp::vectalg::intersection");
typename IntervalObject::const_iterator b1 = v1.begin(), b2=v2.begin();
typename IntervalObject::iterator b = result.begin(), e=result.end();
while(b!=e)
{
if( !intersection(*b1,*b2,*b))
return false;
++b;
++b1;
++b2;
}
return true;
}