ayuda visual basic c++ ..

Iniciado por vichp71, 23 Junio 2007, 03:48 AM

0 Miembros y 2 Visitantes están viendo este tema.

vichp71

Es primera ves que escribo en este foro y en realidad es el primero en el que lo hago..veo muchos monitos y cosas que me desorientan un poco.......!! je
    Bueno hace tiempo que leo en el foro y por eso no he dudado en escribir mi inquetud.. estoy seguro que la gente  con dudas como yo tienen un espacio en este grupo de personas..
....ahora que me he presentado quiero plantear mi dudita.
    Hace muy poco tiempo estoy estudiando programacion..en C. Primero fui con turbo c y luego con dev c++ en el que estoy ahora.. muy poco se de programacion y estoy estudiando los algoritmos mas faciles.. hace poco cruce la puerta del "hola mundo" y por esto mismo mis dudas son muy elementales para muchos..  Hoy  buscando informacion de este tema me tope con una pag creado por un joven igual que yo que tiene como fin ..emm... muchas cosas en relacion a C.  entre ellas bibliotecas para crear figuras en 3D y bueno esto me gusto mucho.. por suerte tenia tenia escrito el programa en codigo fuente y lo descarge obvio!. este chico programo en visual basic y yo abri el codigo en dev c++. por cosas que no se y suponiendo que el codigo esta bien escrito el compilador me encontro varios errores.. que yo al ser principiante no puedo arreglar.. mi pregunta es esta: ¿ los errores que me arroja el compilador de dev c++ sera causa que el programa fuente esta escrito en visual basic y si la libreria tiene relacion con este problemita.. no si abro el codigo en visual basic y lo compilo alomejor no me arroja algun error.. lo otro..donde puedo descargar visual basic?? je.je
Gracias y perdon por la ortografia

Sancho.Mazorka

Hay veces que un compilador te va a tirar error con un codigo fuente porque la compatibilidad no esta, o uno lo hizo de una forma y otro de otra, entonces el compilador tira error, mira no podes intentar compilar codigo de C++ con el Visual Basic, ni viceversa, cada lenguaje tiene un compilador propio para ello, aunque existan varias versiones y tipos.

NOTA: Corrijanme si me equivoco

Sancho.Mazorka    :¬¬
Ganador Xeon Web Server ! ! !    Sancho.Mazorka :D
http://foro.elhacker.net/index.php/topic,171903.75.html



vichp71

Gracias por la atencion.. de verdad..

~~

Efectivamente dentro de lo q es la programacion en C hay distintos tipos de comppiladores y algunos te permiten algunas cosas q otros no lo hacen, pero por lo normal suelen ser bastante compatibles.

En VB no pasa eso, por q todo el mundo usa el mismo xDD

vichp71 pon un trozo del source q te bajaste y te digo si está en C o en VB ;)

vichp71

