亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        SDK中繪圖函數(shù)的使用說明及自編寫思路

        2019-04-17 13:01:36田慕晨
        科學與技術(shù) 2019年18期

        田慕晨

        摘要:SDK中集成了多種繪圖函數(shù),給Windows編程人員提供了便利。本文將針對其中四種(Polyline,PolyPolyline,Polygon,PolyPolygon)作詳細說明,并對比其調(diào)用方法和實現(xiàn)功能的不同。并提供自己編寫這四種函數(shù)的思路,經(jīng)試驗,效果與SDK中函數(shù)效果基本一致。

        關(guān)鍵詞:SDK;繪圖函數(shù);Windows編程

        一、Polyline

        頂點數(shù)組有7個元素,分別是一個三角形的三個頂點,一個方形的四個頂點(其余函數(shù)測試都使用同一個頂點數(shù)組)。調(diào)用Polyline,Polyline只能畫一條折線,即將7個頂點依次連接,若頂點個數(shù)參數(shù)設(shè)為3,則只連頂點數(shù)組的前三個點。

        二、PolyPolyline

        PolyPolyline可以畫多條折線。設(shè)定好PolyPolyline的每條線頂點個數(shù)數(shù)組為{3,4},則前3個點和后4個點分別被連成兩條線。

        三、Polygon

        Polygon畫一個閉合的多邊形并填色。首先此函數(shù)將7個點連接并自動將最后一個點和第一個點相連形成閉合圖形,再填色。

        四、PolyPolygon

        PolyPolygon畫多個多邊形并填色。與PolyPolyline一樣,設(shè)定好一個多邊形用幾個頂點和多邊形個數(shù)的參數(shù),PolyPolygon連接第一組頂點,首尾相連并填充,再連接第二組頂點,首尾相連并填充。

        五、編寫繪圖函數(shù)

        1.MyPolyline

        仿照Polyline的參數(shù)和返回,三個參數(shù)分別是hdc,CONST POINT *apt(POINT類型數(shù)組地址,頂點數(shù)組信息),csz(頂點個數(shù)),返回空。

        數(shù)組地址apt為數(shù)組內(nèi)第一個元素的地址,可以直接apt+i使指針在數(shù)組內(nèi)移動。由于數(shù)組是結(jié)構(gòu)體類型的,可以以地址訪問結(jié)構(gòu)體內(nèi)成員,即apt->y。

        函數(shù)編寫思路簡單,先用MoveToEx函數(shù)把畫筆放到第一個頂點處,再for循環(huán)頂點個數(shù)-1次,每次都LineTo下一個頂點。

        2.MyPolyPolyline

        仿照PolyPolyline的參數(shù)和返回,四個參數(shù)分別是hdc,CONST POINT *apt(POINT類型數(shù)組地址,頂點數(shù)組信息),CONST DWORD *asz(DWORD類型數(shù)組地址,每條折線的頂點個數(shù)),DWORD csz(折線條數(shù)),返回空。

        apt使用與Polyline相同。asz也是數(shù)組地址,也表示該數(shù)組第一個元素的地址,但這個數(shù)組里的元素不是結(jié)構(gòu)體,要用*取出,asz+i指針移動,*(asz + i)取出指針指向的元素值。

        函數(shù)體是一個兩層嵌套的for循環(huán),循環(huán)前先定義i、j都為0,i控制指向頂點數(shù)組里第幾個點,j控制在畫第幾條線。第一層循環(huán)是折線條數(shù)循環(huán),循環(huán)折線條數(shù)次,MoveToEx把筆抬起放到下一個起始頂點,并讓i++,讓內(nèi)層循環(huán)從下一個點開始連。內(nèi)層循環(huán)是每條線內(nèi)的頂點連線循環(huán),循環(huán)次數(shù)由asz數(shù)組內(nèi)的值決定。也可以內(nèi)層調(diào)Polyline實現(xiàn)。3.MyPolyPolygon

        仿照PolyPolyline的參數(shù)和返回,四個參數(shù)分別是hdc,CONST POINT *apt(POINT類型數(shù)組地址,頂點數(shù)組信息),CONST INT *asz(INT類型數(shù)組地址,每條折線的頂點個數(shù)),DWORD csz(折線條數(shù)),返回空。

        使用均同MyPolyPolyline。

        函數(shù)體是一個for循環(huán),循環(huán)內(nèi)調(diào)用Polygon。Polygon的頂點數(shù)組參數(shù)是apt + i,i每次循環(huán)完加asz數(shù)組中這個多邊形的頂點數(shù),apt + i就移動到下一個多邊形的第一個頂點處;Polygon的頂點數(shù)參數(shù)是*(asz+j)),j每次循環(huán)加1,即依次遍歷asz數(shù)組的值。

        參考文獻

        [1]云昌欽,袁灝.Microsoft Windows環(huán)境與編程基礎(chǔ)[Z].

        (作者單位:山東大學(威海)通信工程)

        久久久精品人妻一区二区三区蜜桃 | 真人做人试看60分钟免费视频| 人妻影音先锋啪啪av资源| 狠狠色狠狠色综合网老熟女| 中国av一区二区三区四区| 久久日日躁夜夜躁狠狠躁| 国产农村妇女毛片精品久久| 亚洲综合AV在线在线播放| 91麻豆精品一区二区三区| 国产亚洲av看码精品永久| 国产莉萝无码av在线播放| 国产色噜噜| 色哟哟精品中文字幕乱码| 女优一区二区三区在线观看| 国产一卡2卡3卡四卡国色天香| 中文字幕大屁股熟女乱| 麻豆av毛片在线观看| 亚洲国产精品无码久久一线 | 偷柏自拍亚洲综合在线| 中文字幕亚洲精品久久| 欧美极品少妇无套实战| 国产成人亚洲精品电影| 成人黄色片久久久大全| 乱码1乱码2美美哒| 亚洲综合无码一区二区三区 | 欧美亚洲另类国产18p| 美女脱掉内裤扒开下面让人插 | 午夜福利啪啪片| 亚洲性啪啪无码AV天堂| 国产精品第一区亚洲精品| 波多野结衣中文字幕一区二区三区| 久久久久99精品成人片试看| 亚欧视频无码在线观看| 中国黄色一区二区三区四区| 亚洲日韩一区精品射精| 99精品成人片免费毛片无码| 国产偷国产偷亚洲高清| 亚洲人成网线在线播放va蜜芽| 国产成人精品三级麻豆| 国产麻豆放荡av激情演绎| 黄片大全视频在线播放|