next up previous contents
Next: Predstavitev primitiva z mejami Up: 6.3 Jedro modelirnika Previous: 6.3 Jedro modelirnika

Gradnja primitivov

 

Gradnja primitivov je tesno povezano z vnosom podatkov, ker se funkcije klièejo neposredno (za izgradnjo predstavitve z mejami za kocko se poklièe funkcija, ki to naredi). Potek gradnje primitiva ka¾e slika 6.4. Za vsak primitiv sem v modelirniku napisal dve funkciji in sicer:

   figure1049
Slika 6.4: Potek izgradnje primitiva

Izgradnja primitiva je sestavljeno iz treh korakov:

Izgradnjo kocke kot primitiva ka¾e naslednji del programske kode, vzet iz programske kode modelirnika.

/*\
 *-------------------------------------------------------------------------
 * FUNCTION: CreateCube
 *-------------------------------------------------------------------------
 * DESCRITPION:
 *  Function creates new solid primitive - cube with given name and material
 *
 * RETURN VALUE:
 *  Id number of created cube
 *-------------------------------------------------------------------------
 * CALLS FUNCTIONS:
 *  CreateNewObject(), CreateSolid(), CubeBrep()
 *-------------------------------------------------------------------------
\*/
int 
CreateCube( char *name, char *material, double x, double y, double z,
            double a )
{
  int ID;
  CSG *cube;


  /* create new node in CSG tree */
  cube = CreateNewObject();
  /* create new solid in list of solids */
  ID = CreateSolid( cube, name, material );
  /* create Brep of cube */
  CubeBrep( cube->solid->brep, x, y, z, a );
  return ID;
}





Janez KREK
Fri Jul 5 12:10:59 METDST 1996