本文整理汇总了C++中LIST::GetFirst方法的典型用法代码示例。如果您正苦于以下问题:C++ LIST::GetFirst方法的具体用法?C++ LIST::GetFirst怎么用?C++ LIST::GetFirst使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LIST
的用法示例。
在下文中一共展示了LIST::GetFirst方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
/*!
\brief 基本碰撞算法
\param group 参与碰撞检测的BOX组
\param fData 帧数据指针
*/
void
SimpleColl(LIST<BOX*> &group, const FRAMEDATA *fData)
{
BOX* thisBox = NULL;
BOX* otherBox = NULL;
for(LIST<BOX*>::NOTE* thisNote = group.GetFirst();
thisNote; thisNote = thisNote->GetNext())
{
SBC_ASSERT(thisNote);
SBC_ASSERT(thisNote->Get());
thisBox = thisNote->Get();
if(thisBox->IsStatic())
continue;
/*
if(thisBox->IsRemove())
continue;
*/
for(LIST<BOX*>::NOTE* otherNote = group.GetFirst();
otherNote; otherNote = otherNote->GetNext())
{
SBC_ASSERT(otherNote);
SBC_ASSERT(otherNote->Get());
otherBox = otherNote->Get();
if(thisBox == otherBox)
continue;
/*
if(otherBox->IsRemove())
continue;
*/
if(otherBox->Collision(*thisBox))
{
if(thisBox->IsPass() || !thisBox->HandleFilter(fData, otherBox))
{
continue;
}
thisBox->HandleCollision(fData, otherBox);
}
}
}
}
示例2: _FindOpenCloseBoundaryList
/*!
\brief 依据当前BOX对象组来创建一个指定轴的边界组
\param axis 当前坐标轴
\param group BOX对象组
\param boundaryList 存储边界结构的链表
*/
void _FindOpenCloseBoundaryList(AXIS axis, LIST<BOX*> &group,
LIST<OPENCLOSEBOUNDARY> &boundaryList)
{
OPENCLOSEBOUNDARY thisBoundary;
BOX* thisBox = NULL;
for(LIST<BOX*>::NOTE *thisNote = group.GetFirst();
thisNote; thisNote = thisNote->GetNext())
{
thisBoundary.pBox = thisBox = thisNote->Get();
thisBoundary.type = TYPE_OPEN;
thisBoundary.value = (axis == AXIS_X)?
(thisBox->GetAnchor().x - thisBox->GetWidth() / 2.0f):
(thisBox->GetAnchor().y - thisBox->GetHeight() / 2.0f);
boundaryList.Create(thisBoundary);
thisBoundary.type = TYPE_CLOSE;
thisBoundary.value = (axis == AXIS_X)?
(thisBox->GetAnchor().x + thisBox->GetWidth() / 2.0f):
(thisBox->GetAnchor().y + thisBox->GetHeight() / 2.0f);
boundaryList.Create(thisBoundary);
}
}
示例3: Player_GetFirst
//******************************************************************************
PLAYER* Player_GetFirst()
{
return PlayerList.GetFirst();
}