Exemplo n.º 1
0
static void translate_robot(struct Vertex position)
{
    printf("%s: translate to %f %f\n", __func__, position.x,
                                                 position.y);

    translate_object(position);
}
Exemplo n.º 2
0
Arquivo: object.c Projeto: AmkG/Orb
Orb_t Orb_deref_nopropobj(Orb_t obj, Orb_t field, Orb_t* p) {
    Orb_t* a;
    Orb_t* format;
    size_t numfields;
    Orb_t parent;
    int found;
    size_t index;

    *p = Orb_NOTFOUND;

top:
    obj = translate_object(obj);
    if(Orb_t_is_propertyfunction(obj)) {
        /*property-function*/
        Orb_t* innerfunc = Orb_t_as_pointer(obj);
        *p = innerfunc[0];
        return Orb_NOTFOUND;
    }
    a = Orb_t_as_pointer(obj);
    format = Orb_t_as_pointer(a[0]);
    numfields = Orb_t_as_integer(format[0]);
    index = binsearchfields(&format[1], numfields, field, &found);
    if(found) {
        return a[1+index];
    }
    parent = format[numfields+1];
    if(parent == Orb_NOTFOUND) return Orb_NOTFOUND;
    obj = parent;
    goto top;
}
Exemplo n.º 3
0
int main()
{
   clock_t t;
   long fr;

   for (int k=0; k<64000; k++) back[k] = back[k] / 7;

   srand(666);
   if (!add_stars()) { printf("err\n"); exit(1); }

	open_vid();
//   set_mode(0x13);
//   for (int i=0; i<256; i++) set_col(i, i/12, i/8, i/4);

   translate_object(stars, 0.0, 0.0, 2.0);

   fr = 0;
   t = clock();
	while (!ptc_console_key(console))
   {
//      memfill_d((long)screen, 16000, 0);
//      memcopy_d((long)back, (long)screen, 16000);
	memcpy(screen, back, 64000);
//      memset(screen, 0, 64000);
      rotate_object_local(stars);
      cast_object(stars);
      vis_object(stars);
      render_object(stars);
      alfa();
//      memcpy((char *)0xA0000, old_screen, 64000);
//      memcopy_d((long)old_screen, 0xA0000, 16000);
	show(old_screen);

      rotate_object(stars, 9, 9, 9);
      fr++;
   }
   t = clock() - t;
//   getch();

	close_vid();
//   set_mode(3);
   printf("f/s = %f\n", ((float)fr * CLOCKS_PER_SEC / (float)t));
   return 0;
}