]> git.mxchange.org Git - flightgear.git/blob - FixNode/triload.cxx
3986780acfb4ec1d493f912e42d11a1eb1e416f5
[flightgear.git] / FixNode / triload.cxx
1 // triload.cxx -- read in a .node file and fix the z values of the 
2 //                interpolated points
3 //
4 // Written by Curtis Olson, started November 1997.
5 //
6 // Copyright (C) 1997 - 1998  Curtis L. Olson  - curt@me.umn.edu
7 //
8 // This program is free software; you can redistribute it and/or modify
9 // it under the terms of the GNU General Public License as published by
10 // the Free Software Foundation; either version 2 of the License, or
11 // (at your option) any later version.
12 //
13 // This program is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 // GNU General Public License for more details.
17 //
18 // You should have received a copy of the GNU General Public License
19 // along with this program; if not, write to the Free Software
20 // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 //
22 // $Id$
23 // (Log is kept at end of this file)
24
25
26 #include <stdio.h>
27 #include <string.h>
28
29 #include "triload.hxx"
30
31
32 int nodecount;
33
34
35 // load the node information
36 void triload(char *filename, double nodes[MAX_NODES][3]) {
37     FILE *node;
38     int dim, junk1, junk2;
39     int i;
40
41     printf("Loading node file:  %s ...\n", filename);
42     if ( (node = fopen(filename, "r")) == NULL ) {
43         printf("Cannot open file '%s'\n", filename);
44         exit(-1);
45     }
46
47     fscanf(node, "%d %d %d %d", &nodecount, &dim, &junk1, &junk2);
48
49     if ( nodecount > MAX_NODES - 1 ) {
50         printf("Error, too many nodes, need to increase array size\n");
51         exit(-1);
52     } else {
53         printf("    Expecting %d nodes\n", nodecount);
54     }
55
56     for ( i = 1; i <= nodecount; i++ ) {
57         fscanf(node, "%d %lf %lf %lf %d\n", &junk1, 
58                &nodes[i][0], &nodes[i][1], &nodes[i][2], &junk2);
59         // printf("%d %.2f %.2f %.2f\n", junk1, nodes[i][0], nodes[i][1], 
60         // nodes[i][2]);
61     }
62
63     fclose(node);
64 }
65
66
67 // $Log$
68 // Revision 1.1  1998/04/08 23:05:58  curt
69 // Adopted Gnu automake/autoconf system.
70 //
71 // Revision 1.3  1998/03/03 16:00:59  curt
72 // More c++ compile tweaks.
73 //
74 // Revision 1.2  1998/01/09 23:03:09  curt
75 // Restructured to split 1deg x 1deg dem's into 64 subsections.
76 //
77 // Revision 1.1  1997/11/27 00:17:35  curt
78 // Initial revision.
79 //