⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 用c语言画立体五角星 - 樱花草 - 网易博客.txt

📁 用C语言画立体五角星.rar ?肅语言画立体五角星.rar
💻 TXT
字号:
用C语言画立体五角星 - 樱花草 - 网易博客  网易博客| 找朋友| 圈子| 拍拍| 搜索 注册| 登录  真诚是永恒的天堂
相识是天意,相知是人意,有情便有谊,我们能聚在一起,因为心有灵犀。  首页 日志 相册 音乐  收藏 好友 关于我               日志  
那人~~那情~~那景世界上最遥远的距离 
字号: 大大  中中  小小 用C语言画立体五角星                                    立 体 五 角 星
设计思路:
1、通过给定的圆半径,计算出圆上平均分布的五个顶点的坐标,再计算出相应小圆的半径及旋转36度后小圆上平均分布的五个点的坐标。用线将各对应点连接起来形成五角星。
2、通过循环画间断弧线形成动态的光芒效果。
3、本例应用到数组及数学中的正弦和余弦函数。
图例:
 
 
公式:x=x0+r*cos(a);
y=y0-r*sin(a);
a为从起点到该点的旋转角度。
由于C语言中sin、cos等函数中的参数是依弧度计算的,因此需要进行度数转换。一般先用#define PI 
3.1415926这样的宏定义定义PI。2*PI为一个圆周,2*PI/360为角度1度的值,简化为PI/180。比如需要计算30度的正弦值,按下式:
sin(30*PI/180);
五角星内接的小圆半径的求法: 
  

数学公式:yc=r×sin(18°); 或yc=r×cos(72°);
        r0=yc÷cos(36°)
 
转成C语言语句:
          yc=r*sin(18*PI/180);
          r0=yc/cos(36*PI/180);
或直接写成:r0=r*sin(18*PI/180)/cos(36*PI/180);
 
 
例:
#include<graphics.h>
#include<math.h>         /* 插入数学头文件 */
#define PI 3.1415926     /* 宏定义 PI */
float th=PI/180;         /*定义全局变量 th */
main()
{
 int gd=DETECT,gm,i,j;
 initgraph(&gd,&gm,"");
 setbkcolor(BLUE);
 star(320,240,120);   /*调用自定义函数star()。*/
 while(!kbhit())       /*下面循环体是绘制光芒部分,可以不要 */
 {
 setcolor(YELLOW);
 for(j=0;j<20;j++)
 {
    for(i=0;i<120;i++)
    ellipse(320,240,i*3,1+i*3,125+j*20,125+j*10);
    delay(5000);
 }
 setcolor(BLACK);
 for(j=0;j<20;j++)
    {
    for(i=0;i<120;i++)
    ellipse(320,240,i*3,1+i*3,125+j*20,125+j*10);
    delay(5000);
    }
 }
 getch();
 closegraph();
}
 
 star(int x,int y,int r)
 {
     int r0=r*sin(18*th)/cos(36*th); /*计算小圆半径r0 */
     int i,color;
     int x1[6],y1[6],x2[6],y2[6];
     for(i=0;i<6;i++)
     {
     x1[i]=x+r*cos((90+i*72)*th); /* 计算出大圆上的五个平均分布点的坐标*/
     y1[i]=y-r*sin((90+i*72)*th);
     x2[i]=x+r0*cos((54+i*72)*th); /* 计算出小圆上的五个平均分布点的坐标*/
     y2[i]=y-r0*sin((54+i*72)*th);
     }
     setcolor(RED);
     for(i=0;i<5;i++)           /* 将相应的点用线连接起来。*/
     {
     line(x,y,x1[i],y1[i]);
     line(x,y,x2[i],y2[i]);
     line(x1[i],y1[i],x2[i],y2[i]);
     line(x1[i],y1[i],x2[i+1],y2[i+1]);
     }
     for(i=0;i<10;i++)         /* 分别填充相应部位,形成立体效果*/
     {
        setfillstyle(1,i%2?RED:LIGHTRED); 
        floodfill(x+10*cos(i*36*th),y-10*sin(i*36*th),RED);
     }
 }
   最近读者 
 shinewave 零点任务 苗苗 大帅

分享(0) 评论(0) 分类:学习44次阅读 2007-07-06 12:13     
     我要登录 -> 

     
       公司简介- 联系方法- 招聘信息- 客户服务- 相关法律- 用户反馈- 举报不良信息-   
网易公司版权所有 &copy;1997-2008
 JSWindow 
