NMPB08 Shared Libraries
|
00001 00008 #include "PathStructures.h" 00009 00010 00020 double distance2D(Position2D const* position1, Position2D const* position2) 00021 { 00022 return sqrt(pow(position2->d - position1->d, 2) + pow(position2->z - position1->z, 2)); 00023 } 00024 00034 double distance3D(Position3D const* position1, Position3D const* position2) 00035 { 00036 return sqrt(pow(position2->x - position1->x, 2) + pow(position2->y - position1->y, 2) + pow(position2->z - position1->z, 2)); 00037 } 00038 00048 double GroundDistance(Position3D const* position1, Position3D const* position2) 00049 { 00050 return sqrt(pow(position2->x - position1->x, 2) + pow(position2->y - position1->y, 2)); 00051 } 00052 00062 void FillPlanePosition(ProfilePointNMPB* terrain, ProfilePointNMPB const* source, double cumDistance) 00063 { 00064 // Fill the position2D 00065 terrain->position2D->d = GroundDistance(source->position3D, terrain->position3D) + cumDistance; 00066 terrain->position2D->z = terrain->position3D->z; 00067 }