void main() {
  register unsigned int a;
  int i,j;
  unsigned char pl[3];
  float D1,D2;
  int color;

  // Inicialitza el mode 13h:
  InitMode(0x13);

  // Mostra la paletta per defecte:
  WaitRetrace();         // Abans de dibuixar en pantalla hem d'esperar un retraçat vertical.
  for(i=0;i<256;i++) {
    for(j=0;j<200;j++) {
      vd[j*320+i]=i;      // Dibuixa un punt de color 'i' en la coordenada (i,j)
    }
  }
  getch();                // Espera a que apreti una tecla l'usuari.

  // Esborra la pantalla:
  WaitRetrace();
  for(a=0;a<64000U;a++) {
    vd[a]=0;
  }

  // Paleta negra:
  for(i=0;i<256;i++) {
    pal
  • =0;         // Vermell
        pal[1]=0;         // Verd
        pal[2]=0;         // Blau
      }
      WaitRetrace();
      FastSetVGAPalette();

      // Dibuixa linies per a l'animació de paleta:
      for(i=0;i<320;i++) {
        for(j=0;j<190;j++) {
          vd[j*320+i]=50+(40*sin((float)(i+j+random(2))/10.0));
        }
      }

      // Barra inferior:
      for(a=0;a<320;a++) {
        for(j=190;j<200;j++) {
          color=((a<<7)/160)+random(5)-2;
          if(color>255) color=255;
          if(color<1) color=1;
          vd[j*320+a]=color;
        }
      }
      // Nota: el numero aleatori que se li suma suavitza la imatge (difumina).

      // Modifiquem la paletta:
      // Nota: Les intensitats de color RGB van de 0 a 63.
      for(i=0;i<128;i++) {
        pal
    • =0;         // Vermell
          pal[1]=i>>3;         // Verd
          pal[2]=i>>1;      // Blau

          pal[255-i][0]=0;         // Vermell
          pal[255-i][1]=i>>3;         // Verd
          pal[255-i][2]=i>>1;      // Blau
        }
        WaitRetrace();
        FastSetVGAPalette();

        // Animació per rotació de paletta:
        do {
          pl[0]=pal[255][0];
          pl[1]=pal[255][1];
          pl[2]=pal[255][2];
          for(i=255;i>1;i--) {
            pal
      • =pal[i-1][0];
              pal[1]=pal[i-1][1];
              pal[2]=pal[i-1][2];
            }
            pal[1][0]=pl[0];
            pal[1][1]=pl[1];
            pal[1][2]=pl[2];

            WaitRetrace();      // A mes a mes d'evitar les pampallugues, controla la velocitat de l'animació
            FastSetVGAPalette();
          } while(!kbhit());
          getch();

          // Esborra la pantalla:
          WaitRetrace();
          fclrscr();

          // ANIMACIó 3D amb linies (no esta gens optimitzada, utilitza coma flotant):
          // Com que nomes es dibuixen els vertex del cub, l'ull pot interpretar l'imatge
          // de dues maneres diferents, aixo provoca que a vegades no veiem un cub a la
          // pantalla. Es pot intentar solucionar tancant els ulls i tornant a mirar la
          // figura en pantalla.

          /* Taula de sinus i cosinus. Accelera els calculs de la rotació */
          for(i=0;i<256;i++) {
            sinus=sin(((float)i*M_PI)/128.0);
            cosinus=cos(((float)i*M_PI)/128.0);
          }

          AngX=AngY=AngZ=0;
          CentreX=0;
          CentreY=0;
          CentreZ=100;

          // Coordenades relatives al centre de l'objecte:
          RPt[0].X=-20;
          RPt[0].Y=20;
          RPt[0].Z=-20;
          RPt[1].X=20;
          RPt[1].Y=20;
          RPt[1].Z=-20;
          RPt[2].X=20;
          RPt[2].Y=20;
          RPt[2].Z=20;
          RPt[3].X=-20;
          RPt[3].Y=20;
          RPt[3].Z=20;
          RPt[4].X=-20;
          RPt[4].Y=-20;
          RPt[4].Z=-20;
          RPt[5].X=20;
          RPt[5].Y=-20;
          RPt[5].Z=-20;
          RPt[6].X=20;
          RPt[6].Y=-20;
          RPt[6].Z=20;
          RPt[7].X=-20;
          RPt[7].Y=-20;
          RPt[7].Z=20;

          SetVGAColor(252,20,20,20);
          SetVGAColor(253,0,0,63);
          SetVGAColor(254,0,63,0);
          SetVGAColor(255,63,0,0);

          do {
            // Incrementa l'angle de rotació:
            AngX+=INC_ANGLE;
            AngY+=INC_ANGLE;
            AngZ+=INC_ANGLE;

            /* Rotar l'Objecte: */
            for(i=0;i<8;i++) {
              Pt.X=RPt.X;
              Pt.Y=RPt.Y;
              Pt.Z=RPt.Z;

              // Utilitza matrius de rotació:
              // Rotar Y-Z
              D1=Pt.Y;
              D2=Pt.Z;
              Pt.Y=cosinus[AngX&0xFF]*D1+sinus[AngX&0xFF]*D2;
              Pt.Z=-sinus[AngX&0xFF]*D1+cosinus[AngX&0xFF]*D2;

              // Rotar X-Z
              D1=Pt.X;
              D2=Pt.Z;
              Pt.X=cosinus[AngY&0xFF]*D1-sinus[AngY&0xFF]*D2;
              Pt.Z=sinus[AngY&0xFF]*D1+cosinus[AngY&0xFF]*D2;

              // Rotar Y-X
              D1=Pt.X;
              D2=Pt.Y;
              Pt.X=cosinus[AngZ&0xFF]*D1+sinus[AngZ&0xFF]*D2;
              Pt.Y=-sinus[AngZ&0xFF]*D1+cosinus[AngZ&0xFF]*D2;

              Pt.X+=CentreX;
              Pt.Y+=CentreY;
              Pt.Z+=CentreZ;
            }

            // Projecta els punts 3D en pantalla:
            for(i=0;i<8;i++) {
              Scr.X=160+K3D*(Pt.X/Pt.Z);
              Scr.Y=100+K3D*(Pt.Y/Pt.Z);
            }

            // DIBUIXA EN PANTALLA:
            WaitRetrace();
            for(a=19840;a<44160;a++) {
              vd[a]=0;
            }
            for(i=0;i<8;i++) {
              for(j=i+1;j<8;j++) {
                fline(Scr.X,Scr.Y,Scr[j].X,Scr[j].Y,252);
              }
            }
            for(i=0;i<4;i++) {
              fline(Scr.X,Scr.Y,Scr[(i+1)&0x03].X,Scr[(i+1)&0x03].Y,253);
              fline(Scr[i+4].X,Scr[i+4].Y,Scr[((i+1)&0x03)+4].X,Scr[((i+1)&0x03)+4].Y,254);
              fline(Scr.X,Scr.Y,Scr[i+4].X,Scr[i+4].Y,255);
            }
            //WaitRetrace();
          } while(!kbhit());
          getch();

          // Torna al mode text:
          ModeText();

          printf("DEMO MODE 13h. Ver. 1.0\t\t\t\tRoger Vilaseca\n");
        }   [/color] 
          este seria uno .... muy buena respuesta.. y si me sacas de esta duda de verdad que me va a ayudar mucho...

