Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Konsola + Allegro

Ostatnio zmodyfikowano 2010-10-21 22:59
Autor Wiadomość
m_zap
Temat założony przez niniejszego użytkownika
Konsola + Allegro
» 2010-10-21 13:27:00
Siemka mam problem nie chce mi się grzebac w GIU za bardzo dlatego postanowiłem ze bedę przekazywał wszystko z konsoli program dużo się nie zmienił ale niestety po kompilacji i uruchomieniu program odpala konsole po czym tworzy okienko i zaraz po utworzeniu się wysypuje wyskakuje strona z błędami cos tam coś tam zamknij program :) co to może być nie tak?

to jest funkcja :

#include <allegro.h>
int jasnosc ;
 PALETTE pal;
void jas(BITMAP * obrazek, int jasnosc)
{
   get_palette(pal);
    int x,y, r, g, b, rgb;
   BITMAP *obrazek2 = NULL;
   inicjalizacja();
    for(x = 0; x < obrazek->w; x++ )
    {
        for( y = 0; y < obrazek->h; y++ )
        {
            rgb = getpixel(obrazek, x, y );
            r = getr( rgb );
            g = getg( rgb );
            b = getb( rgb );
          
            r += jasnosc;
            if (r > 255) {r = 255;}
            g += jasnosc;
            if (g > 255) {g = 255;}
            b += jasnosc;
            if (b > 255) {b = 255;}
            putpixel(obrazek2, x, y, makecol( r, g, b ) );
            blit(obrazek2, screen, 0,0, 400,10, obrazek->w, obrazek->h);
            
           
        }
         
    }
    while(!key[KEY_ESC]){
    textout_ex(screen,font,"Zapisac T/N: ",400,320 ,makecol(0,0,0),-1);
    if(key[KEY_T]) {
               textout_ex(screen,font,"T",500,320 ,makecol(0,0,0),-1);
           save_bmp("tmp_jasnosc.bmp", obrazek2,pal);
   textout_ex(screen,font,"Zapisano.",400,330 ,makecol(0,0,0),-1);
  
}
if (key[KEY_N]) {
                  textout_ex(screen,font,"Obraz",400,330 ,makecol(0,0,0),-1);
                 
                }}
}

a tu main:

#include <allegro.h>
#include <stdio.h>
#include <stdlib.h>

int kolorR ;
int kolorG ;
int kolorB ;
int jasnosc ;
double kontrast;
int znak =0;
PALETTE pal;
//int tmp_jasnosc;
int ret;
BITMAP *obrazek = NULL;







int main()
{
  jas(obrazek,10);
  readkey();
  zakonczenie();
  system("PAUSE");
  return 0;
}
END_OF_MAIN();
P-23098
m_zap
Temat założony przez niniejszego użytkownika
» 2010-10-21 14:33:10
Problem rozwiązałem brakowało w procedurze

BITMAP *obrazek;
  obrazek = load_bmp("obrazek.bmp",default_palette);

troche mi to "usztywnia" program ale to nie problem ale teraz mam inny problem a nie chce dodawac nowego tematu. Ogolnie chodzi o to ze jak wywołuje sobie procdurę która ma tam kombinowac z obrazkiem to wszystko ładnie działa uruchamia się okienko i widac proces np.rozjasniania a gdy chce to przez manu zrobic to program się od razu wywala moja funkcja Manu

#include <stdio.h>
#include <stdlib.h>
#include <allegro.h>
int a;
void menu(){
     printf("Korektor obrazow bitmapowych");
     printf("\nOpcje: ");
     printf("\n1:Jasnosc");
     printf("\n2:Kontrast");
     printf("\n3:Gamma");
     printf("\n4:Progowanie");
     printf("\n5:Magiczna rozdzka");
     printf("\nWybor: ");
     scanf("%f",a);
     switch(a){
               case 1: jas(100);
               case 2: kontr(1.5);
               case 3: gam(2);
               case 4: binaryzacja();
               }
             
     }
 
i main

#include <allegro.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
  menu();
 //jas(100);<----- gdy tak uruchomię to działa wszystko
     }

END_OF_MAIN();
P-23099
F90M
» 2010-10-21 15:00:55
Nie powinno być tak?
C/C++
scanf( "%d", a ); //w końcu a jest typu int
switch( a ) {
case 1: jas( 100 );
    break;
case 2: kontr( 1.5 );
    break;
case 3: gam( 2 );
    break;
case 4: binaryzacja();
    break;
}
P-23100
m_zap
Temat założony przez niniejszego użytkownika
» 2010-10-21 15:05:53
switch(a){
               case 1: jas(100);
               break;
               case 2: kontr(1.5);
               break;
               case 3: gam(2);
               break;
               case 4: binaryzacja();
               break;
               }
             

to nic nie pomaga a funckje są dobre skoro bez Manu się uruchamiają

%d tez nic nie daje:(
P-23101
ison
» 2010-10-21 15:16:15
1) używaj src="C++" po code: [code src="C++"]
2) co to jest "Manu"?
3) twój pierwszy kod się nie kompiluje...
P-23102
m_zap
Temat założony przez niniejszego użytkownika
» 2010-10-21 16:03:54
używaj scr=c++ czyli ze w linkerze? no nie bo nie wszystkie funkcje tam wrzuciłem
manu = menu literowka :P
P-23104
ison
» 2010-10-21 16:05:32
@up zamiast [code][/code] przy wstawianiu kodu na forum pisz [code src="C++"][/code]
P-23105
m_zap
Temat założony przez niniejszego użytkownika
» 2010-10-21 16:30:26
a ok sry ale tak teraz do sedna jak myślicie co to może byc? funckja wywołana na sztywno w mainie działa a wywołana z menu już nie a wywołana jest z takimi samymi parametrami.
P-23106
« 1 » 2
  Strona 1 z 2 Następna strona