Wednesday, 17 February 2016


Learn Advance Graphics C/C++ In hindi, Learn Graphics In C/C++



[8]-OUTTEXTXY AND SETTEXTSTYLE

आज के इस Advance Learning Tutorial  में आप graphics मोड में किसी भी string को कैसे print करना है यह सीखेंगे । 

              Graphics mode में किसी भी string को प्रिंट करने के लिए एक function दिया गया है जिसे outtextxy कहते है । 

Prototype :- 

                  outtextxy (int x , int y , "your text here");

Note-: यह function केवल graphics mode पर work करता है । 

              int x and y current position को point करता है  तथा यह pixel form में होता है । 

Example :-

  outtextxy(10 , 10 , "Welcome in advance learning tutorial");

धीयन दें outtextxy character के current font , current direction और current size को use करता है । 

किसी भी text की इन तीनो characteristics को सेट करने के लिए functionsettextstyle() का use करते है । 

Prototype:-


               settextstyle(int font , int direction , int charsize);

settextstyle text के font ,direction एंड char size को set करता है । 

Note :-  

                 इस function को outtextxy function से पहले call करना होता है नहीं तो text पर कोई effect नहीं पड़ेगा और output same ही आएगा । 
                 C++ का graphics system 8x8 के bit mapped font system को support करता है । 

Directions:- 

यह दो तरह की directions को support करता है । 
  1. Horizontal text (left to right )
  2. Vertical text (right to left )
By default direction , horizontal direction होती है । horizontal direction के लिए value zero (0) तथा vertical direction के लिए value one (1) पास करते है । 

Char Size:- 

यह भी एक integer वैल्यू है । आप text की size को 10 times तक बड़ा सकते है । starting value 0 होती है जैसे जैसे आप value बढ़ाते जायेगे फॉण्ट की size बढ़ती जाएगी । 

Example:- 

                               settextstyle(8,0,3);
                               setcolor("YELLOW");
                               outtextxy(150,180,"Programming world");


Advance learning Tutorial में आज के लिए बस इतना ही । आगे हम  कुछ और इंटरेस्टिंग function के बारे में सीखेंगे । और C++ में class and objects के बारे में भी जानेंगे । 






Learn Advance Graphics C/C++ In hindi, Learn Graphics In C/C++

[4]-INTERESTING FUNCTIONS

        C/C++ के इस Advance Learning Tutorial में आज हम आपको कुछ ऐसे functions के बारे में बताने जा रहे है जिनके use से program को और अधिक attractive बनाया जा सकता है ।  यह functions Text और Graphics दोनों modes पर work  करते है ।

          इसीलिए graphics programming शुरू करने से पहले इन functions के बारे में जानना जरूरी है  और उपयोगी भी है । 

          Functions शुरू करने से पहले हम एक interesting character के बारे में बता रहे है । आप सभी ने 'BLINKING' word जरूर सुना होगा। 
जिसका हिंदी में अर्थ जगमगाना होता है । यदि आप भी अपने प्रोग्राम में किसी भी character को screen पर blink कराना चाहते है तो C/C++ में यह भी संभव है । 

         किसी भी character को screen पर blink कराने के लिए C/C++ में एक constant word ' BLINK '  डिफाइन किया गया है । जिसकी हेल्प से आप किसी भी character को screen पर blink करा सकते है । 
     
         BLINK  constant की value 128 होती है । और इसका उपयोग कैसे करना है । यह नीचे दिए गए उदहारण में दिया गया है ।


textcolor( RED + BLINK );
           
            or

textcolor( RED + 128 );      
     धियान रखे की BLINK character TEXT MODE पर केवल textcolor और textbackground functions के साथ ही use होता है । 
अतः केवल BLINK लिखने से कोई फर्क नही पड़ेगा । आप BLINK के इस्थान पर value 128 भी लिख सकते है । यह दोनों तरीको से सही है । 
नीचे उदहारण देखे और इसे try जरूर करे । 

#include <conio.h> 
void main() {
clrscr();

textcolor(RED + BLINK );

cprintf("Welcome In Advance Learning Tutorial\n");

getch(); 
}

       इस प्रोग्राम को चलाने के बाद आपको output में 'Welcome In Advance Learning Tutorial' लाइन blink करते हुई दिखाई देगी । 

 GOTOXY :-

       अब बात करते है एक ऐसे function के बारे में जिसकी मदद से आप cursor को screen पर किसी भी position पर ले जा सकते है । 
       आप सभी पाठको से अनुरोध है की इस function के बारे में अच्छे से समझ ले क्यूंकि यह graphics में program बनाने के लिए उपयोगी होता है । इस function का नाम gotoxy है । और इसका declaration इस तरह है । 

 void gotoxy(int x , int y);     
      यह function दो parameter लेता है  x , y  आप x और y में जो भी value देंगे यह function cursor को उस position पर ले जायेगा । 
     
      धियान रहे की यदि आप invalid coordinate पास करते है तो इस function का use करने का कोई मतलब नही होगा क्यूंकि compiler इसे ignore कर देगा । function का use कैसे करना है इसके लिए उदहारण देखे ।     

