14 typedef KyUInt16 NavRasterNeighborType;
15 static const NavRasterNeighborType NavRasterNeighborType_CONNECT = 0;
16 static const NavRasterNeighborType NavRasterNeighborType_HOLE = 1;
17 static const NavRasterNeighborType NavRasterNeighborType_WALL = 2;
18 static const NavRasterNeighborType NavRasterNeighborType_OUTSIDE = 4;
22 static const PixelColor PixelColor_IrrelevantColor =
KyUInt32MAXVAL - 7;
25 static const NavRasterFloorIdx NavRasterFloorIdx_Invalid =
KyUInt32MAXVAL;
27 typedef KyUInt32 NavRasterCardinalDir;
28 static const NavRasterCardinalDir NavRasterCardinalDir_EAST =
CardinalDir_EAST ;
30 static const NavRasterCardinalDir NavRasterCardinalDir_WEST =
CardinalDir_WEST ;
32 static const NavRasterCardinalDir NavRasterCardinalDir_NORTH_EAST = 4;
33 static const NavRasterCardinalDir NavRasterCardinalDir_NORTH_WEST = 5;
34 static const NavRasterCardinalDir NavRasterCardinalDir_SOUTH_WEST = 6;
35 static const NavRasterCardinalDir NavRasterCardinalDir_SOUTH_EAST = 7;
36 KY_INLINE
bool IsNavRasterCardinalDirOnDiagonal(
const NavRasterCardinalDir dir) {
return dir >= 4; }
38 KY_INLINE Vec2i GetNavRasterPixelNeighbor(
const Vec2i& v, NavRasterCardinalDir dir)
41 const KyInt8 dx[8] = { 1, 0, -1, 0, 1, -1, -1, 1};
42 const KyInt8 dy[8] = { 0, 1, 0, -1, 1, 1, -1, -1};
43 return Vec2i(v.x + dx[dir], v.y + dy[dir]);
46 enum NavRasterFeatureMask
48 NavRasterPixelFeature_None = 0,
49 NavRasterPixelFeature_Hole = 1,
50 NavRasterPixelFeature_Wall = 2,
51 NavRasterPixelFeature_Wall_And_Hole = NavRasterPixelFeature_Hole | NavRasterPixelFeature_Wall
static const CardinalDir CardinalDir_NORTH
Y positive axis.
Definition: cardinaldir.h:17
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
std::uint16_t KyUInt16
uint16_t
Definition: types.h:28
static const CardinalDir CardinalDir_SOUTH
Y negative axis.
Definition: cardinaldir.h:19
static const CardinalDir CardinalDir_EAST
X positive axis.
Definition: cardinaldir.h:16
static const CardinalDir CardinalDir_WEST
X negative axis.
Definition: cardinaldir.h:18
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
std::int8_t KyInt8
int8_t
Definition: types.h:22
#define KyUInt32MAXVAL
KyUInt32 max value
Definition: types.h:68