本文整理汇总了C++中Coordenada::setInterseccao方法的典型用法代码示例。如果您正苦于以下问题:C++ Coordenada::setInterseccao方法的具体用法?C++ Coordenada::setInterseccao怎么用?C++ Coordenada::setInterseccao使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Coordenada
的用法示例。
在下文中一共展示了Coordenada::setInterseccao方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
list<Coordenada*>* Clipping::getPoligonoLista(Poligono* poligono){
list<Coordenada*>* poligonoVertices = new list<Coordenada*>();
list<Coordenada*>::iterator it = poligono->getCPPCoordenadas()->begin();
poligono->getCPPCoordenadas()->push_back(poligono->getCPPCoordenadas()->front());
poligonoVertices->push_back((*it)->clone());
for (; it._M_node != poligono->getCPPCoordenadas()->end()._M_node->_M_prev; it++) {
Coordenada* currentClone = (*it)->clone();
Coordenada* next = ListUtils::getDataForwardIterator(it, 1)->clone();
Coordenada* nextClone = next->clone();
if (clippingLine(currentClone, nextClone)) {
if (!(*it)->equal(currentClone)) {
currentClone->setInterseccao(true);
poligonoVertices->push_back(currentClone);
}else
delete currentClone;
if (!next->equal(nextClone)) {
nextClone->setInterseccao(true);
poligonoVertices->push_back(nextClone);
}else
delete nextClone;
}
poligonoVertices->push_back(next);
}
poligono->getCPPCoordenadas()->pop_back();
poligonoVertices->pop_back();
return poligonoVertices;
}