wow que complicado ami no me sacas de vb6.0 ni de java applet :P

jejeje es un chiste local
jajajaja xD ya no me puedo cambiar el nick no me deja el deste como admin del perfil xD

~~

Man, eso está escrito en C... Y por lo q e leido lo q hace ese programa es dibujar puntos y figuras sobre la ventana a modo de ejemplo supongo.
Mira a ver si para ello el autor del code utiliza alguna libreria especial y se la linkeas al compilador..

Ademas en la cabecera te falta incluir todas las librerias.. Yo asi en un primer vistazo veo q  falta la stdio, asi q pon en la cabecera:

#include <stdio.h>

Y seguramente falten unas cuantas mas.... un consejo, leete algun tuto basico de C y haz un buen numero de programas antes de meterte con la creacion de juegos  ;)

Hans el Topo

me da que ese code es alguno de los de oswaldo varea y tal xD

si es de ése bajate los de vb6 si es que conoces el lenguaje... y si no pos aprende a andar antes de correr...
 

Freeze.

Nunk podras ver compilar en visual basic algo q esta escrito en C o otro lenguaje

Digo lo mismo:

Corriganme si me equivoco :P

Exacto freeze eso ni se discute c++ es una cosa y vb otra,
Y el titulo ese de visual basic c++, eso ni siquiera existe
jajajaja xD ya no me puedo cambiar el nick no me deja el deste como admin del perfil xD