Imported Upstream version 4.6.0
[debian/atlc] / src / non_gui / create_bmp_for_circ_in_rect.c
1 /* atlc - arbitrary transmission line calculator, for the analysis of
2 transmission lines are directional couplers. 
3
4 Copyright (C) 2002. Dr. David Kirkby, PhD (G8WRB).
5
6 This program is free software; you can redistribute it and/or
7 modify it under the terms of the GNU General Public License
8 as published by the Free Software Foundation; either package_version 2
9 of the License, or (at your option) any later package_version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
19 USA.
20
21 Dr. David Kirkby, e-mail drkirkby at ntlworld.com 
22
23 */
24
25 /* The program create_bmp_for_rect_in_rect is a pre-processor for atlc. It produces bitmaps of rectangular
26 inner and rectangular outer */
27 #include "config.h"
28
29
30 #ifdef HAVE_STDLIB_H
31 #include <stdlib.h>
32 #endif  
33
34 #include "definitions.h"
35 #include "exit_codes.h"
36
37 #ifdef WINDOWS
38 #pragma hrdstop
39 #include <condefs.h>
40 #endif
41
42 double  dd, WW, HH, xx, yy, Er1;
43 int d, W, H, x, y;
44
45 /* The following are only needed, so I can link in two  
46 convert_circ_in_circ_dimensions_to_integers.c
47 and
48 convert_create_bmp_for_rect_in_rect_dimensions_to_integers.c
49 */
50
51 double Er2;
52
53 int verbose=FALSE;
54 int lowest=2500, highest=10000;
55 int fileflag=FALSE;
56
57
58 extern int main(int argc, char **argv) /* Read parameters from command line here   */
59 {
60    int  bmp_size=DEFAULT_BMP_SIZE;
61    int q;
62    struct transmission_line_properties not_used;
63    FILE *image_data_fp=stdout;
64    
65    /* The following just keeps the compiler happy, as not_used is 
66    not used in this case */
67    not_used.W=1;
68
69    while((q=get_options(argc,argv,"b:v")) != -1)
70    switch (q) 
71    {
72       case 'b':
73       bmp_size=atol(my_optarg); 
74       break;
75       case 'v':
76       verbose=TRUE; 
77       break;
78       case '?':
79       printf("read a ? exiting\n");
80    }
81    if(argc-my_optind ==7)
82    {
83       dd=atof(argv[my_optind]);
84       WW=atof(argv[my_optind+1]);
85       HH=atof(argv[my_optind+2]);
86       xx=atof(argv[my_optind+3]);
87       yy=atof(argv[my_optind+4]);
88       Er1=atof(argv[my_optind+5]);
89       if((image_data_fp=fopen(argv[my_optind+6],"wb"))==NULL)
90         exit_with_msg_and_exit_code("Can't open file in create_bmp_for_circ_in_rect.c",CANT_OPEN_FOR_WRITING);
91       check_parameters_of_create_bmp_for_circ_in_rect();
92       convert_create_bmp_for_circ_in_rect_dimensions_to_integers(bmp_size);
93       write_bitmap(image_data_fp, not_used);
94    }
95    else
96       usage_create_bmp_for_circ_in_rect();
97    return(0);
98 }