नोट :- इस function को use करने से पहले Header File <conio.h > include करना न भूलें । 
#include <conio.h> 
#include <stdio.h>

void main() {

clrscr();

gotoxy(20,12);

printf("Welcome In Advance Learning Tutorial\n");

getch(); 
}
           
     धियान रहे की इस example में हमने cprintf की जगह printf function का use  है । इसी लिए stdio.h header file use की गयी है । gotoxy printf और cprintf दोनों के साथ work करता है।  

DELAY:-

               अब हम आपको एक और महत्वपूर्ण function के बारे में बता रहे है जिसका नाम delay() है  जिसकी मदद से आप program के execution को कुछ समय के लिए suspend कर सकते है । program  के execution को कितने समय के लिए suspend करना है । यह इस function के parameter में पास की गयी वैल्यू पर depend करता है 
Delay function millisecond में वैल्यू लेता है । यानि की यदि आप program को 5 second के लिए suspend करना चाहते है तो function का call इस प्रकार होगा । 

                               delay (5000);

इस line को लिखने के बाद यदि कोई भी line इस line के नीचे लिख दी जाये तो वह line 5 second के बाद  execute होगी क्यंकि program का execution 5 second के लिए ससपेंड कर दिया जायेगा । 

नोट :- function को use करने के पहले header file (DOS.H ) include जरूर करले । 

उदाहरण के लिए program देखे।
#include <conio.h> 
#include <stdio.h>
#include <dos.h>

void main() {

clrscr();

printf("Hello\n");

delay(5000);

printf("Welcome In Advance Learning Tutorial\n");

getch(); 
}


          program को run करने के बाद सबसे पहले output में आपको HELLO दिखाई देगा, इसके 5 second बाद ही अगली लाइन  Welcome in Advance Learning Tutorial print होगी । 

[5]-GRAPHICS BASIC-2

   C/C++ के Advance learning Tutorial में आज हम Graphics  Mode  के बारे में शुरूवात कर रहे है |  पर उसके पहले आपने इस tutorial  से जो कुछ भी सीखा उसका quick review लेना जरूरी है । 


आपने अभी तक सीखा -


  • Graphics  क्या है । 
  • Turbo C  Compiler (Installation) करना । 
  • Text Mode (Works  with coordinate system)
  • Colours in C/C++ 
  • textcolor( ) एंड textbackground ( ) Functions 
  • Blink Keyword 
  • gotoxy (int  x , int  y )
  • Delay 
अगर आपको इन Topics के बारे में जानकारी नहीं है तो आप Previous Chapters पर जाकर इन्हे पढ़ सकते है । 

Graphics Mode - 

                    Graphics Mode में program बनाने के लिए header file "graphics.h" include करना ना भूले Graphics programming करने के लिए यह file जरूरी है । इसके बाद Graphics को initialize करना होता है ।
                      C Language 16 Bit के MS-DOS environment को support करता है । Graphics mode को initialize करने के लिए एक function call करना होता है जिसे "initgraph" कहते है। यँहा हम आपको बोहुत ही सरल तरीके से समझाने की कोशिश कर रहे की initgraph function को कैसे use करना है । सबसे पहले function का prototype देखे । 

                void initgraph (int *graphdriver , int *graphmode , char *pathtodriver );
यह function 3 parameter लेता है । 

  1 )   *graphdriver  - 
                                यह एक integer है जो यह बताता है की graphics driver use किया गया है । 

  2 )  *graphmode - 

                               यह  भी एक integer  value है जो की available graphics driver को detect करके उसके according ही highest resolution का graphics mode initialize करता है । 
 3 ) *pathtodriver -
                              
                              यह उस directory का path है जंहा initgraph function graphics driver को सबसे पहले सर्च करता है ।  यदि graphics driver वंहा नही मिलता तो system उसे current directory में सर्च करता है । 

                       initgraph  function में तीनो parameter की सही वैल्यू को पास करना जरूरी होता है । अन्येथा output unpredictable आता है । 

आगे उदहारण देखे -

int gd  = DETECT , gm ;
initgraph (&gd ,&gm , " ");

                     Graphics मोड को initialize करने की लिए आपको सिर्फ दो लाइन्स ही लिखनी है । यंहा हमने दो integer variable 'gd' और 'gm' बनाये  
है । 

                      धियान दे  DETECT एक enumeration टाइप है जो की proper ग्राफ़िक्स driver को identify करता है तथा उसको लोड करता है । initgraph function me दोनों variable के address को पास करना होता है

                      धियान दे की हमने तीसरे variable की जगह स्पेस दिया है इसका मतलब ये हुआ की अगर आपको ड्राइवर का path नहीं पता है तो आप इसे खाली छोड़ सकते है । compiler path को auto detect कर लेगा ।                                     

                      आज के Advance Learning Tutorial में बस इतना ही, अगर आपको ऊपर बताये गए किसी भी टॉपिक में कोई भी परेशानी हो तो आप अपना प्रश्न पूंछ सकते है । 
                      आगे हम आपको graphics की सहायता से Circle एंड Rectangle कैसे draw करना है यह सीखेंगे । 


[6]-CIRCLE


आज के इस Advance Learning Tutorial में हम Graphics की हेल्प से Circle draw करना सीखेंगे ।

Circle बनाने के लिए हमे दो बाते धीयन रखनी होंगी । 
 1)  Center of the circle.
 2)  Radius of the circle.

C programming में circle draw करने के लिए सबसे पहले graphics.h header file को अपने प्रोग्राम में include करे । 

C में circle draw करने के लिए 1 function दिया गया है जिसका prototype इस तरह है 

void circle (int x, int y, int radius) 

यंहा पर x  एंड y circle के center point है | 

उदाहरण के लिए program देखे । 

#include<graphics.h>
#include<conio.h>

void main()
{
int gd=DETECT,gm;
initgraph(&gd,&gm,"");
circle(100,100,50);
getch();
closegraph();

धीयन रहे की circle function कोई भी value return नहीं करता । 
इसी प्रकार यदि आप circle के अंदर  एक और circle draw करना चाहते है तो circle function को दो बार कॉल कीजिये । लेकिन धीयन रहे की पहले वाले circle की radius दूसरे वाले circle की radius से बड़ी हो और सेंटर दोनों circle का same ही हो । 

                                     circle (100,100,50);
                                     circle (100,100,25); 


Circle function में आप जो भी value पास करते है वह pixel form में होती है । 


आगे सीखे Rectangle in C  Graphics. 


[7]-RECTANGLE



C graphics में rectangle draw करने के लिए सबसे पहले आपको graphics initialize करना होगा और अपने प्रोग्राम में graphics.h फाइल भी include करनी होगी । 

Rectangle draw करने के लिए एक फंक्शन दिया गया है नीचे उसका prototype देखे फिर उसे कैसे use किया जाता है हम आगे  देखते है । 

         void rectangle(int left,int top, int right, int bottom);

rectangle बनाने के लिए आपको इस function में चारो parameter pass करने होंगे पहले दो parameter, left एंड टॉप upper left corner को represent करते है । 

इसी प्रकार right bottom parameter, rectangle के lower right corner को represent करता है । 

उदहारण के लिए program देखे. 

#include<graphics.h>
#include<conio.h>
void main()
{
rectangle(100,100,200,200);
getch();
}

keypoint- rectangle function कोई भी value return नही करता । 

धीयन दे मैंने यंहा पर दो पैरामीटर में 100 ,100 एंड दो parameter में 200,200 लिखा है । 

यदि आप चारो पैरामीटर में same value pass करेंगे तो आपको output में rectangle एक point के आकर का दिखेगा । 

अब हम समझते है की rectangle function में value कैसे पास करनी है ।
यंहा पर में आपको बोहुत ही आसान तरीके से समझाने की कोशिश कर रहे है । समझे - function के parameter में आप जो भी value पास करते है वह एक प्रकार का distance होता है जैसे की मैंने पहले पैरामीटर में 100 पास किया है इसका मतलब यह हुआ की compiler rectangle की left arm बनाने के लिए left से 100 pixel छोर देगा । 

Circle(left, top, right, bottom);

ठीक इसी प्रकार जब हमने Top पर 100 लिखा तो यह top से 100 pixel छोर कर 1 लाइन draw कर देगा । तो अब आप रेक्टेंगल draw सीख गए होंगे । 

 यदि आपको रेक्टेंगल बनाने में कोई भी confusion हो तो आप अपना question comment बॉक्स में post करे । 

Advance learning Tutorial में आज के लिए बस इतना ही । आगे हम कुछ और इंटरेस्टिंग function के बारे में सीखेंगे । 


  








PROGRAMMING WORLD -ADVANCE C/C++ LEARN GRAPHICS PROGRAMMING IN C/C++


[1]-INTRODUCTION:

        C / C + +  के Advance Learning Tutorial में आप सभी का स्वागत है।  इस  Advance learning Tutorial में आप  C / C++ के शानदार Feature "Graphics" के बारे में विस्तार से जानेंगे जिसका use कर के आप अपने C program को और भी interactive बना सकते है ।  

       इस tutorial के माधयम से हम आपको C / C++ के कुछ Advance topics के बारे में बता रहे है । यदि आप C / C++ के basic topics सीखना चाहते है तो हमारे ब्लॉग 
Learn:C/C++ Programming language tutorial in hindi
 से सीख सकते है ।    


What is graphics?

      किसी भी object को Pictorial view में represent करना ही graphics कहलाता है । जिसका use आजकल हर तरह की Application बनाने में किया जा रहा है  इस  Tutorial के माधयम से उन सभी लोगो को Help मिलेगी जो C / C++ में  GUI application बनाने के बारे में सोच रहे है । 

       C / C + + में Graphics programming करने से पहले हम graphics के बारे में थोड़ा और जानेंगे।  C / C++ में graphics की programming हम  TURBO C Compiler पर करेंगे।  
       TURBO C Compiler C / C++ the programming की शुरूआत करने के हिसाब से अच्छा compiler है। 
        यदि आप के पास TURBO C Compiler नही है तो आप नीचे दी गयी LINK से download below कर सकते है। 

                                        FOR WINDOWS XP USERS x86 (32) Bit

       Download की गयी zip या compressed file को आप अपनी selected location पर Extract कर ले । 

       इसके बाद  TC.EXE पर double click कर के  RUN करे। TURBO C Compiler Blue Screen के साथ ओपन हो जायेगा ।  
       Windows 7 के users धेयान दे यदि आपका TURBO C Compiler  half screen में open हो रहा हो तो आप यंहा से download करे। 

                                       FOR WINDOWS 7 USERS x86 (32) Bit 

         Compiler को run करने के बाद आप को इस तरह की screen दिखायी देगी | Program को  type करने के लिए आप New File पर Click करे और  एक नई फाइल आपके सामने ओपन हो जाएगी । 


     C/C++ के Advance learning tutorial में आज के लिए बस इतना ही अब आगे हम C/C++ में MODES के बारे में जानेंगे।


[2]-GRAPHICS-1

      Advance Learning Tutorial को आगे बढ़ाते हुए आज हम C/C++ Graphics  में Modes के बारे में जानेंगे ।
       TURBO  C  Compiler  2 प्रकार के Modes को support करता है ।
पहला TEXT MODE और दूसरा GRAPHICS MODE ।
  
    सबसे पहले हम Text Mode के बारे में बात करेंगे जिसकी हेल्प से भी आप interactive program बना सकते है लेकिन इसमें functions limited होते है ।

TEXT MODE 

    Text Mode Co-Ordinate System पर work करता है कहने का मतलब यह है की Text Mode पर screen row or column के रूप में divide रहती है  by default compiler में Text Mode ही set रहता है इसीलिए आपको कुछ करने की जरूरत नहीं है ।

     Normally Text Mode पर screen 80-columns और 25-rows  के form में divide रहती है ।  यानि की यदि आप किसी भी character को Upper-Left  Corner पर print करना चाहते है तो Coordinate System के according screen पर position (X ,Y) = (0,0) होगी ।

 इसी तरह,

     अब  यदि आप किसी भी Character को screen के Centre में Print करना चाहते है तो 80 - column और 25 rows  के हिसाब से screen पर position (X,Y) = (40,12) हॉगी ।

     यँहा पर X number of Columns  को और Y number of Rows  को represent करता है अब तक तो आप यह समझ गए होंगे की यदि हम X की value में increment करे तो screen पर cursor left-to-right मूव होगा और यदि Y  की वैल्यू में increment  करे तो cursor top-to-bottom मूव होगा ।  इस बात को अच्छे से याद रखे यह graphics में बहुत ही important है ।

     C/C++ के Advance Learning Tutorial में आज के लिए बस इतना ही ।  यदि आपको बताये गए topic  में कोई भी समस्या हो तो आप अपना प्रश्न पूछ सकते है आप चाहे तो discussion site पर भी discuss कर सकते है 

अब आगे हम Text  Mode के कुछ basic functions के बारे में जानेंगे और उनके use से simple program भी बनायेगे ।


[3]-COLORS IN TEXT MODE

      Advance Learning Tutorial में आज हम C/C++ में colours के बारे में जानेंगे । अभी तक आप ने अपने प्रोग्राम में सिर्फ दो colours का use  किया होगा Black एंड White, Black colour Background में और White colour foreground में यानि की करैक्टर को print करने के लिए । 

      By default सारे compilers इन दो कलर्स का  ही use करते है ।मगर यदि आप अपने पसंद के कलर्स से screen पर किसी भी करैक्टर को print करना चाहते है तो यह आप नीचे बताये गए Functions की मदद से कर सकते है । 
      
      धियान रहे की नीचे बताये गए Functions केवल TEXT MODE पर ही चलेंगे ।
      Colours की मदद से आप अपने प्रोग्राम को और भी attractive बना सकते है । 
      C/C++ में total 15 colours define किये गए है । किसी भी colour को use करने के लिए आप उस colour का नाम या फिर उस colour की corresponding value का उपयोग कर सकते है । यह value पहले से ही compiler में डिफाइन की गयी है । 
    
    नीचे दी गयी टेबल में सभी 15 colours और उनकी values दी गयी है ।
  
 
ColorsValues
1. BLACK0
2. BLUE1
3. GREEN2
4. CYAN3
5. RED4
6. MAGENTA5
7. BROWN6
8. LIGHTGRAY7
9. DARKGRAY8
10. LIGHTBLUE9
11. LIGHTGREEN10
12. LIGHTCYAN11
13. LIGHTRED12
14. LIGHTMAGENTA13
15. YELLOW14
16. WHITE15
 

नोट:- Colours को use  करने से पहले एक important Header File <conio.h > को अपने प्रोग्राम में include जरूर कर ले। 

        TEXT  MODE में Colours को अपने प्रोग्राम में use करने के लिए दो Basic Function C/C++ में डिफाइन किये गए है । धियान रखे की यह दोनों Functions भी Conio.h Header  में declared है । इसीलिए आपको यह फाइल include करना अनिर्वाय है । नही तो प्रोग्राम में Error आ जाएगी । 
        1 . textcolor(int color)
        2 . textbackground(int color)

        textcolor (int color):- यह function TEXT MODE में character के colour को सेट करता है । function के parameter में आप उस colour का नाम या corresponding value ( जो की टेबल में शो की गयी है ) को पास करे, जिस colour में आप character को screen पर display या print कराना चाहते है ।
       
       textbackground (int color):-  इस function  की मदद से आप TEXT MODE में character  के background colour को सेट कर सकते है । यह function भी same उसी तरह use होगा , आप जिस colour का background चाहते है उस colour या उसकी value को function के parameter में पास कर दे । इसे समझाने के लिए नीचे example देखे । 


textcolor( RED );
textbackgrond( YELLOW ); 
        
   or 

textcolor( 4 );
textbackgrond( 14 );     

        आप दोनों तरीको में से किसी भी तरीके का use अपने program में कर सकते है। यह दोनों ही same आउटपुट देंगे । 
        नीचे एक program example के लिए दिया गया है । आप इस program को अपने कंप्यूटर पर जरूर चला कर देखे । 
#include <conio.h> 

void main() {

clrscr();

textcolor(YELLOW);

cprintf("Welcome In Advance Learning Tutorial\n");

textcolor(RED);

cprintf("Hello\n");

getch(); 
}

नोट:- ऊपर दिए गए program में धियान देने वाली बात  यह है की यंहा पर "printf"  की जगह "cprintf " function का use किया गया है । 

        यदि आप सिर्फ "printf" function का use करेंगे तो output में character पर colour का कोई प्रभाव नही पड़ेगा , और by default White 
colour का ही print होगा ।
        cprintf  एक console output function है । यह function उन functions के लिए work करता है  जो की screen पर directly text mode  output produce करते है । 

         C/C++ के Advance Learning Tutorial में आज के लिए बस इतना ही यदि आपको बताये गए topic  में कोई भी समस्या हो तो आप अपना प्रश्न पूछ सकते है आप चाहे तो discussion site पर भी discuss कर सकते है 
        
         अब आगे आप  C/C++ के कुछ interesting functions के बारे में जानेंगे जो की graphics programming के लिए जरूरी है । 
        
       अगर आपको यह ब्लॉग पसंद आया हो तो अपने दोस्तों को भी बताएं क्योंकि ये उनके लिए भी उपयोगी सिद्ध हो सकता है !!आप ब्लॉग की link के माध्यम से इसे आसानी से facebook twitter और Google Buzz पर भी Share कर सकते हैं