C++經典圖形庫EasyX

2020-09-03 十萬個Why

什麼是 EasyX

EasyX 是針對 C++ 的圖形庫,可以幫助 C 語言初學者快速上手圖形和遊戲編程。

比如,可以用 VC + EasyX 很快的用幾何圖形畫一個房子,或者一輛移動的小車,可以編寫俄羅斯方塊、貪吃蛇、黑白棋等小遊戲,可以練習圖形學的各種算法,等等。

為什麼要用EasyX?

許多學編程的都是從 C 語言開始入門的,而目前的現狀是:

1. 有些學校以 Turbo C 為環境講 C 語言,只是 Turbo C 的環境實在太老了,複製粘貼都很不方便。

2. 有些學校直接拿 VC 來講 C 語言,因為 VC 的編輯和調試環境都很優秀,並且 VC 有適合教學的免費版本。可惜在 VC 下只能做一些文字性的練習題,想畫條直線畫個圓都很難,還要註冊窗口類、建消息循環等等,初學者會受嚴重打擊的。初學編程想要繪圖就得用 TC,很是無奈。

3. 還有計算機圖形學,這門課程的重點是繪圖算法,而不是 Windows 編程。所以,許多老師不得不用 TC 教學,因為 Windows 繪圖太複雜了,會偏離教學的重點。新的圖形學的書有不少是用的 OpenGL,可是門檻依然很高。

所以,EasyX開發者想給大家一個更好的學習平臺,就是 VC 方便的開發平臺和 TC 簡單的繪圖功能,於是就有了這個 EasyX 庫。如果您剛開始學 C 語言,或者您是一位教 C 語言的老師,再或者您在教計算機圖形學,那麼這個庫一定會讓您興奮的。

怎樣安裝 EasyX?

EasyX 繪圖庫目前支持 Visual C++ 6.0 / 2008 ~ 2017。下載的壓縮包解壓縮後,執行 Setup.hta 安裝即可。

下載地址:https://easyx.cn/downloads/

如何使用EasyX?

EasyX使用方法也相當簡單方便,以一個畫圓的程序為例:

