📄 listing6.cpp
字号:
/* Copyright (C) Dan Higgins, 2001.
* All rights reserved worldwide.
*
* This software is provided "as is" without express or implied
* warranties. You may freely copy and compile this source into
* applications you distribute provided that the copyright text
* below is included in the resulting source code, for example:
* "Portions Copyright (C) Dan Higgins, 2001"
*/
// Excerpt from FastStorage's ResetPathfinder method:
// (Note: 1. theBox is a 2D integer rectangle that represents
// the bounds of what we searched LAST path with this pathfinder.
// In a sense, what is DIRTY. 2. theBoxes' Left is the lowest X
// and Top returns is the lowest Y coordinate. 3. theBoxes' Right
// is the highest X and Bottom is the highest Y.)
// Get the X offset where we will begin to memset from.
theXOffset = ((theBox.GetLeft() * mMaxX)+ theBox.GetTop());
// Get the amount we will need to clear.
theAmountToClear = (((theBox.GetRight() * mMaxX) +
theBox.GetBottom()) - theXOffset);
// memset NODE array using the Xoffset and AmountToClear
::memset(this->mNodes + theXOffset, NULL,
theAmountToClear * sizeof(AStarNode*));
// Reset the flags array using the same dirty rectangle
::memset(this->mFlags + theXOffset, kClear,
theAmountToClear * sizeof(AStarNodeStatusFlags));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -