導航:首頁 > 編程知識 > 編程中圓怎麼畫

編程中圓怎麼畫

發布時間:2023-03-18 07:24:32

Ⅰ 怎樣用C語言畫圓

#include <math.h>
#include <graphics.h> /*預定義庫函數*/
void circlePoint(int x,int y) /*八分法畫圓程序*/
{
circle(320+x*20,240+y*20,3);
circle(320+y*20,240+x*20,3);
circle(320-y*20,240+x*20,3);
circle(320-x*20,240+y*20,3);
circle(320-x*20,240+y*20,3);
circle(320-x*20,240-y*20,3);
circle(320-y*20,240-x*20,3);
circle(320+y*20,240-x*20,3);
circle(320+x*20,240-y*20,3);
}
void MidBresenhamcircle(int r) /* 中點Bresenham演算法畫圓的程序 */
{
int x,y,d;
x=0;y=r;d=1-r; /* 計算初始值 */
while(x<y)
{ circlePoint(x,y); /* 繪制點(x,y)及其在八分圓中的另外7個對稱點 */
if(d<0) d+=2*x+3; /* 根據誤差項d的判斷,決定非最大位移方向上是走還是不走 */
else
{ d+=2*(x-y)+5;
y--;
}
x++;
delay(900000);
} /* while */
}
main()
{
int i,j,r,graphmode,graphdriver;
detectgraph(&graphdriver,&graphmode);
initgraph(&graphdriver,&graphmode," ");
printf("中點Bresenhamcircle演算法畫圓的程序\n"); /*提示信息*/
printf("注意 |r|<=11");
printf("\n輸入半徑值滲改 r:");
scanf("%d"乎喊纖,&r);
printf("按任意鍵顯示圖形...");
getch();
cleardevice();
setbkcolor(BLACK);
for(i=20;i<=620;i+=20) /*使用雙循環畫點函數畫出表格中的縱坐標*/
for(j=20;j<=460;j++)
putpixel(i,j,2);
for(j=20;j<=460;j+=20) &n歡迎光臨學網,收藏本篇文章 [1] [2]

$False$

bsp; /*使用雙循環畫點函數畫出表格中的橫坐標*/
for(i=20;i<=620;i++)
putpixel(i,j,2);
outtextxy(320,245,"0"); /*原點坐標*/
outtextxy(320-5*20,245,"-5");circle(320-5*20,240,2); /*橫坐標值*/
outtextxy(320+5*20,245,"5");circle(320+5*20,240,2);
outtextxy(320-10*20,245,"-10"歲仿);circle(320-10*20,240,2);
outtextxy(320+10*20,245,"10");circle(320+10*20,240,2);
outtextxy(320-15*20,245,"-15");circle(320-15*20,240,2);
outtextxy(320+15*20,245,"15");circle(320+15*20,240,2);
outtextxy(320,240-5*20,"-5");circle(320,240-5*20,2); /*縱坐標值*/
outtextxy(320,240+5*20,"5");circle(320,240+5*20,2);
outtextxy(320,240-10*20,"-10");circle(320,240-10*20,2);
outtextxy(320,240+10*20,"10");circle(320,240+10*20,2);
outtextxy(20,10,"The center of the circle is (0,0) "); /*坐標軸左上角顯示提示信息*/
setcolor(RED); /*標記坐標軸*/
line(20,240,620,240); outtextxy(320+15*20,230,"X");
line(320,20,320,460); outtextxy(330,20,"Y");
setcolor(YELLOW);
MidBresenhamcircle(r);
setcolor(BLUE); /*繪制圓*/
circle(320,240,r*20);
setcolor(2);
getch();
closegraph();
}

Ⅱ 如何在C++6.0上進行圖形編程,畫一個圓

代碼如下

#include<iostream>

#include<windows.h>

#include<conio.h>

usingnamespacestd;

intmain(intargc,char*argv[])

{

chararg[200]={0};

arg[0]='"'州兆毀;

strcpy(arg+1,argv[0]);

intlen=int(strlen(arg));

arg[len]='"';

HWNDhWnd=FindWindow(NULL,arg);//找到程序運行窗口的句柄

HDChDC=GetDC(hWnd);//通過窗口句柄得到該窗口的設備場境句柄

HPENhPen,hOldPen;//畫筆

hPen=CreatePen(PS_SOLID,2,0x00ff00);//生成綠色畫筆

hOldPen=(HPEN)SelectObject(hDC,hPen);//把畫筆引入設備場境

Arc(hDC,100,100,猜猜300,300,350,500,350,500);//畫圓

SelectObject(hDC,hOldPen);

cout<<"畫圓冊備形:"<<endl;getch();

return0;

}

Ⅲ 數控銑削如何畫圓

在程序中輸入:
方法一:
G02
X
Y
Z
R

G03
X
Y
Z
R
說明:
(1)G02為順時針畫圓,G03為逆時針螞賣舉
(2)X
Y
Z
後跟終點坐標,R後跟圓的半徑值
方法二:
G02
X
Y
Z
I
J
K

G03
X
Y
Z
I
J
K
說明:
(1)G02為順時針畫圓,G03為逆時針
(2)X
Y
Z
後跟終點坐配棗標
(3)I
J
K為圓心相對於起悶碧點的相對坐標,I
J
K分別對應X
Y
Z三個方向
注意:第一種方法不能畫整圓,只能畫圓弧。
此外,以上是基本上所有系統都通用的標准格式,個別系統(如西門子)還有額外的指令,但應用很少。

Ⅳ 載入中程序怎麼編寫畫同心圓

載入中程序編寫畫同心圓。
1、打開在線python編輯唯賀器。這里用Python中的turtle函數畫同心圓。
2、定義畫圓的初始代碼。
3、循環執行畫5個同心圓。turtle.circle是從下方開始畫圓的,畫同心圓,則每一次都鋒咐要銀山純將畫筆移動到下一個圓的底部位置。
4、點擊程序左上角的」運行「,查看畫出的同心圓的效果。

Ⅳ 在java中如何用程序畫一個圓

使用java畫圓要用到繪圖類Graphics,下面是實例代碼和運行效果:

packagecom.dikea.demo01;

importjava.awt.*;

importjavax.swing.*;

//java繪圖原理

publicclassdemo_01extendsJFrame{

MyPanelmp=null;

publicstaticvoidmain(String[]args){

//TODO自動生成的方法存根

demo_01demo01=newdemo_01();

}

publicdemo_01(){

mp=newMyPanel();

this.add(mp);

this.setSize(400,300);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

}

//定義一個MyPanel面板,用於繪圖區域

classMyPanelextendsJPanel{

//覆蓋JPanel

//Graphics是繪圖的重要類,可以理解成一支畫筆

publicvoidpaint(Graphicsg){

//1.調用父類函數完成初始化任務

//這句話不可以少

super.paint(g);

//先畫出一個圓圈

g.drawOval(100,100,30,30);

}

}

代碼復制進ide編程工具,運行效果如下:

Ⅵ 用VB編程畫圓

添加以個TEXT2,一個按鈕,復制一下代碼即可Private Sub Command2_Click()
Dim i As Integer
'i = Val(Text2.Text)
For i = 1 To Val(Text2.Text)
Form3.Picture1.Circle (120, 260), i * 10, vbRed
Next
'Form3.Picture1.Circle (60, 60), 40, vbRed '畫一個圓心(60,60)半徑40的紅色的圓(默認空心)
'
'
'Form3.Picture1.FillStyle = 0 '設定填充模式為實心
'Form3.Picture1.FillColor = vbBlue '設定填充色藍色
'Form3.Picture1.Circle (190, 60), 40, vbRed '下來畫出來的就是填充了實心藍色的圓了
'
'
'Form3.Picture1.DrawWidth = 3 '設定邊框寬度為3
'Form3.Picture1.Circle (60, 190), 40, vbRed '這次繪制出來的圓邊框粗細為3
'
'Form3.Picture1.DrawStyle = 5 '設定邊框不可見
'Form3.Picture1.FillColor = vbRed '設定填充色紅色
'Form3.Picture1.Circle (190, 190), 40 '這次繪制出來一個無邊框、填充顏色是紅色的圓

Form3.Picture1.Refresh
End Sub

Ⅶ 怎麼用C語言畫一個圓形急~

#include<stdio.h>
#include<math.h>
int main()
{
double y;
int x,m;
for(y=10;y>=-10;y–)
{
m=2.5*sqrt(100-y*y); /*計算行y對應的列坐標m,2.5是屏幕縱橫比調節系數因為屏幕的
行距大於列距族碼,不進行調節顯示出來的將是橢圓*/
for(x=1;x<鋒派30-m;x++) printf(" "); /*圖形左側空白控制*/
printf("*"); /*圓的左側*/
for(;x<30+m;x++) printf(" "); /*圖形的空心銀穗賀部分控制*/
printf("*\n"); /*圓的右側*/
}
return 0;
}

Ⅷ 用VB編程畫圓

效果如圖:

Ⅸ 請教:用符號*畫圓(VC6編程),怎麼編程

說得還不夠詳細?下面是詳細步驟:
1、啟動VC6,選擇「文件-新建」,彈出「新建」對話框(此時處於「工程」選項卡)。
2、在左邊選擇「Win32 Application」(倒數第4項),在右邊輸入工程名,點擊「確定」。然後在彈出的對話框中選擇「空工程」,再點「完成」。
3、選擇「文件-新建」,彈出「新建」對話框(此時處於「文件」選項卡)。
4、在左邊選擇「C++ Source File」(第4項),在右邊輸入文件名,點擊「確定」。
5、把下面的代碼粘貼進去,然後組建、運行。

#include <windows.h>
#include <math.h>

//窗口函數
LRESULT CALLBACK WinMyProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_PAINT:
HDC hDC;
PAINTSTRUCT ps;
hDC = BeginPaint(hWnd, &ps);

//畫橫坐標
MoveToEx(hDC, 50, 300, NULL);
LineTo(hDC, 550, 300);
//畫縱坐標
MoveToEx(hDC, 300, 50, NULL);
LineTo(hDC, 300, 550);

//設置繪制背景為透明,防止*號遮擋坐標軸
SetBkMode(hDC, TRANSPARENT);

int x, y, i;
for (i=12; i<=68; i++)
{
x = 100 + i*5;
//畫上面1/4圓
y = -(int)(sqrt(40000-(x-300)*(x-300))) + 300;
TextOut(hDC, x, y, "*", strlen("*"));
//畫下面1/4圓
y = (int)(sqrt(40000-(x-300)*(x-300))) + 300;
TextOut(hDC, x, y, "*", strlen("*"));
}
for (i=12; i<=68; i++)
{
y = 100 + i*5;
//畫左邊1/4圓
x = -(int)(sqrt(40000-(y-300)*(y-300))) + 300;
TextOut(hDC, x, y, "*", strlen("*"));
//畫右邊1/4圓
x = (int)(sqrt(40000-(y-300)*(y-300))) + 300;
TextOut(hDC, x, y, "*", strlen("*"));
}

EndPaint(hWnd, &ps);
break;

case WM_DESTROY:
PostQuitMessage(0);
break;

default:
return DefWindowProc(hWnd, uMsg, wParam, lParam);
}
return 0;
}

