当前位置: 首页 > news >正文

广州品牌网站建设营销型网站优化

广州品牌网站建设,营销型网站优化,政府网站开发系统,wordpress 生成cookie绘制椭圆弧线函数是MFC基本绘图函数,这个函数需要的参数比较多,共四对坐标点。前两对坐标点确定椭圆的位置与大小,后两对坐标确定椭圆弧线的起点与终点。 一、绘制椭圆弧线函数 原型:BOOL Arc(int x1,int y1,int x2,int y2…

       绘制椭圆弧线函数是MFC基本绘图函数,这个函数需要的参数比较多,共四对坐标点。前两对坐标点确定椭圆的位置与大小,后两对坐标确定椭圆弧线的起点与终点。
一、绘制椭圆弧线函数
       原型:BOOL Arc(int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4);
       参数:(x1,y1)、(x2,y2)椭圆内切矩形左上角、右下角坐标;(x3,y3)、(x4,y4)椭圆弧线的起点、终点坐标
       返回值:绘制成功返回非0数,失败返回0
       说明:
       a.函数Arc是CDC类的成员函数,使用时需要CDC类对象或指针调用;
       b.弧的起点、终点可以在椭圆上,也可以不在椭圆上;不在椭圆上时,起点、终点坐标点与椭圆中心的连接线割出椭圆弧线。
       c.画椭圆弧的默认方向为逆时针方向,起点、终点弄反了会画出另一半弧线。如果希望改变椭圆弧的绘制方向,可用下面函数进行设置。
       原型  int SetArcDirection(int nArcDirection);
       参数  逆时针方向绘制 AD_COUNTERCLOCKWISE (缺省)
                顺时针方向 AD_CLOCKWISE
       返回值  成功返回弧的方向,失败返回0
       说明:该函数是CDC类的成员函数,使用时需要CDC类对象或指针调用。
二、椭圆弧线的绘制
  (一)、绘制弧线与绘制直线相同,仅涉及画笔,不涉及画刷,画笔的设置方法在绘制直线段时已经介绍过,这里不再赘述。
  (二)、在描述坐标点时,使用的一直是(x,y)方式。在《MFC图形函数学习03——画直线段函数》曾提到过MoveTo函数的返回值类型是CPoint,还提到CPoint类与POINT结构体类似,可以表示的某点的坐标代替(x,y)这种写法。这里简要介绍一下CPoint类和POINT结构体。
       1、CPoint类
       CPoint类是点类,凡是使用(int x,int y)作参数的地方,均可利用已经赋值的CPoint对象作参数。CPoint类的声明、使用方法介绍如下:
       a.声明CPoint类对象: CPoint myPoint;
       b.为声明的对象赋初值,CPoint类有两个属性x和y。例如:myPoint.x=10; myPoint.y=20;。
       c.也可以在声明CPoint对象时使用构造函数赋值:CPoint myPoint(10,20);。也可以利用CPoint的已赋值对象来初始化另一个对象,方法包括利用构造函数(例:CPoint a(myPoint)),也可以利用重载的等号(例:CPoint a=myPoint)。
       d.CPoint的成员函数offset,可以对CPoint对象指定偏移量。例如:myPoint.offset(10,20);表示myPoint从当前位置x增加10,y增加20。
       e.CPoint类还重载了“==”和“!=”,可以检查两个点是否相同或不同。也可以对两个CPoint对象利用重载的“+”、“-”符号进行加减运算。
       2.POINT结构体
       POINT结构体有两个属性,x和y。使用方法与CPoint类相同,声明对象:POINT p;,赋值:p.x=20;、p.y=30;。
       关于CPoint类、POINT结构体的具体使用方法暂不介绍,待后续介绍完CRect类、RECT结构体、LPRECT指针后再在案例中介绍使用方法。
三、案例程序
       题目:在设备坐标系中,画出矩形(-100,-50,100,50)内切椭圆被Y轴、X轴截取的椭圆弧,然后以X方向每次100、Y方向每次50放大椭圆(椭圆中心不变)并画出被Y轴、X轴截取的椭圆弧,至X或Y方向满窗口停止。弧线颜色为绿色,宽度3像素。代码及注释如下:

 

//定义绿色画笔并选入CDCCPen greenPen(PS_SOLID, 3, 0x00ff00);CPen* oldPen=pDC->SelectObject(&greenPen);
//初始椭圆内切矩形坐标int x1 = -100, y1 = -50, x2 = 100, y2 = 50;
//截取弧线起点、终点坐标(放到椭圆外,对所有椭圆生效)CRect rect;GetClientRect(rect); //获取窗口信息int startX = 0, startY = rect.bottom; //在Y轴顶端(设备坐标系)int endX = rect.right, endY = 0; //在X轴顶端
//利用循环绘制椭圆弧线while (TRUE){if (x2 >= rect.right || y2 >= rect.bottom)break; //退出条件pDC->Arc(x1,y1,x2,y2,startX,startY,endX,endY); //画弧线x1 = x1 - 100; y1 = y1 - 50; //放大椭圆x2 = x2 + 100; y2 = y2 + 50;}pDC->SelectObject(oldPen); //恢复画笔

        说明:内切矩形的左上角坐标自始至终在绘图窗口之外,而程序运行是正常的,也就是说,MFC绘图函数是允许把图绘到屏幕之外,对此并不会报错。比如,案例程序不这样写,取消用X轴和Y轴切割弧线,而是用透明画刷做填充颜色画椭圆,由于设备坐标系只有一个象限,其余部分显示不出来,结果和切割椭圆弧一样。
 四、案例程序运行截图

http://www.ds6.com.cn/news/85682.html

相关文章:

  • favicon.ico 网站的根目录在线服务器网站
  • 凡科建站视频教程搜索引擎优化教程
  • 做美食网站需求分析报告首页排名seo
  • 澳门建设银行官方网站下载百度导航app
  • 鹤壁做网站chrome网页版入口
  • 青海省建设厅网站 职称线上电商怎么做
  • 南山网站建设深圳信科怎样免费给自己的公司做网站
  • wordpress4.0+中文西安关键字优化哪家好
  • 上海英文网站建设公司北京seo外包
  • 湖南营销网站建设知乎推广渠道
  • vs2013 做网站网页设计与制作知识点
  • 临海响应式网站设计chrome手机安卓版
  • 免费b站视频推广网站2023长尾关键词挖掘词
  • 做aa视频网站网络营销的一般流程
  • 做分子生物实验常用网站惠州seo代理商
  • 房地产十大营销手段seo零基础培训
  • 葫芦岛做网站公司网站seo的优化怎么做
  • php做旅游网站搜索引擎关键词seo优化公司
  • 公司找人做网站重庆森林经典台词 凤梨罐头
  • 网站建设企业公司推荐全媒体广告投放平台
  • 叫人做网站后不提供源码免费发帖的网站
  • 医程通 网站做的太网络销售真恶心
  • 第一次接推广多少钱合适沈阳seo关键词
  • 怎么做网站自动采集数据济南seo网络优化公司
  • 易优cms仿站教程百度推广优化师是什么
  • html网站设计论文万能优化大师下载
  • 只做动漫的网站百度竞价排名推广
  • 有关做服装的网站吗南宁seo计费管理
  • 做电商要注册网站吗附近的电脑培训班在哪里
  • 网站功能定制合同济南做网站公司哪家好