本文整理汇总了C++中Vec::Reverse方法的典型用法代码示例。如果您正苦于以下问题:C++ Vec::Reverse方法的具体用法?C++ Vec::Reverse怎么用?C++ Vec::Reverse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Vec
的用法示例。
在下文中一共展示了Vec::Reverse方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: assert
Vec<SelectionOnPage> *SelectionOnPage::FromRectangle(DisplayModel *dm, RectI rect)
{
Vec<SelectionOnPage> *sel = new Vec<SelectionOnPage>();
for (int pageNo = dm->PageCount(); pageNo >= 1; --pageNo) {
PageInfo *pageInfo = dm->GetPageInfo(pageNo);
assert(!pageInfo || 0.0 == pageInfo->visibleRatio || pageInfo->shown);
if (!pageInfo || !pageInfo->shown)
continue;
RectI intersect = rect.Intersect(pageInfo->pageOnScreen);
if (intersect.IsEmpty())
continue;
/* selection intersects with a page <pageNo> on the screen */
RectD isectD = dm->CvtFromScreen(intersect, pageNo);
sel->Append(SelectionOnPage(pageNo, &isectD));
}
sel->Reverse();
if (sel->Count() == 0) {
delete sel;
return NULL;
}
return sel;
}
示例2:
Vec<SelectionOnPage>* SelectionOnPage::FromTextSelect(TextSel* textSel) {
Vec<SelectionOnPage>* sel = new Vec<SelectionOnPage>(textSel->len);
for (int i = textSel->len - 1; i >= 0; i--) {
RectD rect = textSel->rects[i].Convert<double>();
sel->Append(SelectionOnPage(textSel->pages[i], &rect));
}
sel->Reverse();
if (sel->size() == 0) {
delete sel;
return nullptr;
}
return sel;
}
示例3: GetElements
PageElement *DjVuEngineImpl::GetElementAtPos(int pageNo, PointD pt)
{
Vec<PageElement *> *els = GetElements(pageNo);
if (!els)
return NULL;
// elements are extracted bottom-to-top but are accessed
// in top-to-bottom order, so reverse the list first
els->Reverse();
PageElement *el = NULL;
for (size_t i = 0; i < els->Count() && !el; i++)
if (els->At(i)->GetRect().Contains(pt))
el = els->At(i);
if (el)
els->Remove(el);
DeleteVecMembers(*els);
delete els;
return el;
}