int main(){ initgraph(640, 480); // 這裡和 TC 略有區別 circle(100, 100, 60); // 畫圓,圓心(100, 100),半徑 60 getch(); // 按任意鍵繼續 closegraph(); // 關閉圖形界面}

具體使用方法請參考以下相關視頻:

VC6 請參考:

http://www.easyx.cn/readme/View.aspx?id=65

VC2008~2017 請參考:

http://www.easyx.cn/readme/View.aspx?id=85

EasyX版權

  1. EasyX 是免費的,任何人均可以隨意使用。
  2. EasyX 是以教育為目的誕生的,因此,任何以教育為目的應用,無論寫書、授課或是製作幻燈片,都可以免費使用 EasyX。
  3. EasyX 官網的技術文章和範例程序不能隨便使用,請注意文章的作者,僅當作者是以下人時,才可以隨意使用:EasyX、yangw80、krissi、BestAns。
    對於其他作者發布的技術文章和範例程序,屬於投稿一類,文章中通常會留有原作者的聯繫方式,如果需要使用這些文章,請聯繫原作者。

關於 EasyX 安裝程序被某些殺毒軟體判為病毒的解決方法

一些殺毒軟體真的很粗暴,所有 .hta 文件都會報毒,不管什麼內容。

舉個例子,在 C:\Downloads\ 下創建一個文本文件,隨便寫點什麼內容,然後修改擴展名為 .hta,並雙擊,這時候,有些殺毒軟體立刻就報毒了。

這種情況只能建議臨時關掉殺毒軟體,然後再安裝 EasyX,沒有別的辦法。

或者嘗試挪到別的文件夾下面解壓縮安裝試試。

PS: .hta 是腳本語言。之所以用 .hta 形式的安裝程序,是因為想讓大家看到安裝 EasyX 時究竟做了什麼。至少,肯定不會修改瀏覽器或捆綁什麼插件。

EasyX 的安裝程序僅僅做了刪掉回車的壓縮,沒有做混淆加密,因此只需要簡單補充回車即可看到全部原始碼。

官方示例

煙花

官網例子連結:https://codebus.cn/xiongfj/post/firework

水波

官網例子連結:https://codebus.cn/contributor/post/hao-water-ripple-effect

博弈五子棋(人機對戰)

官網例子連結:https://codebus.cn/kevin/a/wuziqi

方塊旋轉動態

官網例子連結:https://codebus.cn/featherstar/a/dynamic-figure

以上就是對EasyX庫的介紹,文章中多數說明和示例都來自EasyX官網,感興趣的朋友也可以去EasyX官網詳細了解一下:https://easyx.cn/

之所以寫這篇文章也是因為最近自己也打算開發一個小遊戲,也在不斷的搜索一些好用的開源庫以及代碼,積累經驗的同時取他人之長來補己之短,後面有機會的話,再分享一些自己開發小遊戲的過程和經驗教訓。

相關焦點

  • 小白基礎知識必備||C語言圖形庫:Easy X庫
    EasyX 是一個 C++ 圖形庫,封裝了一些基本的繪圖函數,可以實現在控制臺窗口繪製圖像,幫助 C/C++語言初學者快速上手圖形編程。比如,可以用 VC + EasyX 很快的用幾何圖形畫一個房子,或者一輛移動的小車,可以編寫俄羅斯方塊、貪吃蛇、黑白棋等小遊戲,可以練習圖形學的各種算法,等等。如何使用?
  • 盤點php的gui圖形界面開發擴展庫
    對於圖形界面開發,太多語言有著自己的實現,不過大部分語言採用的都是綁定實現的,因為大部分圖形庫都是基於c/c++開發的,而眾多語言都提供了和c交互的接口,所以我們就可以通過這些接口來實現一個語言的圖形界面開發。
  • 分享給大家的c++常用庫,建議收藏!
    c++的常用庫今天給大家分享的是C++常用庫,有興趣的小夥伴可以收藏哦~有想一起進群學習的也可以私信我,大家一起交流C++ 資源大全關於 C++ 框架、庫和資源的一些匯總列表,內容包括:標準庫Skia 用於繪製文字,圖形和圖像的完整的2D圖形庫urho3d 跨平臺的渲染和遊戲引擎。
  • C++常用庫之UI庫(一)
    之前的文章裡提到過,c++的第三方庫非常豐富,而且不乏一些高質量開源庫。這些第三方庫為我們開發提供了非常大的便利,極大提高了開發效率,也降低了維護難度。這幾天就按照分類介紹下常用C++第三方庫。就從UI庫說起吧。
  • Linux環境下C++文件的各種形式組合動態庫.so
    1、 純cpp文件打包動態庫將所有cpp文件和所需要的頭文件放在同一文件夾,然後執行下面命令gcc -shared -fpic *.c -o xxx.so;g++ -std=c++17 -shared -fpic *.cpp -o xxx.so;[C++17
  • C語言編程:使用EasyX庫,讓你的控制臺程序支持繪圖功能
    那麼,藉助於EasyX庫,我們可以讓控制臺程序通過簡單的編程,就可以達到我們的這個目的。EasyX繪圖庫說明EasyX繪圖庫是一個C++庫,它支持Windows XP(sp3) 及以上作業系統,可以在Visual C++ 6.0 / 2008~2017(x86 & x64)版本中使用。
  • 圖形用戶界面入門中安裝EasyGui
    1、安裝 EasyGui本章給大家介紹圖形用戶界面編程,也就是平時常說的GUI(Graphical UserInterface,讀作[gu:i])編程,那些帶有按鈕、文本、輸入框的窗口的編程,相信大家都不會陌生。
  • 盤點php的gui圖形擴展
    對於圖形界面開發,太多語言有著自己的實現,不過大部分語言採用的都是綁定實現的,因為大部分圖形庫都是基於c/c++開發的,而眾多語言都提供了和c交互的接口,所以我們就可以通過這些接口來實現一個語言的圖形界面開發。
  • C++EasyX圖形編程
    Microsoft Visual Studio\Vc98\lib\EasyXw.lib必存在文件Microsoft Visual Studio\Vc98\include\easyx.h
  • python3使用ctypes在windows中訪問C和C++動態連結庫函數示例
    python3使用ctypes在windows中訪問C和C++動態連結庫函數示例這是我們的第一個示例,我們儘量簡單,不傳參,不返回,不訪問其他的動態連結庫一 測試環境介紹和準備測試環境:作業系統:windows10Python
  • 一款開源的跨平臺C/C++集成開發軟體:CodeBlocks
    由純粹的C++語言開發完成,支持使用廣泛的c以及c++程序開發,軟體本身就是使用c++開發,有著快速的反應速度,而且體積也不大,對於c++用戶來說,是最適用的軟體。它使用了著名的圖形界面庫wxWidgets(3.x)版。對於追求完美的C++程式設計師,再也不必忍受Eclipse的緩慢。軟體支持應用程式的開發、也可以對現有的程序進行編譯,在設計過程中,您可以隨意調試軟體。
  • 雲之家X正大建設集團:企業知識庫搭建,so easy!
    雲之家X正大建設集團:企業知識庫搭建,so easy!5月23日,雲之家舉辦了「悅翔青春 X共創未來」 九周年慶生暨客戶共創成果發布會,現場發布了九大客戶共創成果,其中,雲之家產品管理部產品經理陳曉波分享了雲之家與 雲之家X正大建設集團:企業知識庫搭建,so easy!
  • Dlib 18.14 發布,跨平臺 C++ 通用庫
    This makes it about     4x faster in that case.   - Made it so you can compose point transform objects via operator *.更多內容請看發行說明。
  • Qt圖形編程基礎之:嵌入式GUI簡介
    GUI(圖形用戶界面)是指計算機與其使用者之間的對話接口,可以說,GUI是當今計算機技術的重大成就。它的存在為使用者提供了友好便利的界面,並大大地方便了非專業用戶的使用,使得人們從繁瑣的命令中解脫出來,可以通過窗口、菜單方便地進行操作。
  • Mesa 20.0.8 發布,3D 計算機圖形庫
    Mesa 是一個三維計算機圖形庫,以開源形式實現了 OpenGL 的應用程式接口。這是計劃發布的 20.0.x 系列最後一個版本,建議用戶考慮使用 20.1.x 系列代替。
  • LCUI 1.3.0 發布,C 的圖形界面開發庫 - OSCHINA - 中文開源技術...
    LCUI 1.3.0 發布了,LCUI 是一個使用 C 語言編寫的圖形界面開發庫。
  • Github上優秀開源C++項目推薦第四彈
    歌單管理使用Qt自帶的圖形庫實現了歌單管理的界面,重寫了一些事件函數,實現了新建歌單,拖拽歌曲,歌曲高亮等功能。使用Qt封裝的SQLite資料庫,實現了歌曲,歌單的存檔。歌詞顯示通過手寫字符串匹配解析了lrc格式的歌詞文件,然後通過二分查找實現了顯示某時刻的歌詞。
  • 學了C++後不知道怎麼辦?C++就業指南,你值得擁有
    另外從Boost,Loki這些庫中我們也能夠看到C++的發展非常活躍,對於新技術新思維非常激進,C++仍然廣泛受到關注。從ACE在高性能通信領域的應用,以及MTL這樣的庫在數值計算領域的出色表現,我們可以看到C++在高性能應用場合下的不可替代的作用,而嵌入式系統這樣的內存受限開發平臺,比如SymbianOS上,C++已經發揮著並且將發揮更大的作用。可以預見的是以後的軟體無論上層的應用怎麼變,它的底層核心都會是由C/C++這樣的系統級軟體編寫的。
  • 給開發者提供的 35 款 JavaScript 圖形圖表庫
    幾乎每個開發或者項目管理團隊都需要圖表或者圖形來簡化理解,可視化複雜的數據和 web 應用工作流。可視化圖表可以幫助開發者更容易理解複雜d數據,提高生產的效率和 web 應用和項目的可靠性。JavaScript 圖表和圖形庫就是一個簡單創建圖表和圖形的工具。現在網際網路上有許多五花八門的 JavaScript 圖表和圖形庫,幫助開發者們更好的創建 web 應用的圖表和圖形。
  • Linux下C/C++編譯器gcc使用簡介
    1.gcc包含的c/c++編譯器本文引用地址:http://www.eepw.com.cn/article/257973.htmgcc,cc與c++,g++gcc和cc是一樣的,c++和g++是一樣的。一般c程序就用gcc編譯,c++程序就用g++編譯。