trackgen: fix some cppcheck warnings
git-svn-id: https://svn.code.sf.net/p/speed-dreams/code/trunk@8149 30fe4595-0a0c-4342-8851-515496e4dcbd Former-commit-id: 4000fd88f8ce71fe543d4905efca6e89e23de839 Former-commit-id: 386a7d1396281f07773db8ddde980af1a9801c92
This commit is contained in:
parent
d6a3042401
commit
82049a54e2
10 changed files with 96 additions and 105 deletions
|
@ -42,9 +42,9 @@ Ac3dOpen(const std::string &filename, int nbObjects)
|
|||
{
|
||||
FILE *save_fd = fopen(filename.c_str(), "w");
|
||||
|
||||
if (save_fd == NULL) {
|
||||
if (save_fd == nullptr) {
|
||||
GfOut("Failed to open '%s' for writing (%s)", filename.c_str(), strerror(errno));
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
fprintf(save_fd, "AC3Db\n");
|
||||
|
|
|
@ -1736,7 +1736,7 @@ groups(void)
|
|||
r_node = (struct nod *)calloc(Nn, sizeof(struct nod));
|
||||
r_elem = (struct ele *)calloc(Ne, sizeof(struct ele));
|
||||
r_side = (struct sid *)calloc(Ns, sizeof(struct sid));
|
||||
if (r_side == NULL) {
|
||||
if (r_side == nullptr) {
|
||||
fprintf(stderr, "Sorry, cannot allocate enough memory !\n");
|
||||
return ;
|
||||
}
|
||||
|
@ -1993,9 +1993,9 @@ GenerateMesh(tTrack *Track, bool rightside, bool reverse, bool exterior, bool us
|
|||
/* Right side */
|
||||
startNeeded = 1;
|
||||
for (i = 0, mseg = Track->seg->next; i < Track->nseg; i++, mseg = mseg->next) {
|
||||
if (mseg->rside != NULL) {
|
||||
if (mseg->rside != nullptr) {
|
||||
seg = mseg->rside;
|
||||
if (seg->rside != NULL) {
|
||||
if (seg->rside != nullptr) {
|
||||
seg = seg->rside;
|
||||
}
|
||||
} else {
|
||||
|
@ -2221,16 +2221,16 @@ GenerateTerrain(tTrack *track, void *TrackHandle, const std::string &outfile, FI
|
|||
{
|
||||
const char *FileName;
|
||||
const char *mat;
|
||||
FILE *curFd = NULL;
|
||||
FILE *curFd = nullptr;
|
||||
|
||||
TrackStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_TSTEP, NULL, 10.0);
|
||||
TrackStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_TSTEP, nullptr, 10.0);
|
||||
GfOut("Track step: %.2f\n", TrackStep);
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, NULL, 100.0);
|
||||
GridStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BSTEP, NULL, 10.0);
|
||||
ExtHeight = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BHEIGHT, NULL, 0.0);
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, nullptr, 100.0);
|
||||
GridStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BSTEP, nullptr, 10.0);
|
||||
ExtHeight = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BHEIGHT, nullptr, 0.0);
|
||||
GfOut("Border margin: %.2f step: %.2f height: %.2f\n", Margin, GridStep, ExtHeight);
|
||||
|
||||
GroupSize = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_GRPSZ, NULL, 100.0);
|
||||
GroupSize = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_GRPSZ, nullptr, 100.0);
|
||||
XGroupOffset = track->min.x - Margin;
|
||||
YGroupOffset = track->min.y - Margin;
|
||||
|
||||
|
@ -2250,16 +2250,16 @@ GenerateTerrain(tTrack *track, void *TrackHandle, const std::string &outfile, FI
|
|||
sprintf(buf, "%s/%s", TRK_SECT_SURFACES, mat);
|
||||
}
|
||||
TexName = GfParmGetStr(TrackHandle, buf, TRK_ATT_TEXTURE, "grass.png");
|
||||
TexSize = GfParmGetNum(TrackHandle, buf, TRK_ATT_TEXSIZE, (char*)NULL, 20.0f);
|
||||
TexRand = GfParmGetNum(TrackHandle, buf, TRK_ATT_SURFRAND, (char*)NULL, (tdble)(TexSize / 10.0));
|
||||
TexSize = GfParmGetNum(TrackHandle, buf, TRK_ATT_TEXSIZE, nullptr, 20.0f);
|
||||
TexRand = GfParmGetNum(TrackHandle, buf, TRK_ATT_SURFRAND, nullptr, (tdble)(TexSize / 10.0));
|
||||
|
||||
FileName = GfParmGetStr(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_RELIEF, NULL);
|
||||
FileName = GfParmGetStr(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_RELIEF, nullptr);
|
||||
if (FileName) {
|
||||
sprintf(buf, "tracks/%s/%s/%s", track->category, track->internalname, FileName);
|
||||
LoadRelief(TrackHandle, buf);
|
||||
}
|
||||
if (noElevation == -1) {
|
||||
FileName = GfParmGetStr(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ELEVATION, NULL);
|
||||
FileName = GfParmGetStr(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ELEVATION, nullptr);
|
||||
if (FileName) {
|
||||
sprintf(buf, "tracks/%s/%s/%s", track->category, track->internalname, FileName);
|
||||
LoadElevation(track, TrackHandle, buf);
|
||||
|
|
|
@ -63,7 +63,7 @@ void LoadElevation(tTrack *track, void *TrackHandle, const std::string &imgFile)
|
|||
|
||||
printf("Loading Elevation Map %s\n", imgFile.c_str());
|
||||
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, NULL, Margin);
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, nullptr, Margin);
|
||||
|
||||
xmin = track->min.x - Margin;
|
||||
xmax = track->max.x + Margin;
|
||||
|
@ -76,8 +76,8 @@ void LoadElevation(tTrack *track, void *TrackHandle, const std::string &imgFile)
|
|||
dY = -ymin * kY;
|
||||
ElvOk = 1;
|
||||
|
||||
zmin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ALT_MIN, NULL, track->min.z);
|
||||
zmax = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ALT_MAX, NULL, track->max.z);
|
||||
zmin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ALT_MIN, nullptr, track->min.z);
|
||||
zmax = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ALT_MAX, nullptr, track->max.z);
|
||||
|
||||
dZ = zmin;
|
||||
kZ = (zmax - dZ) / MAX_CLR;
|
||||
|
@ -86,14 +86,11 @@ void LoadElevation(tTrack *track, void *TrackHandle, const std::string &imgFile)
|
|||
|
||||
tdble GetElevation(tdble x, tdble y, tdble z)
|
||||
{
|
||||
int iX, iY;
|
||||
int clr;
|
||||
|
||||
if (ElvOk) {
|
||||
iX = (int)(x * kX + dX);
|
||||
iY = (int)(y * kY + dY);
|
||||
int iX = (int)(x * kX + dX);
|
||||
int iY = (int)(y * kY + dY);
|
||||
/* RGBA */
|
||||
clr = ElvImage[4 * (iY * width + iX)];
|
||||
int clr = ElvImage[4 * (iY * width + iX)];
|
||||
return (tdble)clr * kZ + dZ;
|
||||
}
|
||||
|
||||
|
@ -101,7 +98,7 @@ tdble GetElevation(tdble x, tdble y, tdble z)
|
|||
}
|
||||
|
||||
|
||||
void SaveElevation(tTrack *track, void *TrackHandle, const std::string &imgFile, const std::string &meshFile, int dispf, int heightSteps)
|
||||
void SaveElevation(tTrack *track, void *TrackHandle, const std::string &imgFile, const std::string &meshFile, int disp, int heightSteps)
|
||||
{
|
||||
ssgLoaderOptionsEx options;
|
||||
float zmin, zmax;
|
||||
|
@ -117,12 +114,12 @@ void SaveElevation(tTrack *track, void *TrackHandle, const std::string &imgFile,
|
|||
|
||||
s = getenv("COLUMNS");
|
||||
if (s) {
|
||||
columns = strtol(getenv("COLUMNS"), NULL, 0);
|
||||
columns = strtol(getenv("COLUMNS"), nullptr, 0);
|
||||
} else {
|
||||
columns = 80;
|
||||
}
|
||||
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, NULL, Margin);
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, nullptr, Margin);
|
||||
|
||||
xmin = track->min.x - Margin;
|
||||
xmax = track->max.x + Margin;
|
||||
|
@ -138,11 +135,11 @@ void SaveElevation(tTrack *track, void *TrackHandle, const std::string &imgFile,
|
|||
kY = (ymax - ymin) / height;
|
||||
dY = ymin;
|
||||
|
||||
zmin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ALT_MIN, NULL, track->min.z);
|
||||
zmax = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ALT_MAX, NULL, track->max.z);
|
||||
zmin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ALT_MIN, nullptr, track->min.z);
|
||||
zmax = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_ALT_MAX, nullptr, track->max.z);
|
||||
|
||||
heightStep = (float)(zmax - zmin) / (float)heightSteps;
|
||||
if (dispf == 2) {
|
||||
if (disp == 2) {
|
||||
printf("Height of steps = %f\n", heightStep);
|
||||
}
|
||||
|
||||
|
@ -161,7 +158,7 @@ void SaveElevation(tTrack *track, void *TrackHandle, const std::string &imgFile,
|
|||
ssgModelPath(buf);
|
||||
root = (ssgRoot*)ssgLoadAC(meshFile.c_str());
|
||||
|
||||
if (root == NULL) {
|
||||
if (root == nullptr) {
|
||||
printf("Could not load %s, ", meshFile.c_str());
|
||||
printf("please generate it with \"trackgen -c %s -n %s -a\"\n", track->category, track->internalname);
|
||||
return;
|
||||
|
@ -187,7 +184,7 @@ void SaveElevation(tTrack *track, void *TrackHandle, const std::string &imgFile,
|
|||
y = j * kY + dY;
|
||||
z = getHOT(root, x, y);
|
||||
if (z != -1000000.0f) {
|
||||
switch (dispf) {
|
||||
switch (disp) {
|
||||
case 0:
|
||||
clr = 0;
|
||||
break;
|
||||
|
|
|
@ -201,7 +201,7 @@ bool Application::parseOptions()
|
|||
}
|
||||
else if (itOpt->strLongName == "saveelev")
|
||||
{
|
||||
DoSaveElevation = strtol(itOpt->strValue.c_str(), NULL, 0);
|
||||
DoSaveElevation = strtol(itOpt->strValue.c_str(), nullptr, 0);
|
||||
TrackOnly = false;
|
||||
}
|
||||
else if (itOpt->strLongName == "category")
|
||||
|
@ -210,7 +210,7 @@ bool Application::parseOptions()
|
|||
}
|
||||
else if (itOpt->strLongName == "steps4")
|
||||
{
|
||||
HeightSteps = strtol(itOpt->strValue.c_str(), NULL, 0);
|
||||
HeightSteps = strtol(itOpt->strValue.c_str(), nullptr, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -273,7 +273,7 @@ int Application::generate()
|
|||
std::string OutputFileName(buf2);
|
||||
|
||||
// Number of groups for the complete track.
|
||||
FILE *outfd = NULL;
|
||||
FILE *outfd = nullptr;
|
||||
if (TrackOnly) {
|
||||
// Track.
|
||||
if (!Bump && !Raceline)
|
||||
|
|
|
@ -46,9 +46,9 @@
|
|||
static char path[1024];
|
||||
static char buf[1024];
|
||||
|
||||
static ssgRoot *Root = NULL;
|
||||
static ssgRoot *GroupRoot = NULL;
|
||||
static ssgRoot *TrackRoot = NULL;
|
||||
static ssgRoot *Root = nullptr;
|
||||
static ssgRoot *GroupRoot = nullptr;
|
||||
static ssgRoot *TrackRoot = nullptr;
|
||||
|
||||
struct group
|
||||
{
|
||||
|
@ -112,7 +112,7 @@ InitObjects(tTrack *track, void *TrackHandle)
|
|||
|
||||
ObjUniqId = 0;
|
||||
|
||||
srand((unsigned int)GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_SEED, NULL, 1));
|
||||
srand((unsigned int)GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_SEED, nullptr, 1));
|
||||
|
||||
ssgSetCurrentOptions ( &options ) ;
|
||||
|
||||
|
@ -131,8 +131,8 @@ InitObjects(tTrack *track, void *TrackHandle)
|
|||
for (int i = 0; i < objnb; i++)
|
||||
{
|
||||
objdef *curObj = (struct objdef *)malloc(sizeof(struct objdef));
|
||||
curObj->color = (unsigned int)GfParmGetCurNum(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_COLOR, NULL, 0);
|
||||
const char *objName = GfParmGetCurStr(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_OBJECT, NULL);
|
||||
curObj->color = (unsigned int)GfParmGetCurNum(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_COLOR, nullptr, 0);
|
||||
const char *objName = GfParmGetCurStr(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_OBJECT, nullptr);
|
||||
|
||||
if (!objName)
|
||||
{
|
||||
|
@ -152,8 +152,8 @@ InitObjects(tTrack *track, void *TrackHandle)
|
|||
|
||||
if (strcmp(GfParmGetCurStr(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_ORIENTATION_TYPE, ""), "random") == 0)
|
||||
{
|
||||
curObj->deltaHeight = GfParmGetCurNum(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_DH, NULL, 0);
|
||||
curObj->deltaVert = GfParmGetCurNum(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_DV, NULL, 5.0);
|
||||
curObj->deltaHeight = GfParmGetCurNum(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_DH, nullptr, 0);
|
||||
curObj->deltaVert = GfParmGetCurNum(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_DV, nullptr, 5.0);
|
||||
curObj->random = true;
|
||||
}
|
||||
else
|
||||
|
@ -185,7 +185,7 @@ InitObjects(tTrack *track, void *TrackHandle)
|
|||
if (strcmp(GfParmGetCurStr(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_ORIENTATION_TYPE, ""), "border") == 0)
|
||||
{
|
||||
curObj->borderOriented = true;
|
||||
curObj->distance = GfParmGetCurNum(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_BORDER_DISTANCE, NULL, 1.0);
|
||||
curObj->distance = GfParmGetCurNum(TrackHandle, TRK_SECT_OBJECTS, TRK_ATT_BORDER_DISTANCE, nullptr, 1.0);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -343,18 +343,18 @@ ssgSaveLeaf (ssgEntity *ent, FILE *save_fd)
|
|||
{
|
||||
const char* tfname = ss->getTextureFilename ();
|
||||
|
||||
if ((tfname != NULL) && (tfname[0] != 0))
|
||||
if ((tfname != nullptr) && (tfname[0] != 0))
|
||||
{
|
||||
if (writeTextureWithoutPath)
|
||||
{
|
||||
char *s = strrchr ((char *)tfname, '\\');
|
||||
|
||||
if (s == NULL)
|
||||
if (s == nullptr)
|
||||
{
|
||||
s = strrchr ((char *)tfname, '/');
|
||||
}
|
||||
|
||||
if (s == NULL)
|
||||
if (s == nullptr)
|
||||
{
|
||||
fprintf (save_fd, "texture \"%s\"\n", tfname);
|
||||
}
|
||||
|
@ -485,8 +485,8 @@ Group(tTrack *track, void *TrackHandle, ssgEntity *ent)
|
|||
|
||||
GroupRoot = new ssgRoot();
|
||||
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, NULL, 100.0);
|
||||
GroupSize = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_GRPSZ, NULL, 100.0);
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, nullptr, 100.0);
|
||||
GroupSize = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_GRPSZ, nullptr, 100.0);
|
||||
XGroupOffset = track->min.x - Margin;
|
||||
YGroupOffset = track->min.y - Margin;
|
||||
|
||||
|
@ -509,17 +509,12 @@ void
|
|||
GenerateObjects(tTrack *track, void *TrackHandle, void *CfgHandle, FILE *save_fd, const std::string &meshFile, const std::string &outputFile)
|
||||
{
|
||||
ssgLoaderOptionsEx options;
|
||||
int i, j;
|
||||
const char *map;
|
||||
unsigned char *MapImage;
|
||||
int width, height;
|
||||
tdble xmin, xmax, ymin, ymax;
|
||||
tdble Margin;
|
||||
tdble kX, kY, dX, dY;
|
||||
unsigned int clr;
|
||||
int index;
|
||||
const char *extName;
|
||||
FILE *curFd;
|
||||
|
||||
ssgSetCurrentOptions(&options);
|
||||
sprintf(buf, "tracks/%s/%s;data/textures;data/img;.", track->category, track->internalname);
|
||||
|
@ -530,7 +525,7 @@ GenerateObjects(tTrack *track, void *TrackHandle, void *CfgHandle, FILE *save_fd
|
|||
|
||||
InitObjects(track, TrackHandle);
|
||||
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, NULL, 0);
|
||||
Margin = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BMARGIN, nullptr, 0);
|
||||
|
||||
xmin = track->min.x - Margin;
|
||||
xmax = track->max.x + Margin;
|
||||
|
@ -552,11 +547,11 @@ GenerateObjects(tTrack *track, void *TrackHandle, void *CfgHandle, FILE *save_fd
|
|||
Root = new ssgRoot();
|
||||
|
||||
index++;
|
||||
map = GfParmGetCurStr(TrackHandle, path, TRK_ATT_OBJMAP, "");
|
||||
const char *map = GfParmGetCurStr(TrackHandle, path, TRK_ATT_OBJMAP, "");
|
||||
sprintf(buf, "tracks/%s/%s/%s", track->category, track->internalname, map);
|
||||
|
||||
printf("Processing object map %s\n", buf);
|
||||
MapImage = GfTexReadImageFromPNG(buf, 2.2, &width, &height, 0, 0, false);
|
||||
unsigned char *MapImage = GfTexReadImageFromPNG(buf, 2.2, &width, &height, 0, 0, false);
|
||||
|
||||
if (!MapImage)
|
||||
{
|
||||
|
@ -568,9 +563,9 @@ GenerateObjects(tTrack *track, void *TrackHandle, void *CfgHandle, FILE *save_fd
|
|||
kY = (ymax - ymin) / height;
|
||||
dY = ymin;
|
||||
|
||||
for (j = 0; j < height; j++)
|
||||
for (int j = 0; j < height; j++)
|
||||
{
|
||||
for (i = 0; i < width; i++)
|
||||
for (int i = 0; i < width; i++)
|
||||
{
|
||||
clr = (MapImage[4 * (i + width * j)] << 16) + (MapImage[4 * (i + width * j) + 1] << 8) + MapImage[4 * (i + width * j) + 2];
|
||||
|
||||
|
@ -583,9 +578,9 @@ GenerateObjects(tTrack *track, void *TrackHandle, void *CfgHandle, FILE *save_fd
|
|||
|
||||
Group(track, TrackHandle, Root);
|
||||
|
||||
extName = GfParmGetStr(CfgHandle, "Files", "object", "obj");
|
||||
const char *extName = GfParmGetStr(CfgHandle, "Files", "object", "obj");
|
||||
sprintf(buf, "%s-%s-%d.ac", outputFile.c_str(), extName, index);
|
||||
curFd = Ac3dOpen(buf, 1);
|
||||
FILE *curFd = Ac3dOpen(buf, 1);
|
||||
ssgSaveACInner(GroupRoot, curFd);
|
||||
Ac3dClose(curFd);
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@ struct RacelineSegment
|
|||
};
|
||||
|
||||
static const double SegLength = 2.0;
|
||||
static RacelineSegment* rlseg = NULL;
|
||||
static RacelineSegment* rlseg = nullptr;
|
||||
static int nSegments = 0;
|
||||
static double SideDistExt = 2.0; // Security distance wrt outside
|
||||
static double SideDistInt = 2.0; // Security distance wrt inside
|
||||
|
@ -43,7 +43,7 @@ static const double SecurityR = 100.0; // Security radius
|
|||
static void SplitTrack(tTrack *ptrack)
|
||||
{
|
||||
const tTrackSeg *seg = ptrack->seg;
|
||||
const tTrackSeg *first = NULL;
|
||||
const tTrackSeg *first = nullptr;
|
||||
// Find pointer to start (seems not to start at the "start" all the time, e.g e-track-1)
|
||||
do {
|
||||
if (seg->lgfromstart == 0.0)
|
||||
|
|
|
@ -55,7 +55,7 @@ tRingListHead ExteriorList;
|
|||
|
||||
static tdble GridStep;
|
||||
|
||||
static ssgEntity *Root = NULL;
|
||||
static ssgEntity *Root = nullptr;
|
||||
|
||||
/*
|
||||
* Read the faces from AC3D file
|
||||
|
@ -87,7 +87,7 @@ LoadRelief(void *TrackHandle, const char *reliefFile)
|
|||
GF_TAILQ_INIT(&InteriorList);
|
||||
GF_TAILQ_INIT(&ExteriorList);
|
||||
|
||||
GridStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BSTEP, NULL, GridStep);
|
||||
GridStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_BSTEP, nullptr, GridStep);
|
||||
|
||||
ssgLoaderOptions *loaderopt = new ssgLoaderOptions();
|
||||
|
||||
|
@ -124,7 +124,7 @@ CountRelief(bool interior, int *nb_vert, int *nb_seg)
|
|||
|
||||
*nb_vert = *nb_seg = 0;
|
||||
|
||||
if (Root == NULL) {
|
||||
if (Root == nullptr) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -135,7 +135,7 @@ CountRelief(bool interior, int *nb_vert, int *nb_seg)
|
|||
}
|
||||
|
||||
curLine = GF_TAILQ_FIRST(curHead);
|
||||
while (curLine != NULL) {
|
||||
while (curLine != nullptr) {
|
||||
ssgBranch *br = curLine->branch->getParent(0);
|
||||
ssgBranch *br2 = new ssgBranch();
|
||||
|
||||
|
@ -200,7 +200,7 @@ GenRelief(bool interior)
|
|||
tRingListHead *curHead;
|
||||
|
||||
|
||||
if (Root == NULL) {
|
||||
if (Root == nullptr) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -211,7 +211,7 @@ GenRelief(bool interior)
|
|||
}
|
||||
|
||||
curLine = GF_TAILQ_FIRST(curHead);
|
||||
while (curLine != NULL) {
|
||||
while (curLine != nullptr) {
|
||||
genRec((ssgEntity *)curLine->branch);
|
||||
|
||||
curLine = GF_TAILQ_NEXT(curLine, link);
|
||||
|
|
|
@ -86,8 +86,8 @@ static tdble TrackStep;
|
|||
|
||||
static void initPits(tTrack *theTrack, void *TrackHandle, tTrackPitInfo *pits) {
|
||||
tTrackSeg *curMainSeg;
|
||||
tTrackSeg *curPitSeg = NULL;
|
||||
tTrackSeg *pitBuildingsStart = NULL;
|
||||
tTrackSeg *curPitSeg = nullptr;
|
||||
tTrackSeg *pitBuildingsStart = nullptr;
|
||||
const char *segName;
|
||||
tTrkLocPos curPos;
|
||||
int i;
|
||||
|
@ -112,7 +112,7 @@ static void initPits(tTrack *theTrack, void *TrackHandle, tTrackPitInfo *pits) {
|
|||
curPos.type = TR_TOMIDDLE;
|
||||
//TR_LPOS_MAIN; //NB: TR_LPOS_MAIN not handled by RtTrackLocal2Global!
|
||||
|
||||
segName = GfParmGetStr(TrackHandle, path2, TRK_ATT_BUILDINGS_START, NULL);
|
||||
segName = GfParmGetStr(TrackHandle, path2, TRK_ATT_BUILDINGS_START, nullptr);
|
||||
if (segName != 0) {
|
||||
pitBuildingsStart = theTrack->seg;
|
||||
found = false;
|
||||
|
@ -131,12 +131,12 @@ static void initPits(tTrack *theTrack, void *TrackHandle, tTrackPitInfo *pits) {
|
|||
|
||||
if (!found)
|
||||
{
|
||||
pitBuildingsStart = NULL;
|
||||
pitBuildingsStart = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
if (pitBuildingsStart == NULL) {
|
||||
if (pits->pitStart == NULL) {
|
||||
if (pitBuildingsStart == nullptr) {
|
||||
if (pits->pitStart == nullptr) {
|
||||
GfLogError("Can't find pit start\n");
|
||||
exit(1);
|
||||
}
|
||||
|
@ -256,7 +256,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
{
|
||||
int i;
|
||||
tTrackSeg *seg;
|
||||
tTrackSeg *lastSeg = NULL;
|
||||
tTrackSeg *lastSeg = nullptr;
|
||||
tTrackSeg *mseg;
|
||||
int nbvert;
|
||||
tdble width;
|
||||
|
@ -272,7 +272,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
tdble xprev = 0;
|
||||
tdble yprev = 0;
|
||||
|
||||
tDispElt *aDispElt = NULL;
|
||||
tDispElt *aDispElt = nullptr;
|
||||
unsigned int prevTexId;
|
||||
unsigned int curTexId = 0;
|
||||
int curTexType = 0;
|
||||
|
@ -281,8 +281,8 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
tdble curTexSeg;
|
||||
tdble curTexSize = 0;
|
||||
tdble curHeight;
|
||||
tTexElt *texList = (tTexElt*)NULL;
|
||||
tTexElt *curTexElt = NULL;
|
||||
tTexElt *texList = nullptr;
|
||||
tTexElt *curTexElt = nullptr;
|
||||
tTrackBarrier *curBarrier;
|
||||
tdble texLen;
|
||||
tdble texStep;
|
||||
|
@ -297,7 +297,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
tdble tmHSpace = Track->graphic.turnMarksInfo.hSpace;
|
||||
char buf[256];
|
||||
int hasBorder;
|
||||
tDispElt *theCurDispElt = NULL;
|
||||
tDispElt *theCurDispElt = nullptr;
|
||||
char sname[256];
|
||||
// float dmax = 0;
|
||||
|
||||
|
@ -344,9 +344,9 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
|
||||
if (raceline)
|
||||
{
|
||||
double SideDistExt = GfParmGetNum(TrackHandle, TRK_SECT_MAIN, TRK_ATT_RLEXT, (char*)NULL, 2.0);
|
||||
double SideDistInt = GfParmGetNum(TrackHandle, TRK_SECT_MAIN, TRK_ATT_RLINT, (char*)NULL, 2.0);
|
||||
rlWidthScale = GfParmGetNum(TrackHandle, TRK_SECT_MAIN, TRK_ATT_RLWIDTHSCALE, (char*)NULL, 1.0);
|
||||
double SideDistExt = GfParmGetNum(TrackHandle, TRK_SECT_MAIN, TRK_ATT_RLEXT, nullptr, 2.0);
|
||||
double SideDistInt = GfParmGetNum(TrackHandle, TRK_SECT_MAIN, TRK_ATT_RLINT, nullptr, 2.0);
|
||||
rlWidthScale = GfParmGetNum(TrackHandle, TRK_SECT_MAIN, TRK_ATT_RLWIDTHSCALE, nullptr, 1.0);
|
||||
rlOffset = (1.0 - 1.0/rlWidthScale)/2.0;
|
||||
generateRaceLine(Track, SideDistExt, SideDistInt);
|
||||
}
|
||||
|
@ -356,7 +356,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
#define SETTEXTURE(texname, texnamebump, texnameraceline, _mipmap) do { \
|
||||
int found = 0; \
|
||||
curTexElt = texList; \
|
||||
if (curTexElt == NULL) { \
|
||||
if (curTexElt == nullptr) { \
|
||||
curTexElt = (tTexElt*)calloc(1, sizeof(tTexElt)); \
|
||||
curTexElt->next = curTexElt; \
|
||||
texList = curTexElt; \
|
||||
|
@ -392,7 +392,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
|
||||
#define NEWDISPLIST(texchange, _name, _id) do { \
|
||||
if (!bump || (*(curTexElt->namebump) != 0)) { \
|
||||
if (theCurDispElt != NULL) { \
|
||||
if (theCurDispElt != nullptr) { \
|
||||
startNeeded = texchange; \
|
||||
if (theCurDispElt->start != nbvert) { \
|
||||
theCurDispElt->nb = nbvert - theCurDispElt->start; \
|
||||
|
@ -448,7 +448,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
texnamebump = GfParmGetStr(TrackHandle, path_, TRK_ATT_BUMPNAME, ""); \
|
||||
texnameraceline = GfParmGetStr(TrackHandle, path_, TRK_ATT_RACELINENAME, "raceline.png"); \
|
||||
texname = GfParmGetStr(TrackHandle, path_, TRK_ATT_TEXTURE, "tr-asphalt.png"); \
|
||||
mipmap = (int)GfParmGetNum(TrackHandle, path_, TRK_ATT_TEXMIPMAP, (char*)NULL, 0); \
|
||||
mipmap = (int)GfParmGetNum(TrackHandle, path_, TRK_ATT_TEXMIPMAP, nullptr, 0); \
|
||||
SETTEXTURE(texname, texnamebump, texnameraceline, mipmap); \
|
||||
if ((curTexId != prevTexId) || (startNeeded)) { \
|
||||
const char *textype; \
|
||||
|
@ -456,7 +456,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
curTexType = 1; \
|
||||
curTexLink = 1; \
|
||||
curTexOffset = -off; \
|
||||
curTexSize = GfParmGetNum(TrackHandle, path_, TRK_ATT_BUMPSIZE, (char*)NULL, 20.0); \
|
||||
curTexSize = GfParmGetNum(TrackHandle, path_, TRK_ATT_BUMPSIZE, nullptr, 20.0); \
|
||||
} else { \
|
||||
textype = GfParmGetStr(TrackHandle, path_, TRK_ATT_TEXTYPE, "continuous"); \
|
||||
if (strcmp(textype, "continuous") == 0) \
|
||||
|
@ -473,7 +473,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
curTexOffset = -off; \
|
||||
else \
|
||||
curTexOffset = 0; \
|
||||
curTexSize = GfParmGetNum(TrackHandle, path_, TRK_ATT_TEXSIZE, (char*)NULL, 20.0); \
|
||||
curTexSize = GfParmGetNum(TrackHandle, path_, TRK_ATT_TEXSIZE, nullptr, 20.0); \
|
||||
} \
|
||||
prevTexId = curTexId; \
|
||||
NEWDISPLIST(1, name, id); \
|
||||
|
@ -707,7 +707,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
runninglentgh = 0;
|
||||
sprintf(sname, "t%dRB", j);
|
||||
for (i = 0, mseg = Track->seg->next; i < Track->nseg; i++, mseg = mseg->next) {
|
||||
if ((mseg->rside != NULL) && (mseg->rside->type2 == TR_RBORDER)) {
|
||||
if ((mseg->rside != nullptr) && (mseg->rside->type2 == TR_RBORDER)) {
|
||||
seg = mseg->rside;
|
||||
CHECKDISPLIST(seg->surface->material, sname, i, mseg->lgfromstart);
|
||||
if (!curTexLink) {
|
||||
|
@ -1086,10 +1086,10 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
runninglentgh = 0;
|
||||
hasBorder = 0;
|
||||
for (i = 0, mseg = Track->seg->next; i < Track->nseg; i++, mseg = mseg->next) {
|
||||
if ((mseg->rside != NULL) &&
|
||||
((mseg->rside->type2 == TR_RSIDE) || (mseg->rside->rside != NULL))) {
|
||||
if ((mseg->rside != nullptr) &&
|
||||
((mseg->rside->type2 == TR_RSIDE) || (mseg->rside->rside != nullptr))) {
|
||||
seg = mseg->rside;
|
||||
if (seg->rside != NULL) {
|
||||
if (seg->rside != nullptr) {
|
||||
seg = seg->rside;
|
||||
if (hasBorder == 0) {
|
||||
startNeeded = 1;
|
||||
|
@ -1241,7 +1241,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
runninglentgh = 0;
|
||||
sprintf(sname, "t%dLB", j);
|
||||
for (i = 0, mseg = Track->seg->next; i < Track->nseg; i++, mseg = mseg->next) {
|
||||
if ((mseg->lside != NULL) && (mseg->lside->type2 == TR_LBORDER)) {
|
||||
if ((mseg->lside != nullptr) && (mseg->lside->type2 == TR_LBORDER)) {
|
||||
seg = mseg->lside;
|
||||
CHECKDISPLIST(seg->surface->material, sname, i, mseg->lgfromstart);
|
||||
if (!curTexLink) {
|
||||
|
@ -1614,8 +1614,8 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
runninglentgh = 0;
|
||||
hasBorder = 0;
|
||||
for (i = 0, mseg = Track->seg->next; i < Track->nseg; i++, mseg = mseg->next) {
|
||||
if ((mseg->lside != NULL) &&
|
||||
((mseg->lside->type2 == TR_LSIDE) || (mseg->lside->lside != NULL))) {
|
||||
if ((mseg->lside != nullptr) &&
|
||||
((mseg->lside->type2 == TR_LSIDE) || (mseg->lside->lside != nullptr))) {
|
||||
seg = mseg->lside;
|
||||
if (seg->lside) {
|
||||
seg = seg->lside;
|
||||
|
@ -1768,7 +1768,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
runninglentgh = 0;
|
||||
sprintf(sname, "B%dRt", j);
|
||||
for (i = 0, mseg = Track->seg->next; i < Track->nseg; i++, mseg = mseg->next) {
|
||||
if ((mseg->rside != NULL) && (mseg->rside->raceInfo & TR_PITBUILD)) {
|
||||
if ((mseg->rside != nullptr) && (mseg->rside->raceInfo & TR_PITBUILD)) {
|
||||
startNeeded = 1;
|
||||
runninglentgh = 0;
|
||||
NEWDISPLIST(0, sname, i);
|
||||
|
@ -2038,7 +2038,7 @@ InitScene(tTrack *Track, void *TrackHandle, bool bump, bool raceline)
|
|||
runninglentgh = 0;
|
||||
sprintf(sname, "B%dLt", j);
|
||||
for (i = 0, mseg = Track->seg->next; i < Track->nseg; i++, mseg = mseg->next) {
|
||||
if ((mseg->lside != NULL) && (mseg->lside->raceInfo & TR_PITBUILD)) {
|
||||
if ((mseg->lside != nullptr) && (mseg->lside->raceInfo & TR_PITBUILD)) {
|
||||
runninglentgh = 0;
|
||||
startNeeded = 1;
|
||||
NEWDISPLIST(0, sname, i);
|
||||
|
@ -2785,7 +2785,7 @@ SaveMainTrack(FILE *curFd, bool bump, bool raceline)
|
|||
*/
|
||||
void CalculateTrack(tTrack * Track, void *TrackHandle, bool bump, bool raceline)
|
||||
{
|
||||
TrackStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_TSTEP, NULL, TrackStep);
|
||||
TrackStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_TSTEP, nullptr, TrackStep);
|
||||
printf("Track step: %.2f ", TrackStep);
|
||||
|
||||
InitScene(Track, TrackHandle, bump, raceline);
|
||||
|
@ -2804,7 +2804,7 @@ void CalculateTrack(tTrack * Track, void *TrackHandle, bool bump, bool raceline)
|
|||
void
|
||||
GenerateTrack(tTrack * Track, void *TrackHandle, const std::string &outFile, FILE *AllFd, bool bump, bool raceline)
|
||||
{
|
||||
TrackStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_TSTEP, NULL, TrackStep);
|
||||
TrackStep = GfParmGetNum(TrackHandle, TRK_SECT_TERRAIN, TRK_ATT_TSTEP, nullptr, TrackStep);
|
||||
printf("Track step: %.2f ", TrackStep);
|
||||
|
||||
InitScene(Track, TrackHandle, bump, raceline);
|
||||
|
|
|
@ -225,11 +225,10 @@ float
|
|||
getBorderAngle(tTrack *Track, void *TrackHandle, float x, float y, float distance, float *xRet, float *yRet, float *zRet )
|
||||
{
|
||||
float angle=0, dst=100000, shDst=100000;
|
||||
int i;
|
||||
tTrackSeg *seg = Track->seg;
|
||||
tTrkLocPos curPos, closePos, objPos;
|
||||
float x2, y2, x3, y3;
|
||||
for(i = 0; i < Track->nseg; i++)
|
||||
for(int i = 0; i < Track->nseg; i++)
|
||||
{
|
||||
seg=seg->next;
|
||||
curPos.seg=seg;
|
||||
|
@ -300,7 +299,7 @@ getBorderAngle(tTrack *Track, void *TrackHandle, float x, float y, float distanc
|
|||
curPos.toStart+=0.001;
|
||||
RtTrackLocal2Global(&curPos, &x2, &y2, TR_TORIGHT);
|
||||
angle=-90.0-atan2f(x2-x3,y2-y3)*180/PI;
|
||||
RtTrackLocal2Global(&objPos, &*xRet, &*yRet, TR_TORIGHT);
|
||||
RtTrackLocal2Global(&objPos, xRet, yRet, TR_TORIGHT);
|
||||
}
|
||||
else
|
||||
// left side
|
||||
|
@ -310,7 +309,7 @@ getBorderAngle(tTrack *Track, void *TrackHandle, float x, float y, float distanc
|
|||
curPos.toStart+=0.001;
|
||||
RtTrackLocal2Global(&curPos, &x2, &y2, TR_TOLEFT);
|
||||
angle=90.0-atan2f(x2-x3,y2-y3)*180/PI;
|
||||
RtTrackLocal2Global(&objPos, &*xRet, &*yRet, TR_TOLEFT);
|
||||
RtTrackLocal2Global(&objPos, xRet, yRet, TR_TOLEFT);
|
||||
}
|
||||
|
||||
*zRet=RtTrackHeightG(seg, *xRet, *yRet);
|
||||
|
|
|
@ -45,12 +45,12 @@ class ssgLoaderOptionsEx : public ssgLoaderOptions
|
|||
|
||||
virtual void makeModelPath ( char* path, const char *fname ) const
|
||||
{
|
||||
ulFindFile ( path, model_dir, fname, NULL ) ;
|
||||
ulFindFile ( path, model_dir, fname, nullptr ) ;
|
||||
}
|
||||
|
||||
virtual void makeTexturePath ( char* path, const char *fname ) const
|
||||
{
|
||||
ulFindFile ( path, texture_dir, fname, NULL ) ;
|
||||
ulFindFile ( path, texture_dir, fname, nullptr ) ;
|
||||
}
|
||||
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue