Skocz do zawartości

Temat został przeniesiony do archiwum

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

raphx

Tryb graficzny C

Rekomendowane odpowiedzi

czesc

Jak sie włacza tryb graficzny w c++?

 

Dodaje bibloteke GRAPHICS.H i co dalej....?

 

mam Borlanda c++ 4.51

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

initgraph(&ster, &tryb, scster);

 

gdzie &ster to rodzaj sterownika

&tryb - tryb grafiki

scster - scieżka do pliku ze sterownikiem.

 

Wszystko jest w helpie

 

Poza tym google...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Jak dodaje biblioteke Graphics.h to mi taki komunikat wyskakuje:

"BGI graphics not supported under Windows".

Jak ustawic zeby wszystko było zgodne?

 

Czyzby w c/c++ tryb graficzny deklarowało sie jak w pascalu?;)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Wiem, że graphics.h działa w dosowym Borlandzie 3.1. A moduł graphics inicjuje się tak jak w pascalu, bo sobie ludzie z Borlanda tak dla uproszczenia wymyślili. Do C jest mnóstwo modułów graficznych (np. allegro).

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

no właśnie... nigdy nie wiedziałem jak w tym borlandzie 3.1 jakąś grafikę stworzyć.... to może dokładniej opiszesz, bo Szu uczy tylko algorytmów a ten drugi niczego nie uczy???? :P

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Poszukaj sobie na google pod hasłem "graphics.h" i poczytaj, przeanalizuj przykłądowe programy itp. Ja też dopiero zaczynam - dzisiaj miałem pierwszy wykład z graphics'a ;)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

dobrze widze "BGI" ? czy to jest tak samo wolne jak w wersji pod Pascalem ?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
dobrze widze "BGI" ? czy to jest tak samo wolne jak w wersji pod Pascalem ?

Niestety. Do tego dochodzi problem z działaniem edytora Borlanda pod WinXP, dlatego programy piszę w Devie i tylko kompiluję w BC. :E

 

I ten swój projekt też robię jednak na graphiksie a nie na allegro, bo nie mam czasu się uczyć tego drugiego ;)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Znacie moze jakas prosta biblioteke graficzna (pod borlanda badz Dev-c++) ktora by działała pod winXpsp2?

Potrzebyje taka zeby były w niej funkcje odpowiadajace paskalowyego:

lineto(x,y);

moveto(x,y);

setcolor(x,y);

outrextXY(); //chyba tak:)

i moze jeszcze jakies style lini i grubosc.

 

Musze za pomoca niej zrobic wykres.

BGI mi nie działa.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
... Do C jest mnóstwo modułów graficznych (np. allegro).

 

:)

Zajrzalem tutaj : http://alleg.sourceforge.net/readme.pl.html

i zauwazylam, ze biblioteka allegro powinna dzialac pod windowsem z kompilatorami borlanda i M$ :)

 

Moze to oznaczeg tylko to ze bedzie szybsza od BGI.

 

Tytaj pojawia sie moje pytanie: Jak wypada jej szybkosc w porownujac z funkcjami winapi 'sluzacymi do rysowania po okienkach' ?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Nie wiem ja wypada porównanie allegro z winapi, jednak jest to szybki moduł, z wieloma partiami pisanymi w asemblerze. Jest on o wiele szybszy od borlandowego graphics'a.

 

A allegro działa w wielu środowiskach. Na stronie jest pełen ich spis.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Zainstalowałem w dev-c++ biblioteke Allegro i SDL'a i mi wyskakuje taki komunikat dla obu:

 

