PIPS
elarg_test.c File Reference
#include <stdio.h>
#include <string.h>
#include "boolean.h"
#include "vecteur.h"
#include "contrainte.h"
#include "sc.h"
#include "ray_dte.h"
#include "sommet.h"
#include "sg.h"
#include "polyedre.h"
+ Include dependency graph for elarg_test.c:

Go to the source code of this file.

Functions

 main (int argc, argv)
 test du calcul de l'elargissement de deux polyedres More...
 

Function Documentation

◆ main()

main ( int  argc,
argv   
)

test du calcul de l'elargissement de deux polyedres

Francois Irigoin, Decembre 1989

lecture du premier systeme

lecture du deuxieme systeme

mise de s2 dans la base de s1. On admet que la base de s1 contient la base de s2

conversion en polyedres

Definition at line 48 of file elarg_test.c.

51 {
52  Psysteme s1;
53  Psysteme s2;
54  Ppoly p1;
55  Ppoly p2;
56  Ppoly p_elarg;
57  FILE * f1;
58  FILE * f2;
59 
60  if(argc!=3) {
61  fprintf(stdout,"Usage: %s sc1 sc2\n",argv[0]);
62  exit(1);
63  }
64 
65  if((f1 = fopen(argv[1],"r")) == NULL) {
66  fprintf(stdout,"Ouverture du fichier %s impossible\n",
67  argv[1]);
68  exit(4);
69  }
70 
71  if((f2 = fopen(argv[2],"r")) == NULL) {
72  fprintf(stdout,"Ouverture du fichier %s impossible\n",
73  argv[2]);
74  exit(4);
75  }
76 
77  /* lecture du premier systeme */
78  if(sc_fscan(f1,&s1)) {
79  fprintf(stderr,"syntaxe correcte dans %s\n",argv[1]);
81  }
82  else {
83  fprintf(stderr,"erreur de syntaxe dans %s\n",argv[1]);
84  exit(1);
85  }
86 
87  /* lecture du deuxieme systeme */
88  if(sc_fscan(f2,&s2)) {
89  fprintf(stderr,"syntaxe correcte dans %s\n",argv[2]);
90  sc_fprint(stdout, s2, *variable_default_name);
91  }
92  else {
93  fprintf(stderr,"erreur de syntaxe dans %s\n",argv[2]);
94  exit(2);
95  }
96 
97  /* mise de s2 dans la base de s1. On admet que la base de s1
98  contient la base de s2 */
99  s2 = sc_translate(s2, s1->base, variable_default_name);
100 
101  /* conversion en polyedres */
102  p1 = sc_to_poly(s1);
103  p2 = sc_to_poly(s2);
104 
105  p_elarg = elarg(p1, p2);
106  poly_fprint(stdout, p_elarg, variable_default_name);
107 }
char * variable_default_name(Variable v)
char * variable_default_name(Variable v): returns the name of variable v
Definition: variable.c:81
#define exit(code)
Definition: misc-local.h:54
int f2(int off1, int off2, int w, int n, float r[n], float a[n], float b[n])
Definition: offsets.c:1
Psysteme sc_translate(Psysteme s, Pbase b, char *(*variable_name)())
Psysteme sc_translate(Psysteme s, Pbase b, char * (*variable_name)()): reecriture du systeme s dans l...
Definition: sc.c:99
void sc_fprint(FILE *fp, Psysteme ps, get_variable_name_t nom_var)
void sc_fprint(FILE * f, Psysteme ps, char * (*nom_var)()): cette fonction imprime dans le fichier po...
Definition: sc_io.c:220
bool sc_fscan(FILE *f, Psysteme *ps)
bool sc_fscan(FILE * f, Psysteme * ps): construit un systeme d'inegalites et d'egalites lineaires a p...
Definition: sc_io.c:121
int fprintf()
test sc_min : ce test s'appelle par : programme fichier1.data fichier2.data ...
s1
Definition: set.c:247

References exit, f2(), fprintf(), s1, sc_fprint(), sc_fscan(), sc_translate(), and variable_default_name().

+ Here is the call graph for this function: