TORCS  1.3.9
The Open Racing Car Simulator
track3.cpp File Reference
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
#include <tgf.h>
#include <robottools.h>
#include <track.h>
#include <portability.h>
#include "trackinc.h"
Include dependency graph for track3.cpp:

Go to the source code of this file.

Macros

#define TSTX(x)
 
#define TSTY(y)
 
#define TSTZ(z)
 
#define MAX_TMP_INTS   256
 

Functions

static tTrackSurfaceAddTrackSurface (void *TrackHandle, tTrack *theTrack, const char *material)
 
static void InitSides (void *TrackHandle, tTrack *theTrack)
 
static void AddSides (tTrackSeg *curSeg, void *TrackHandle, tTrack *theTrack, int curStep, int steps)
 
static void normSeg (tTrackSeg *curSeg)
 
static void CreateSegRing3 (void *TrackHandle, tTrack *theTrack, tTrackSeg *start, tTrackSeg *end, int ext)
 
void ReadTrack3 (tTrack *theTrack, void *TrackHandle, tRoadCam **camList, int ext)
 

Variables

static tdble xmin
 
static tdble xmax
 
static tdble ymin
 
static tdble ymax
 
static tdble zmin
 
static tdble zmax
 
static const char * KeySideSurface [2] = {TRK_ATT_RSSURF, TRK_ATT_LSSURF}
 
static const char * KeySideWidth [2] = {TRK_ATT_RSW, TRK_ATT_LSW}
 
static const char * KeySideStartWidth [2] = {TRK_ATT_RSWS, TRK_ATT_LSWS}
 
static const char * KeySideEndWidth [2] = {TRK_ATT_RSWE, TRK_ATT_LSWE}
 
static const char * KeySideBankType [2] = {TRK_ATT_RST, TRK_ATT_LST}
 
static const char * KeyBorderSurface [2] = {TRK_ATT_RBSURF, TRK_ATT_LBSURF}
 
static const char * KeyBorderWidth [2] = {TRK_ATT_RBW, TRK_ATT_LBW}
 
static const char * KeyBorderStyle [2] = {TRK_ATT_RBS, TRK_ATT_LBS}
 
static const char * KeyBorderHeight [2] = {TRK_ATT_RBH, TRK_ATT_LBH}
 
static const char * KeyBarrierSurface [2] = {TRK_ATT_RBASURF, TRK_ATT_LBASURF}
 
static const char * KeyBarrierWidth [2] = {TRK_ATT_RBAW, TRK_ATT_LBAW}
 
static const char * KeyBarrierStyle [2] = {TRK_ATT_RBAS, TRK_ATT_LBAS}
 
static const char * KeyBarrierHeight [2] = {TRK_ATT_RBAH, TRK_ATT_LBAH}
 
static const char * ValStyle [4] = {TRK_VAL_PLAN, TRK_VAL_WALL, TRK_VAL_CURB, TRK_VAL_FENCE}
 
static tdble sideEndWidth [2]
 
static tdble sideStartWidth [2]
 
static int sideBankType [2]
 
static const char * sideMaterial [2]
 
static tTrackSurfacesideSurface [2]
 
static int envIndex
 
static tdble borderWidth [2]
 
static tdble borderHeight [2]
 
static int borderStyle [2]
 
static const char * borderMaterial [2]
 
static tTrackSurfaceborderSurface [2]
 
static tdble barrierWidth [2]
 
static tdble barrierHeight [2]
 
static int barrierStyle [2]
 
static const char * barrierMaterial [2]
 
static tTrackSurfacebarrierSurface [2]
 
static tdble GlobalStepLen = 0
 

Macro Definition Documentation

◆ MAX_TMP_INTS

#define MAX_TMP_INTS   256

◆ TSTX

#define TSTX (   x)
Value:
if (xmin > (x)) xmin = (x); \
if (xmax < (x)) xmax = (x);
static tdble xmax
Definition: track3.cpp:30
static tdble xmin
Definition: track3.cpp:30

Definition at line 32 of file track3.cpp.

◆ TSTY

#define TSTY (   y)
Value:
if (ymin > (y)) ymin = (y); \
if (ymax < (y)) ymax = (y);
static tdble ymax
Definition: track3.cpp:30
static tdble ymin
Definition: track3.cpp:30
static Vector y[4]
Definition: Convex.cpp:56

Definition at line 36 of file track3.cpp.

◆ TSTZ

#define TSTZ (   z)
Value:
if (zmin > (z)) zmin = (z); \
if (zmax < (z)) zmax = (z);
static tdble zmin
Definition: track3.cpp:30
static tdble zmax
Definition: track3.cpp:30

Definition at line 40 of file track3.cpp.

Function Documentation

◆ AddSides()

static void AddSides ( tTrackSeg curSeg,
void *  TrackHandle,
tTrack theTrack,
int  curStep,
int  steps 
)
static

Definition at line 176 of file track3.cpp.

Here is the call graph for this function:

◆ AddTrackSurface()

static tTrackSurface* AddTrackSurface ( void *  TrackHandle,
tTrack theTrack,
const char *  material 
)
static

Definition at line 90 of file track3.cpp.

Here is the call graph for this function:

◆ CreateSegRing3()

static void CreateSegRing3 ( void *  TrackHandle,
tTrack theTrack,
tTrackSeg start,
tTrackSeg end,
int  ext 
)
static

Definition at line 772 of file track3.cpp.

Here is the call graph for this function:

◆ InitSides()

static void InitSides ( void *  TrackHandle,
tTrack theTrack 
)
static