[Linker error] undefined reference to `WinMain@16'

ld returned 1 exit status

 

O co chodzi? Jak to zrobic zeby działało

Zainstalowałem to przy pomocy Narzedzia/Sprawdz czy sa nowe uaktualnieni...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Musisz dodać do linkera dwa parametry.

 

wchodzisz w narzedzia-->opcje kompilatora, zaznaczasz pole przy 'dodaj te polecenia do wiersza polecen konsolidatora' i wpisujesz w polu ponizej parametry: -lalleg -mwindows

 

To dla allegro. Dla SDL'a nie wiem.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

plik -> nowy projekt -> sdl -> ok

i powinien byc utworzony plik, ktory skompiluje sie bez problemu

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

ok dzieki, biblioteki dzialaja juz dobrze.

 

Mam jeszcze takie male pytania:

Jak zrobic zeby dodatkowo otwieralo mi sie okno textowe?

Czy sa w allegro (sdl) gotowe funkcje do rysoania linii?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

/* linia w dowolnym kierunku */
function line( $x1, $y1, $x2, $y2, $color )
{
$deltax = abs($x2 - $x1) + 1;
$deltay = abs($y2 - $y1) + 1;

if( $x2 < $x1 ) $tmpx = -1;
else $tmpx = 1;

if( $y2 < $y1 ) $tmpy = -1;
else $tmpy = 1;


if( $deltay > $deltax )
 {
  $temp = $deltay;
  for( $a = 0; $a < (int)$deltay; $a++ )
{
	 imagesetpixel($obrazek, $x1, $y1, $color ); // wstawienie piksla
	 $temp = $temp - $deltax;
	 if ( $temp <= 0 )
	  {
	   $x1 = $x1 + $tmpx;
	   $temp = $temp + $deltay;
	  }
	 $y1 = $y1 + $tmpy;
	}
 }
else
 {
  $temp = $deltay;
  for( $a = 0; $a < (int)$deltax; $a++ )
{
	imagesetpixel( $obrazek, $x1, $y1, $color ); // wstawienie piksla, putpixel
	$temp = $temp - $deltay;
	 if ( $temp <= 0 )
	  {
	   $y1 = $y1 + $tmpy;
	   $temp = $temp + $deltax;
	  }
	 $x1 = $x1 + $tmpx;
	}
 }
}

przerob z php na c++

 

w sdl piksel mozesz wstawic poprzez:

((unsigned int*)gScreen->pixels)[screenofs] = kolor;

gdzie jako screenofs podajesz offset wzgledem punktu 0,0 (pamietaj, ze ekran to tak naprawde dluga prosta linia)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dzieki wszystkim za wypowiedzi.

Zrezygnowalem z C++ napisałem program w pascalu :)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

  • Tematy

  • Odpowiedzi

    • Cały czas na tym samym kablu jedziesz? A np. wyciągnięcie i ponowne włożenie kabla nie likwiduje problemu?
    • Jak oni te pasty nakładają? Ręcznie czy maszynowo? Bo jak miałem 970 strixa, to po chyba 4-5 latach od kupna uznałem że wymienię pastę, bardziej z ciekawości jak to się robi, niż ze wzrostu temperatur, jak ściągnąłem chłodzenie, to sobie myślę WTF? Pasta tak walnięta jakby ktoś to po kilku głębszych robił, nie wiem ale połówka rdzenia była bez pasty  może to tak miało być, bo wsumie jeden jedyny raz wymieniałem pastę na gpu.
    • Nie ma czegoś takiego... ta zgoda podobno istniała już kilka razy w ciągu kilku miesięcy, a jednak... Obecnie Partia Republikańska w większości to opłacane przez Putina pionki, mniejszość to ta, która chce pomóc Ukrainie. Do tego masz karierowiczów, którzy zrobią wszystko(Johnson, który bez przyzwolenia Trumpa nie kiwnie palcem). Trump jest najważniejszym politykiem po prawej stronie w USA i to on decyduje o kształcie i kierunkach polityki Partii Republikańskiej. Właśnie z tego powodu rozdzielili te pakiety pomocowe, bo okazało się, że część demokratów nie chciała poprzeć pomocy dla Izraela(morderstwa osób cywilnych w Gazie), a tym samym dla Ukrainy i zrobił się kłopot. Teraz pomoc dla Izraela przejdzie, a pomoc dla Ukrainy zostanie uwalona, jeśli w ogóle zostanie poddana pod głosowanie. Reagan przewraca się w grobie, bo jest totalnie niezrozumiałe czym stała się prawica w USA i czyich interesów broni.    Kiedy Russia Today wchodzi za mocno... "Ukraińscy naziści, którzy powinni oddać Rosji część swojego terytorium". Tak wygląda dzisiaj przeciętny Republikanin, który przedstawia narrację i propagandę rosyjską. Przerażające do czego mogą doprowadzić pieniądze i głosowanie na populistów. To pokazuje jak mocne wpływy ma Rosja w USA(ale to już wiadomo oficjalnie po raporcie dotyczącym wyborów i wygranej Trumpa).
    • To już druga osoba bodajże w tym temacie z tym samym modelem i po własnej aplikacji pasty taka duża różnica, gwarancji nie trzeba żegnać jak przyrosty są tak fajne to warto to zrobić, jak jest plomba na którejś śrubie to można zamówić i nakleić jeżeli np suszarka + żyletka nie dały rady lub w ogóle ktoś robi dziurę w plombie od razu  Chwile temu zamawiałem z alledrogo do xfx https://allegro.pl/oferta/5x-naklejki-gwarancyjne-asus-msi-palit-xfx-evga-gigabyte-zotac-15362612792
    • Dane CFM z opakowań producentów nie można porównywać między nimi, a najlepiej kompletnie na te dane nie patrzeć. Nie dość, że nie ma żadnego ogólne standardu względem którego dokonywane są te pomiary, więc każdy producent mierzy jak uważa, to dodatkowo zarówno te dotyczące przepływu jak i ciśnienia są dokonywane przy skrajnych i nierealnych sytuacjach. Na przykład w przypadku ilości przepchniętego powietrza mogą być stosowane kilkudziesięciocentymetrowe tunele z "prostownikami przepływu" na końcu którego znajduje sie wentylator i po przeciwnej stronie przyrząd do pomiaru, czyli coś czego nikt w domowym komputerze nie zastosuje przez co taki wynik jest niestosowalny w praktyce dla wentylatora zamontowanego bezpośrednio na radiatorze (czy to od wieży chłodzenia czy układu cieczą) lub kratce obudowy. Zostają tylko praktyczne testy jak np. TechPowerUP czy HWCooling.net lub takie przy stałej metodologii dla wszystkich śmigieł jak np. Cybenetics. W takim przypadku będziesz miał miarodajne wyniki. Nie potrzebujesz takiej przejściówki dopóki gniazdo do którego wpinasz 4 pinową wtyczkę nie jest blokowane plastikiem z boku w którym wtyczka by wystawała (a jeżeli blokuje to możesz próbować tę blokadę usunąć). Rozstaw pinów w wentylatorze 2, 3 i 4 pinowym jest teoretycznie identyczny, bo dwa pierwsze piny to kolejno uziemienie i napięcie, kolejny to pomiar obrotów i ostatni czwarty to pin do sterowania PWM. Wentylator 2 i 3 pin można sterować tylko poprzez zmianę napięcia pracy, a dla wentylatora PWM nie ma teoretycznie znaczenia czy steruje się go sygnałem czy napięciem, tak długo jak jego sama konstrukcja nie przeszkadza w sterowaniu jego obrotami poprzez zmianę napięcia zamiast sygnałem modulacyjnym (jak np. nie powinno się robić w przypadku łożysk magnetycznych jak w wentylatorach Phanteks T30 lub Corsair ML120 czy konstrukcjach Sunona MagLev).
  • Aktywni użytkownicy

×
×
  • Dodaj nową pozycję...