正在加载中...    {if coms != null && coms.length != 0}    <div id="comShowHeader_${parentId}" class="g_h_20 g_c_mgin">   <span class="g_p_right g_c_hand n_ n7" style="margin-left:10px" onclick="${containerObjName}.closeComments('${parentId}');return false;" title="关闭">&nbsp;</span>   <ul class="g_menu_09 g_w_at com_page">    <li>      {if (coms != null) && (comCount > (commentRange * pageNum))}        <a id="spnNextPage_${parentId}" class="g_c_noul c06" href="#" onclick="${containerObjName}.moveToPage(${pageNum} + 1, true);return false;">下页</a>      {else}<span class="c09">下页</span>{/if}    </li>    <li><span class="ckck c07">${pageNum}/${totalPageNum}</span></li>    <li>      {if pageNum > 1}        <a id="spnPrevPage_${parentId}" class="g_c_noul c06" href="#" onclick="${containerObjName}.moveToPage(${pageNum} - 1, true);return false;">上页</a>      {else}<span class="c09">上页</span>{/if}    </li>   </ul> </div> <div class="g_p_hide g_c_mgin g_table" id="comShowContent_${parentId}">     {for com in coms}     <table class="g_w_100 bd1b g_com_table" border="0" cellspacing="0" cellpadding="0">       <tr>         <td class="layout_l">          {if com.publisherName != null && com.publisherName != ""}         <a href="http://${com.publisherName|parentDomain}${prefix}/" target="_blank">     {if com.publisherAvatar==null || com.publisherAvatar==0 || com.publisherAvatar==-1000}      <img class="g_img_04 g_c_hand bd01" id="imgPubPic_${com.id}" src="${formatImageUrl(defaultVisitorAvatarUrl)}" onerror="this.src='http://st.blog.163.com/style/common/stranger.gif'"/>     {else}      <img class="g_img_04 g_c_hand bd01" id="imgPubPic_${com.id}" src="${formatImageUrl(com.publisherAvatarUrl)}" onerror="this.src='http://st.blog.163.com/style/common/stranger.gif'" />     {/if}    </a>    <div class="g_t_hide nick"><a id="aComPubName_${com.id}" class="g_p_block g_h_20 c05" href="http://${com.publisherName|parentDomain}${prefix}/" title="${com.publisherNickname|escape}" target="_blank">     {if com.publisherId == hostId}<span class="n_ m9com" title="博主">&nbsp;</span>{/if}${com.publisherNickname|escape}</a></div>     {else}        <span class="g_p_block g_h_20 g_t_hide g_w_100 c08 t_12">${com.publisherNickname|escape}</span>        <div class="c09 g_w_95 t_12" style="padding-top:8px">${com.ipName}</div>     {/if}         </td>         <td class="layout_r">           <table class="g_w_100">      <tr>        <td class="t"><div class="c g_t_wrap c07" id="comContent${com.id}">${com.content}</div></td>      </tr>      <tr>        <td colspan="3" class="b">         {if supportDeleteComment == true && visitorId == hostId}          <a class="c06 g_p_right g_c_ul" id="delcomm_${com.id}" onclick="${containerObjName}.deleteComment('${com.id}');return false;" href="#">删除</a>          <nobr class="bd1c g_p_right md">&nbsp;|&nbsp;</nobr>         {/if}         {if noCommentRight == false}          {if com.publisherName != null && com.publisherName != ""}           <a id="comReply_${com.id}" class="c06 g_p_right g_c_ul " onclick="${containerObjName}.reply('${com.id}',true,'${com.publisherNickname|escape|js_string}','${com.publisherName|parentDomain}${prefix}');return false;" href="#">回复</a>          {else}           <a id="comReply_${com.id}" class="c06 g_p_right g_c_ul " onclick="${containerObjName}.reply('${com.id}',false,'${com.publisherNickname|escape|js_string}','${com.ipName}');return false;" href="#">回复</a>          {/if}         {/if}         <span class="g_p_right c09 tim md"> ${NetEase.DateTime.formatRecentDate(com.publishTime,"yyyy-MM-dd HH:mm")}</span>         {if !isHomeModule && com.circleId>0}<span class="g_p_left c09">来源: <span class="c06">[</span><a class="c06" href="${circleBaseUrl}/${com.circleUrlName}/" target="_blank">${com.circleName}</a><span class="c06">]</span></span>{/if}               </td>      </tr>    </table>         </td>       </tr>     </table>     {/for}  </div> <div class="g_h_20 bd1b g_c_mgin">   <ul class="g_menu_09 g_w_at com_page">    <li>      {if (coms != null) && (comCount > (commentRange * pageNum))}        <a id="spnNextPage_${parentId}" class="g_c_noul c06" href="#" onclick="${containerObjName}.moveToPage(${pageNum} + 1, true);return false;">下页</a>      {else}<span class="c09">下页</span>{/if}    </li>    <li><span class="ckck c07">${pageNum}/${totalPageNum}</span></li>    <li>      {if pageNum > 1}        <a id="spnPrevPage_${parentId}" class="g_c_noul c06" href="#" onclick="${containerObjName}.moveToPage(${pageNum} - 1, true);return false;">上页</a>      {else}<span class="c09">上页</span>{/if}    </li>   </ul>    </div>    {else}     {if noCommentRight == false}     <div id="comShowHeader_${parentId}" class="g_h_20 g_c_mgin">   <span class="g_p_right g_c_hand n_ n7" onclick="${containerObjName}.closeComments('${parentId}');return false;" title="关闭" >&nbsp;</span>  </div>  {/if}    {/if}  <div class="g_c_pdin">    {if (noCommentRight == true)}     <div class="loginsection">   {if allowComment == 0}    <span class="n_ n21">&nbsp;</span>登录后你可以发表评论,请先登录。&nbsp;&nbsp;&nbsp;</span><a href="#" onclick="showLoginDlg(DomainMap.serverHostName);return false;">登录&gt;&gt;</a>   {elseif allowComment == 100}    {if visitorRank==-100}     <span class="n_ n21">&nbsp;</span>登录并添加博主为好友可以发表评论,请先登录。&nbsp;&nbsp;&nbsp;<a href="#" onclick="showLoginDlg(DomainMap.serverHostName);return false;">登录&gt;&gt;</a>    {elseif visitorRank ==0}     <span class="n_ n21">&nbsp;</span>添加博主为好友可以发表评论,请先加为好友。&nbsp;&nbsp;&nbsp;<a id="AComment${parentId}" href="#" onclick="pageTopBar.showAddFriend();return false;">加为好友&gt;&gt;</a>    {/if}   {elseif allowComment == 10000}    <span class="n_ n21">&nbsp;</span>该内容仅供欣赏。   {/if}     </div>   {else}    <div>      {if visitorRank <= -100}       <div class="g_layout_05 g_h_25 g_t_left" style="margin-bottom:7px;">       <input type="text" id="username${parentId}" style="width:170px;" class="bd01 g_t_disable nvb g_c_input" name="username${parentId}" value="${userName}" maxlength="18"/>&nbsp;&nbsp;&nbsp;&nbsp;       <a class="c06"  href="#" onclick="showLoginDlg(DomainMap.serverHostName);return false;">我要登录&nbsp;-&gt;</a>        </div>      {else}       <div class="g_layout_05">       <div class="l g_t_left">        {if visitorAvatarDefault == true}          <img class="g_img_04 bd01" src="${formatImageUrl(defaultVisitorAvatarUrl)}" onerror="this.src='http://st.blog.163.com/style/common/stranger.gif'" width="60px" height="60px" title="显示头像">         {else}          <img class="g_img_04 bd01" src="${formatImageUrl(visitorAvatar)}" onerror="this.src='http://st.blog.163.com/style/common/stranger.gif'" width="60px" height="60px" title="显示头像">         {/if}       </div>       <div class="r g_t_left"><input class="bd01 g_t_disable vb g_c_input" style="width:170px;" id="username${parentId}" name="username${parentId}" value="${userName}" type="text" maxlength="18"/></div>        <div class="g_p_clear g_t_space">&nbsp;</div>      </div>      {/if}     <div class="g_c_smvdn bd01" id="edt${parentId}"></div>     <div id="validCode${parentId}" class="g_c_mvdn g_t_left g_h_25" style="display:none;"></div>     <div class="g_h_30 g_c_mvdn g_t_left g_w_100">      <input class="g_c_button bd01 butn" id="$$_pubbtn${parentId}" onclick="${containerObjName}.addComment('${parentId}'); return false;" type="submit" {if disabled == true}disabled="true" {/if} value="发表评论" {if hasCancelBtn==false}style="font-weight:700;"{/if}/>&nbsp;&nbsp;                     {if hasCancelBtn}<input class="g_c_button bd01 butn" id="$$_comcancelbtn${parentId}" onclick="${containerObjName}.closeComments('${parentId}');return false;" type="submit" {if disabled == true}disabled="true" {/if} value="取 消"/>{/if}&nbsp;&nbsp;         <span id="$$_comsubmithint${parentId}" style="display:none;"></span>     </div>    </div>   {/if}  </div>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -