// (Log is kept at end of this file)
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
#include <ctype.h> // isspace()
+#include <stdlib.h> // atoi()
#include <math.h> // rint()
#include <stdio.h>
-#include <stdlib.h> // atoi()
#include <string.h>
#include <sys/stat.h> // stat()
#include <unistd.h> // stat()
// read and parse DEM "A" record
-void fgDEM::read_a_record( void ) {
+int fgDEM::read_a_record( void ) {
int i, inum;
double dnum;
char name[144];
inum = next_int(fd);
printf(" DEM level code = %d\n", inum);
+ if ( inum > 3 ) {
+ return(0);
+ }
+
// Pattern code, 1 indicates a regular elevation pattern
inum = next_int(fd);
printf(" Pattern code = %d\n", inum);
// number of profiles
dem_num_profiles = cols = next_int(fd);
printf(" Expecting %d profiles\n", dem_num_profiles);
+
+ return(1);
}
int fgDEM::parse( void ) {
int i;
- cur_row = 0;
+ cur_col = 0;
- read_a_record();
+ if ( !read_a_record() ) {
+ return(0);
+ }
for ( i = 0; i < dem_num_profiles; i++ ) {
// printf("Ready to read next b record\n");
printf(" Done parsing\n");
- return(0);
+ return(1);
}
// Use least squares to fit a simpler data set to dem data
-void fgDEM::fit( char *fg_root, double error, struct fgBUCKET *p ) {
+void fgDEM::fit( double error, fgBUCKET *p ) {
double x[DEM_SIZE_1], y[DEM_SIZE_1];
double m, b, ave_error, max_error;
double cury, lasty;
// printf("Please hit return: "); gets(junk);
}
- outputmesh_output_nodes(fg_root, p);
+ // outputmesh_output_nodes(fg_root, p);
}
// Write out a node file that can be used by the "triangle" program
-void fgDEM::outputmesh_output_nodes( char *fg_root, struct fgBUCKET *p ) {
+void fgDEM::outputmesh_output_nodes( char *fg_root, fgBUCKET *p ) {
struct stat stat_buf;
char base_path[256], dir[256], file[256];
#ifdef WIN32
fgDEM::~fgDEM( void ) {
// printf("class fgDEM DEstructor called.\n");
+ free(dem_data);
+ free(output_data);
}
// $Log$
+// Revision 1.10 1998/07/13 20:58:02 curt
+// .
+//
+// Revision 1.9 1998/07/13 15:29:49 curt
+// Added #ifdef HAVE_CONFIG_H
+//
+// Revision 1.8 1998/07/04 00:47:18 curt
+// typedef'd struct fgBUCKET.
+//
+// Revision 1.7 1998/06/05 18:14:39 curt
+// Abort out early when reading the "A" record if it doesn't look like
+// a proper DEM file.
+//
+// Revision 1.6 1998/05/02 01:49:21 curt
+// Fixed a bug where the wrong variable was being initialized.
+//
// Revision 1.5 1998/04/25 15:00:32 curt
// Changed "r" to "rb" in gzopen() options. This fixes bad behavior in win32.
//