Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 204 | chris | 1 | #ifdef _WIN32 |
| 2 | # include <windows.h> |
||
| 3 | #endif |
||
| 4 | #include <math.h> |
||
| 5 | #include <stdio.h> |
||
| 6 | #include <stdlib.h> |
||
| 7 | #include "calib_cparam.h" |
||
| 8 | |||
| 9 | void initLineModel( int *line_num, int *loop_num, |
||
| 10 | int line_mode[LINE_MAX], |
||
| 11 | double inter_coord[LOOP_MAX][LINE_MAX][LINE_MAX][3] ) |
||
| 12 | { |
||
| 13 | int i, j, k; |
||
| 14 | char buf[256]; |
||
| 15 | int hno, vno; |
||
| 16 | double dist1, dist2; |
||
| 17 | |||
| 18 | hno = 7; |
||
| 19 | vno = 9; |
||
| 20 | *loop_num = 5; |
||
| 21 | dist1 = 40.0; |
||
| 22 | dist2 = 100.0; |
||
| 23 | |||
| 24 | printf("Number of horizontal lines (%d): ", hno); |
||
| 25 | fgets(buf, 256, stdin); |
||
| 26 | sscanf( buf, "%d", &hno ); |
||
| 27 | printf("Number of vertical lines (%d): ", vno); |
||
| 28 | fgets(buf, 256, stdin); |
||
| 29 | sscanf( buf, "%d", &vno ); |
||
| 30 | if( hno + vno > LINE_MAX ) { |
||
| 31 | printf("too many lines!!\n"); |
||
| 32 | exit(0); |
||
| 33 | } |
||
| 34 | |||
| 35 | printf("Number of iteration (%d): ", *loop_num); |
||
| 36 | fgets(buf, 256, stdin); |
||
| 37 | sscanf( buf, "%d", loop_num ); |
||
| 38 | if( *loop_num > LOOP_MAX ) { |
||
| 39 | printf("too many iteration!!\n"); |
||
| 40 | exit(0); |
||
| 41 | } |
||
| 42 | |||
| 43 | printf("Distance among lines (%f): ", dist1); |
||
| 44 | fgets(buf, 256, stdin); |
||
| 45 | sscanf( buf, "%lf", &dist1 ); |
||
| 46 | printf("Distance to move (%f): ", dist2); |
||
| 47 | fgets(buf, 256, stdin); |
||
| 48 | sscanf( buf, "%lf", &dist2 ); |
||
| 49 | |||
| 50 | |||
| 51 | *line_num = hno + vno; |
||
| 52 | for( i = 0; i < hno; i++ ) line_mode[i] = L_HORIZONTAL; |
||
| 53 | for( i = 0; i < vno; i++ ) line_mode[i+hno] = L_VERTICAL; |
||
| 54 | |||
| 55 | for( k = 0; k < LOOP_MAX; k++ ) { |
||
| 56 | for( i = 0; i < LINE_MAX; i++ ) { |
||
| 57 | for( j = 0; j < LINE_MAX; j++ ) { |
||
| 58 | inter_coord[k][j][i][0] = -10000.0; |
||
| 59 | inter_coord[k][j][i][1] = -10000.0; |
||
| 60 | inter_coord[k][j][i][2] = -10000.0; |
||
| 61 | } |
||
| 62 | } |
||
| 63 | } |
||
| 64 | |||
| 65 | for( k = 0; k < *loop_num; k++ ) { |
||
| 66 | for( j = 0; j < hno; j++ ) { |
||
| 67 | for( i = 0; i < vno; i++ ) { |
||
| 68 | inter_coord[k][j][i+hno][0] = dist1 * i; |
||
| 69 | inter_coord[k][j][i+hno][1] = dist1 * j; |
||
| 70 | inter_coord[k][j][i+hno][2] = dist2 * k; |
||
| 71 | } |
||
| 72 | } |
||
| 73 | } |
||
| 74 | } |