#include <NavGenProj.h>
The NavGenProj class is a representation of the input data required for the standalone NavData generation tools supplied with Autodesk Navigation to generate NavData for a terrain.
Functions | |
NavGenProj () | |
~NavGenProj () | |
void | Clear () |
Clears all information maintained by this object. More... | |
KyResult | Load (const std::string &fileName) |
Loads the data contained in the .NavGenProj with the specified path and file name into this NavGenProj object. More... | |
KyResult | Save (const std::string &fileName) |
Saves the data in this NavGenProj object to a file on disk with the specified path and file name. More... | |
KyResult | Generate (const std::string &forcedOutputBaseDir, const std::string &forcedRelativeOutputDir) |
Generates NavData NavGenProj. More... | |
void | SetIterativeRebuildFromGenIOMode (const std::string &genIOFileName) |
bool | IsInIterativeRebuildFromGenIOMode () const |
void | AddSector (std::unique_ptr< ProjSector > sector) |
KyResult | AddTagVolume (const Vec3f *polylinePoints, int pointArraySize, const DynamicNavTag &navTag, float minAltitude, float maxAltitude) |
Adds a new tag volume to the NavGenProj. More... | |
void | AddSeedPoint (float x, float y, float z) |
Add a seed point to the navGenProj. More... | |
void | AddExclusiveGuids (const KyGuid *guids, KyUInt32 guidsCount) |
Add a exclusive guids. More... | |
void | AddSpecificCellToGenerate (int posx, int posy) |
If at least one specific cell is added, the generation will only generate these cells. More... | |
void | SetOutputDir (const char *outputBaseDir, const char *relativeOutputDir) |
Sets the outputDir, with a base path and a relative path, i.e where the Kaim::Generator outputs are written if no forcedOutputBaseDir and forcedRelativeOutputDir are provided to generate. More... | |
std::string | GetRelativeOutputDir () |
std::string | GetOutputBaseDir () |
void | SetDatabaseIndex (KyUInt32 dabaseIndex) |
Set and get the database name and index for current generation. More... | |
KyUInt32 | GetDatabaseIndex () const |
void | SetConfig (const GeneratorParameters ¶ms, const GeneratorRunOptions &runOptions, const CoordSystem &coordSystem) |
Sets up the NavGenProjConfig that will be used when generating NavData from this NavGenProj. More... | |
void | SetAbstractGraphConfig (const GeneratorAbstractGraphParameters &abstractGraphParams) |
Sets up the NavGenProjConfig that will be used when generating AbstractGraphs from this NavGenProj. More... | |
void | AddMirrorOptions (const ProjMirrorOptions &mirrorOptions) |
std::string | GetGeometryFileName (ProjSector *sector, int index) |
std::string | GetClientInputFileName (ProjSector *sector, int index) |
int | GetSectorCount () const |
ProjSector * | GetSector (int index) |
int | GetSeedPointCount () const |
const ProjSeedPoint & | GetSeedPoint (int index) const |
void | SetNavGenProjAbsPath (const std::string &projAbsPath) |
std::string | GetAbsolutePath (const std::string &path) const |
std::string | GetGenIOFileName () |
Add a exclusive guids.
void Kaim::NavGenProj::AddSeedPoint | ( | float | x, |
float | y, | ||
float | z | ||
) |
Add a seed point to the navGenProj.
void Kaim::NavGenProj::AddSpecificCellToGenerate | ( | int | posx, |
int | posy | ||
) |
If at least one specific cell is added, the generation will only generate these cells.
This is useful to parameterize/debug a specific cell without regenerating the whole world.
KyResult Kaim::NavGenProj::AddTagVolume | ( | const Vec3f * | polylinePoints, |
int | pointArraySize, | ||
const DynamicNavTag & | navTag, | ||
float | minAltitude, | ||
float | maxAltitude | ||
) |
Adds a new tag volume to the NavGenProj.
polylinePoints | An array of points in 3D space that form a two-dimensional horizontal outline for the volume. This list of points should be specified in counter-clockwise order as seen from above. It should be closed (i.e. the last point in the list should be the same as the first point), but if it is not closed, the first point will be automatically copied to the end of the list to close it. |
pointArraySize | The number of Vec3f objects in the polylinePoints array. |
navTag | The associated NavTag |
minAltitude | The altitude of the bottom surface of the tag volume. |
maxAltitude | The altitude of the top surface of the tag volume. |
void Kaim::NavGenProj::Clear | ( | ) |
Clears all information maintained by this object.
KyResult Kaim::NavGenProj::Generate | ( | const std::string & | forcedOutputBaseDir, |
const std::string & | forcedRelativeOutputDir | ||
) |
Generates NavData NavGenProj.
KyResult Kaim::NavGenProj::Load | ( | const std::string & | fileName | ) |
Loads the data contained in the .NavGenProj
with the specified path and file name into this NavGenProj object.
Any relative file paths contained in the .NavGenProj
are interpreted relative to the directory currently set for #m_navGenProjDirectory. After loading, the base directory of the NavGenProj is automatically set to the directory that contains the saved file.
KyResult Kaim::NavGenProj::Save | ( | const std::string & | fileName | ) |
Saves the data in this NavGenProj object to a file on disk with the specified path and file name.
The base directory of the NavGenProj is automatically set to the directory that contains the saved file.
void Kaim::NavGenProj::SetAbstractGraphConfig | ( | const GeneratorAbstractGraphParameters & | abstractGraphParams | ) |
Sets up the NavGenProjConfig that will be used when generating AbstractGraphs from this NavGenProj.
void Kaim::NavGenProj::SetConfig | ( | const GeneratorParameters & | params, |
const GeneratorRunOptions & | runOptions, | ||
const CoordSystem & | coordSystem | ||
) |
Sets up the NavGenProjConfig that will be used when generating NavData from this NavGenProj.
void Kaim::NavGenProj::SetDatabaseIndex | ( | KyUInt32 | dabaseIndex | ) |
Set and get the database name and index for current generation.
void Kaim::NavGenProj::SetOutputDir | ( | const char * | outputBaseDir, |
const char * | relativeOutputDir | ||
) |
Sets the outputDir, with a base path and a relative path, i.e where the Kaim::Generator outputs are written if no forcedOutputBaseDir and forcedRelativeOutputDir are provided to generate.