成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

C語言控制臺應(yīng)用程序GDI繪制正弦曲線

出于本科教學的目的,需要使用C語言在Visual Studio下控制臺應(yīng)用程序中動態(tài)繪制曲線,在此查閱了一些資料,制作了一個繪制動態(tài)正弦曲線的Demo,大家可根據(jù)這個例子查閱GDI、GDI+手冊,根據(jù)需求豐富自己的繪圖程序。

創(chuàng)新互聯(lián)公司是專業(yè)的喀喇沁網(wǎng)站建設(shè)公司,喀喇沁接單;提供網(wǎng)站建設(shè)、網(wǎng)站設(shè)計,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行喀喇沁網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

#include <windows.h>//引入wingdi.h
#include <stdio.h>
#include <math.h>
#include <time.h>
#include <conio.h>
 
#define PI 3.1416
 
#define ORIGINX 0 //曲線起點X坐標
#define ORIGINY 200 //曲線起點Y坐標
#define LENGTHX 800 //X坐標軸長度
#define LENGTHY 300 //Y坐標軸長度
#define XDATALEN 300//X坐標數(shù)據(jù)量
 
HDC hdc = 0;//控制臺繪圖設(shè)備描述句柄 HDC
HPEN hPen, hPen2;//畫筆變量
HPEN hPenOld;
TCHAR title[256];//控制臺程序標題
int times = 0;//繪制次數(shù)變量
double datay[XDATALEN];//曲線縱坐標數(shù)組
 
  //繪制清屏矩形
void ClearWind(HDC hdc)
{
 HPEN hPen;
 HBRUSH hBrush;
 hBrush = CreateSolidBrush(RGB(0, 0, 0));
 hPen = CreatePen(PS_SOLID, 0, RGB(0, 0, 0));
 SelectObject(hdc, hBrush);
 SelectObject(hdc, hPen);
 //繪制黑色矩形,范圍可根據(jù)需要自行更改
 Rectangle(hdc, ORIGINX, 0, ORIGINX + LENGTHX + 1, ORIGINY + LENGTHY + 1);
}
 
int main()
{
 //獲取控制臺標題
 GetConsoleTitle(title, 256);
 //先通過FindWindow函數(shù)借助標題獲取窗口句柄HWND,之后再利用GetDC函數(shù)借助HWND獲取HDC
 hdc = GetDC(FindWindow(0, title));
 hPen = CreatePen(PS_SOLID, 3, RGB(255, 0, 0));//設(shè)置曲線畫筆,紅色
 hPen2 = CreatePen(PS_SOLID, 3, RGB(0, 0, 255));//設(shè)置X軸畫筆,藍色
 hPenOld = (HPEN)SelectObject(hdc, hPen);
 
 while (1)
 {
 ClearWind(hdc);//清屏
 hPenOld = (HPEN)SelectObject(hdc, hPen);//選擇畫筆
 MoveToEx(hdc, ORIGINX, ORIGINY, NULL);//移動到起點
 
 for (int i = 0; i < XDATALEN; i++)
 {
 datay[i] = sin(0.1*i + times);//生成曲線縱坐標數(shù)組
 }
 
 for (int i = 0; i < XDATALEN; i++)
 {
 //繪制線段,連接前一個點與下一個點,第二個參數(shù)為目標點x坐標,第三個參數(shù)為y坐標
 LineTo(hdc, LENGTHX * i / XDATALEN + ORIGINX, 0.5 * LENGTHY * datay[i] + ORIGINY);
 }
 //創(chuàng)建繪制x軸的pen并將其選入設(shè)備上下文
 hPenOld = (HPEN)SelectObject(hdc, hPen2);//選擇畫筆
 MoveToEx(hdc, ORIGINX, ORIGINY, NULL);//移動到起點
 LineTo(hdc, ORIGINX + LENGTHX, ORIGINY);//繪制X軸直線
 times++;
 Sleep(100);//延時100ms
 
 if (kbhit())//檢查是否有按鍵按下
 {
 if (_getch() == 0x1b)//若按下ESC鍵跳出循環(huán)
 {
 break;
 }
 }
 }
 
 DeleteObject(hPen);//刪除畫筆
 DeleteObject(hPen2);//刪除畫筆
 return 0;
}

運行結(jié)果如下所示:

C語言控制臺應(yīng)用程序GDI繪制正弦曲線

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

文章題目:C語言控制臺應(yīng)用程序GDI繪制正弦曲線
網(wǎng)站鏈接:http://jinyejixie.com/article14/psiode.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、網(wǎng)站內(nèi)鏈、微信小程序、標簽優(yōu)化ChatGPT、網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
武威市| 九龙县| 新丰县| 黄浦区| 涪陵区| 女性| 永修县| 什邡市| 葵青区| 澜沧| 定州市| 台南县| 堆龙德庆县| 安达市| 安平县| 民勤县| 闽清县| 云和县| 平山县| 宁南县| 柳河县| 贡嘎县| 海安县| 榆中县| 溧阳市| 德昌县| 五家渠市| 桃源县| 当雄县| 土默特右旗| 夏津县| 宜宾市| 新源县| 青河县| 疏勒县| 高平市| 启东市| 图们市| 竹山县| 涡阳县| 瑞安市|