Definition at line 128 of file track3.cpp.

Here is the call graph for this function:

◆ normSeg()

static void normSeg ( tTrackSeg curSeg)
static

Definition at line 753 of file track3.cpp.

◆ ReadTrack3()

void ReadTrack3 ( tTrack theTrack,
void *  TrackHandle,
tRoadCam **  camList,
int  ext 
)

Definition at line 1279 of file track3.cpp.

Here is the call graph for this function:

Variable Documentation

◆ barrierHeight

tdble barrierHeight[2]
static

Definition at line 82 of file track3.cpp.

◆ barrierMaterial

const char* barrierMaterial[2]
static

Definition at line 84 of file track3.cpp.

◆ barrierStyle

int barrierStyle[2]
static

Definition at line 83 of file track3.cpp.

◆ barrierSurface

tTrackSurface* barrierSurface[2]
static

Definition at line 85 of file track3.cpp.

◆ barrierWidth

tdble barrierWidth[2]
static

Definition at line 81 of file track3.cpp.

◆ borderHeight

tdble borderHeight[2]
static

Definition at line 76 of file track3.cpp.

◆ borderMaterial

const char* borderMaterial[2]
static

Definition at line 78 of file track3.cpp.

◆ borderStyle

int borderStyle[2]
static

Definition at line 77 of file track3.cpp.

◆ borderSurface

tTrackSurface* borderSurface[2]
static

Definition at line 79 of file track3.cpp.

◆ borderWidth

tdble borderWidth[2]
static

Definition at line 75 of file track3.cpp.

◆ envIndex

int envIndex
static

Definition at line 73 of file track3.cpp.

◆ GlobalStepLen

tdble GlobalStepLen = 0
static

Definition at line 87 of file track3.cpp.

◆ KeyBarrierHeight

const char* KeyBarrierHeight[2] = {TRK_ATT_RBAH, TRK_ATT_LBAH}
static

Definition at line 61 of file track3.cpp.

◆ KeyBarrierStyle

const char* KeyBarrierStyle[2] = {TRK_ATT_RBAS, TRK_ATT_LBAS}
static

Definition at line 60 of file track3.cpp.

◆ KeyBarrierSurface

const char* KeyBarrierSurface[2] = {TRK_ATT_RBASURF, TRK_ATT_LBASURF}
static

Definition at line 58 of file track3.cpp.

◆ KeyBarrierWidth

const char* KeyBarrierWidth[2] = {TRK_ATT_RBAW, TRK_ATT_LBAW}
static

Definition at line 59 of file track3.cpp.

◆ KeyBorderHeight

const char* KeyBorderHeight[2] = {TRK_ATT_RBH, TRK_ATT_LBH}
static

Definition at line 56 of file track3.cpp.

◆ KeyBorderStyle

const char* KeyBorderStyle[2] = {TRK_ATT_RBS, TRK_ATT_LBS}
static

Definition at line 55 of file track3.cpp.

◆ KeyBorderSurface

const char* KeyBorderSurface[2] = {TRK_ATT_RBSURF, TRK_ATT_LBSURF}
static

Definition at line 53 of file track3.cpp.

◆ KeyBorderWidth

const char* KeyBorderWidth[2] = {TRK_ATT_RBW, TRK_ATT_LBW}
static

Definition at line 54 of file track3.cpp.

◆ KeySideBankType

const char* KeySideBankType[2] = {TRK_ATT_RST, TRK_ATT_LST}
static

Definition at line 51 of file track3.cpp.

◆ KeySideEndWidth

const char* KeySideEndWidth[2] = {TRK_ATT_RSWE, TRK_ATT_LSWE}
static

Definition at line 50 of file track3.cpp.

◆ KeySideStartWidth

const char* KeySideStartWidth[2] = {TRK_ATT_RSWS, TRK_ATT_LSWS}
static

Definition at line 49 of file track3.cpp.

◆ KeySideSurface

const char* KeySideSurface[2] = {TRK_ATT_RSSURF, TRK_ATT_LSSURF}
static

Definition at line 47 of file track3.cpp.

◆ KeySideWidth

const char* KeySideWidth[2] = {TRK_ATT_RSW, TRK_ATT_LSW}
static

Definition at line 48 of file track3.cpp.

◆ sideBankType

int sideBankType[2]
static

Definition at line 68 of file track3.cpp.

◆ sideEndWidth

tdble sideEndWidth[2]
static

Definition at line 66 of file track3.cpp.

◆ sideMaterial

const char* sideMaterial[2]
static

Definition at line 69 of file track3.cpp.

◆ sideStartWidth

tdble sideStartWidth[2]
static

Definition at line 67 of file track3.cpp.

◆ sideSurface

tTrackSurface* sideSurface[2]
static

Definition at line 70 of file track3.cpp.

◆ ValStyle

const char* ValStyle[4] = {TRK_VAL_PLAN, TRK_VAL_WALL, TRK_VAL_CURB, TRK_VAL_FENCE}
static

Definition at line 63 of file track3.cpp.

◆ xmax

tdble xmax
static

Definition at line 30 of file track3.cpp.

◆ xmin

tdble xmin
static

Definition at line 30 of file track3.cpp.

◆ ymax

tdble ymax
static

Definition at line 30 of file track3.cpp.

◆ ymin

tdble ymin
static

Definition at line 30 of file track3.cpp.

◆ zmax

tdble zmax
static

Definition at line 30 of file track3.cpp.

◆ zmin

tdble zmin
static

Definition at line 30 of file track3.cpp.