[Lập trình đồ họa máy tính cơ bản] Vẽ các hình tròn, các hình vuông đồng tâm

Share:
Các hình tròn đồng tâm - Tinhoccoban.net
Vẽ các hình tròn đồng tâm bằng C++


Viết chương trình đồ họa đầu tiên

1. Mẫu chương trình:


#include <stdio.h>
#include <conio.h>
#include <graphics.h>
 
int main(){
    initwindow(800,600);//tao cua so do hoa, size 800x600
    //ma lenh
    getch();
    return 0;
}

2. Chương trình đồ họa đầu tiên:


#include 
#include 
#include 

int main(){
    initwindow(800,600);//tao cua so do hoa, size 800x600
    setcolor(7);
    circle(400,300,200);
    line(400 , 100 , 400 , 500);
    line(200 , 300 , 600 , 300);
    getch();
    return 0;
}

Chú ý:
- Trục Oy có chiều dương hướng xuống
- setcolor(mau): chọn màu cho đường, mau (0->15)
- line(x1,y1,x2,y2): vẽ đường thẳng bắt đầu từ (x1,y1) đến (x2,y2)
- cirle(x,y,r): vẽ đường tròn, tâm (x,y), bán kính r

3. Màn hình đồ họa 800x600, Vẽ hình chữ nhật có tâm là tâm màn hình đồ họa, chiều dài 400, chiều rộng 300

- Tâm hình chữ nhật : 400 300
- Vẽ hình chữ nhật, xác định 2 điểm

  • Top Left: 200 150
  • Bottom Right: 600 450



#include 
#include 
#include 
 
int main(){
    initwindow(800,600);//tao cua so do hoa, size 800x600
    rectangle (200,150,600,450);
    rectangle (250,150,550,450);
    circle(400,300,150);
 
    getch();
    return 0;
}

4. Vẽ các hình vuông đồng tâm, màu không đổi


#include 
#include 
#include 
 
int main(){
    initwindow(800,600);//tao cua so do hoa, size 800x600
    int x1=250,y1=150,x2=550,y2=450;
    int d=1;
    int dl=20;
    int n=150;
    while(1){
        setcolor(15);
        for(int i=0;i<=n;i++){
            rectangle(x1+d*i,y1+d*i,x2-d*i,y2-d*i);
            delay(dl);
        }
        setcolor(0);
        for(int i=n;i>=0;i--){
            rectangle(x1+d*i,y1+d*i,x2-d*i,y2-d*i);
            delay(dl);
        }
    }
    getch();
    return 0;
}

5. Vẽ các đường tròn đồng tâm đổi màu


#include 
#include 
#include 
int main(){
    initwindow(800,600);//tao cua so do hoa, size 800x600
    int x=400,y=300,r=200;
    int d=10;
    int dl=200;
    int n=15;
    int color=15;
    while(1){
        for(int i=0;i<=n;i++){
            setcolor(color-i);
            circle(x,y,r-d*i);
            delay(dl);
        }
        setcolor(0);
        for(int i=n;i>=0;i--){
            circle(x,y,r-d*i);
            delay(dl);
        }
    }
    getch();
    return 0;
}

Không có nhận xét nào