本文整理汇总了C++中pointVec_t::insert方法的典型用法代码示例。如果您正苦于以下问题:C++ pointVec_t::insert方法的具体用法?C++ pointVec_t::insert怎么用?C++ pointVec_t::insert使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pointVec_t
的用法示例。
在下文中一共展示了pointVec_t::insert方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: divide_and_conquer
void divide_and_conquer(const pointVec_t &P, pointVec_t &H,
point_t p1, point_t p2, bool buffered) {
assert(P.size() >= 2);
pointVec_t P_reduced;
pointVec_t H1, H2;
point_t p_far;
if(buffered) {
p_far = divide<SplitByCP_buf>(P, P_reduced, p1, p2);
} else {
p_far = divide<SplitByCP>(P, P_reduced, p1, p2);
}
if (P_reduced.size()<2) {
H.push_back(p1);
#if USECONCVEC
appendVector(P_reduced, H);
#else // insert into STD::VECTOR
H.insert(H.end(), P_reduced.begin(), P_reduced.end());
#endif
}
else {
divide_and_conquer(P_reduced, H1, p1, p_far, buffered);
divide_and_conquer(P_reduced, H2, p_far, p2, buffered);
#if USECONCVEC
appendVector(H1, H);
appendVector(H2, H);
#else // insert into STD::VECTOR
H.insert(H.end(), H1.begin(), H1.end());
H.insert(H.end(), H2.begin(), H2.end());
#endif
}
}
示例2: quickhull
void quickhull(const pointVec_t &points, pointVec_t &hull) {
if (points.size() < 2) {
hull.insert(hull.end(), points.begin(), points.end());
return;
}
point_t p_maxx = extremum<FindXExtremum::maxX>(points);
point_t p_minx = extremum<FindXExtremum::minX>(points);
pointVec_t H;
divide_and_conquer(points, hull, p_maxx, p_minx);
divide_and_conquer(points, H, p_minx, p_maxx);
hull.insert(hull.end(), H.begin(), H.end());
}
示例3: appendVector
void appendVector(mutex_t& insertMutex, const point_t* src, size_t srcSize,
pointVec_t& dest) {
mutex_t::scoped_lock lock(insertMutex);
dest.insert(dest.end(), src, src + srcSize);
}