




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
C++畫心型算法的代碼V1.0.0Nick2012簡單說明該方法模擬動態繪畫心型圖(兩個紅心,部分重疊),還有丘比特之箭...該文檔中代碼只是繪畫代碼,僅供參考繪畫算法比較粗劣,代碼運行效率比較低,讀者可以繼續優化希望有更好的算法的讀者可以發布出來,實現共享,共同學習,共同進步效果圖效果圖繪圖代碼CPaintDCdc(this);CPenpen(PS_SOLID,5,0x000000FF);CPen*pOldPen=dc.SelectObject(&pen);intpos_x=100,pos_y=100;intloop_time=180;intsleep_time=10;intc_angle=90;doublepi=3.1415926;doubleth=pi/180;繪圖代碼doubler=20;doublelast_x=r*(2*cos(0*th)-cos(2*0*th))/*+pos_x*/;doublelast_y=r*(2*sin(0*th)-sin(2*0*th))/*+pos_y*/;繪圖代碼doubletemp_x=last_x;doubletemp_y=last_y;doublel_x[180];doublel_y[180];doubler_x[180];doubler_y[180];繪圖代碼last_x=temp_x*cos(c_angle*th)-temp_y*sin(c_angle*th)+pos_x;last_y=pos_y-(last_y*cos(c_angle*th)+temp_x*sin(c_angle*th));doublex0=last_x;doubley0=last_y;繪圖代碼for(doublei=0;i<loop_time;i++){ l_x[(int)i]=r*(2*cos(i*th)-cos(2*i*th))/*+pos_x*/; l_y[(int)i]=r*(2*sin(i*th)-sin(2*i*th))/*+pos_y*/; temp_x=l_x[(int)i]; temp_y=l_y[(int)i];繪圖代碼 l_x[(int)i]=temp_x*cos(c_angle*th)-temp_y*sin(c_angle*th)+pos_x; l_y[(int)i]=pos_y-(temp_y*sin(c_angle*th)+temp_x*sin(c_angle*th)); r_x[(int)i]=x0+(x0-l_x[(int)i]); r_y[(int)i]=l_y[(int)i];繪圖代碼dc.MoveTo((int)last_x,(int)last_y); dc.LineTo((int)l_x[(int)i],(int)l_y[(int)i]); dc.MoveTo((int)last_x+50,(int)last_y/*+10*/);dc.LineTo((int)l_x[(int)i]+50,(int)l_y[(int)i]/*+10*/);繪圖代碼 last_x=l_x[(int)i]; last_y=l_y[(int)i]; Sleep(sleep_time);}for(intj=loop_time-1;j>0;j--){繪圖代碼if((r_x[j]<=l_x[j]+50&&r_y[j]>=y0)||(r_x[j]>=l_x[j]+50&&r_y[j]<=y0)){ dc.MoveTo((int)last_x,(int)last_y); dc.LineTo((int)r_x[j],(int)r_y[j]);} dc.MoveTo((int)last_x+50,(int)last_y/*+10*/); dc.LineTo((int)r_x[j]+50,(int)r_y[j]/*+10*/);繪圖代碼last_x=r_x[j]; last_y=r_y[j]; Sleep(sleep_time);}dc.MoveTo((int)x0-80,(int)y0);dc.LineTo((int)x0-50,(int)y0);繪圖代碼Sleep(100);dc.MoveTo((int)x0+80,(int)y0);dc.LineTo((int)x0+130,(int)y0);Sleep(100);dc.MoveTo((int)x0+130,(int)y0);dc.LineTo((int)x0+120,(int)y0-10);繪圖代碼Sleep(100);dc.MoveTo((int)x0+130,(int)y0);dc.LineTo((int)x0+120,(int)y0+10);Sleep(200);CStringstrText="NickandKady...Love...";CRectrect(CPoint(x0-20,y0+120)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 積累經驗的衛生管理證書考試分析試題及答案
- 藥劑學研究中的數據分析方法試題及答案
- 網絡規劃設計師考試的復習資源選擇試題及答案
- 藥劑類考試修習建議試題及答案
- 滬教版五年級語文下學期期中綜合復習名校習題
- 2025-2030宣傳品產業行業市場現狀供需分析及投資評估規劃分析研究報告
- 2025-2030實木沙發行業市場現狀供需分析及重點企業投資評估規劃分析研究報告
- 2025-2030塑料四合一文件架行業發展分析及投資價值研究咨詢報告
- 2025-2030城市畫筆行業市場現狀供需分析及投資評估規劃分析研究報告
- 2025-2030國內飲用水行業深度分析及競爭格局與發展前景預測研究報告
- 手機攝影教程
- 代炒股票分成協議
- 網課智慧樹知道《老年醫學概論(浙江大學)》章節測試答案
- 餐飲管理風險分析及對策建議
- G -B- 16914-2023 燃氣燃燒器具安全技術條件(正式版)
- 代駕免責協議書范本00字
- 2023北京朝陽區高一下學期期末語文試題及答案
- JB-QGL-TX3016AJB-QTL-TX3016A火災報警控制器安裝使用說明書
- 2024年社區工作者考試必背1000題題庫【含答案】
- 湖北省武昌區七校2023-2024學年八年級下學期期中聯考英語試卷+
- 江蘇省南京市六合區多校2023-2024學年五年級下學期期中測試語文試題+
評論
0/150
提交評論