//主函數
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
//設計並注冊窗口類
WNDCLASS wndcls;
wndcls.cbClsExtra = 0;
wndcls.cbWndExtra = 0;
wndcls.hbrBackground = (HBRUSH)COLOR_WINDOW;
wndcls.hCursor = LoadCursor(NULL, IDC_ARROW);
wndcls.hIcon = LoadIcon(NULL, IDI_WINLOGO);
wndcls.hInstance = hInstance;
wndcls.lpfnWndProc = WinMyProc;
wndcls.lpszClassName = "MyWinClass";
wndcls.lpszMenuName = NULL;
wndcls.style = CS_HREDRAW | CS_VREDRAW;
RegisterClass(&wndcls);

//創建窗口
HWND hWnd;
hWnd = CreateWindow("MyWinClass", "在屏幕上畫圓", WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 600, 600, NULL, NULL, hInstance, NULL);

//顯示窗口
ShowWindow(hWnd, SW_SHOWNORMAL);
UpdateWindow(hWnd);

//消息循環
MSG msg;
while(GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}

Ⅹ 在VC++中如何畫出一個圓

VC++畫圓形可以使用API函數:Ellipse(int x1, int y1, int x2, int y2);
其畫圓的原理是矩形的內切圓,四個參數中的前兩個是矩形左上角坐標,後兩個是矩形右下角坐標。VC++畫圖形前得先有一塊畫布DC即設備上下文。下面個例子:

void CrrDlg::PaintCircle() //畫實心圓函數{ CDC *pDC = this->GetDC(); //獲取DC CBrush brush,*oldbrush; //畫刷 //通過定時器中num遞增,實現紅色圓形與綠色圓形交替出現,即閃燈現象 if (num%2){ //num為定時器計數參數,其為偶數時畫紅色圓形 brush.CreateSolidBrush(RGB(255,0,0)); } else{ //num為奇數時,畫綠色圓形櫻掘 brush.CreateSolidBrush(RGB(0,255,0)); } oldbrush=pDC->SelectObject(&brush); pDC->Ellipse(10,10,100,100); pDC->Ellipse(110,10,200,100); pDC->SelectObject(oldbrush); ReleaseDC(pDC);} void CrrDlg::OnTimer(UINT_PTR nIDEvent) //銷頌粗定時器{ num++; PaintCircle(); CDialogEx::OnTimer(nIDEvent);} 畫空心圓環需要使用畫筆CPen,虧鎮畫法一樣。

閱讀全文

與編程中圓怎麼畫相關的資料

熱點內容
數據線一直發燙怎麼回事 瀏覽:830
IBM代碼5 瀏覽:279
編程時如何讓輸出結果之間有空格 瀏覽:112
怎麼復制網上文件 瀏覽:675
蘋果怎麼關掉網站禁止訪問 瀏覽:478
win10適合機械硬碟嗎 瀏覽:586
qq頭像歐美男霸氣頭像 瀏覽:368
java批量修改數據返回值 瀏覽:517
wp81創建文件夾 瀏覽:968
iphone高科技軟體 瀏覽:654
手機端怎麼看網頁代碼 瀏覽:925
什麼軟體能把手機變成蘋果版本的 瀏覽:841
ps精修瓶子視頻教程 瀏覽:481
win10惠普recovery盤 瀏覽:172
電腦網路問題是怎麼回事 瀏覽:193
微信刷卡支付介面開發 瀏覽:443
win10電腦屏幕旋轉90度怎麼復原 瀏覽:456
win10如何進入安全 瀏覽:319
把兩批紙質文件掃描成一個pdf 瀏覽:98
如何處理缺失數據 瀏覽:230

友情鏈接