matlab八分之一中点画圆算法,中点八分画圆算法
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
#define W 800
#define H 600
void drawCircle(SDL_Renderer* renderer, SDL_Color* color, int x0, int y0, int r)
{
int x, y;
int d;
x = 0;
y = r;
d = 1 - r;
SDL_SetRenderDrawColor(renderer, color->r, color->g, color->b, color->a);
while (x < y)
{
SDL_RenderDrawPoint(renderer, x + x0, y + y0);
SDL_RenderDrawPoint(renderer, x + x0, -y + y0);
SDL_RenderDrawPoint(renderer, -x + x0, y + y0);
SDL_RenderDrawPoint(renderer, -x + x0, -y + y0);
SDL_RenderDrawPoint(renderer, y + x0, x + y0);
SDL_RenderDrawPoint(renderer, y + x0, -x + y0);
SDL_RenderDrawPoint(renderer, -y + x0, x + y0);
SDL_RenderDrawPoint(renderer, -y + x0, -x + y0);
if (d > 0)
{
d += ((x - y) << 1) + 5;
y--;
}
else
{
d += (x << 1) + 3;
//d += 2;
}
x++;
}
}
int main(int argc, char* argv[])
{
SDL_Window* window = SDL_CreateWindow("SDL Window", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, W, H, SDL_WINDOW_SHOWN);
SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);
SDL_RenderClear(renderer);
SDL_Color color = {0, 0, 0, 255};
drawCircle(renderer, &color, 100, 100, 100);
drawCircle(renderer, &color, 200, 400, 50);
SDL_RenderPresent(renderer);
SDL_Event event;
bool flag = true;
while (flag)
{
while (SDL_PollEvent(&event))
{
if (event.type == SDL_QUIT)
{
flag = false;
}
}
}
return 0;
}
/*
中点八分画圆算法,
欢迎大家帮忙测试
/xyx
*/
matlab八分之一中点画圆算法,中点八分画圆算法相关推荐
- 计算机图形学——八分法中点画圆
八分法中点画圆 实现方法:从0°到45°开始画,其余部分进行求对称 1 .绘制X^2+Y^2=R^2的圆,将圆划分为⑧等份.我们从第二份开始绘制 分析: 最大位移方向是Y方向,因此令y每增加1,x不变 ...
- 中点Bresenham画圆算法|MFC|计算机图形学
中点Bresenham画圆算法|MFC|计算机图形学 Bresenham中点画圆算法 计算机图形学-基本图元的生成-圆 基于学习直线的生成算法后,又展开了圆.椭圆的讲解: 此次试验是简单的MFC应用, ...
- openGL实现中点画线算法、DDA画线算法,Bresenham画线算法,并进行鼠标键盘的交互
首先设置变量用于进行鼠标交互和键盘交互: int m = 0; GLdouble m1 =0, m2 = 0; 1.实验入口主函数: //主函数 int main(int argc, char** a ...
- 【计算机图形学】中点画圆算法和Bresenham画圆算法
在平面解析几何中,圆的方程可以描述为(x – x0)2 + (y – y0)2 = R2,其中(x0, y0)是圆心坐标,R是圆的半径,特别的,当(x0, y0)就是坐标中心点时,圆方程可以简化为x2 ...
- C语言——中点画圆算法和Bresenham画圆算法(easyx图形库)
一.中点画圆法 首先是中点画圆法,考虑圆心在原点,半径为R的圆在第一象限内的八分之一圆弧,从点(0, R)到点(R/ , R/ )顺时针方向确定这段圆弧.假定某点Pi(xi, yi)已经是该圆弧上最接 ...
- 中点圆c语言程序,[图形学] 画圆(基于中点算法)
图形学中的中点算法画圆,以下是该算法的 C 语言实现: /// // 程序名称:基于中点算法画圆 // 编译环境:Visual C++ 6.0 / 2010,EasyX 2011惊蛰版 // 作 者: ...
- 计算机图形学实习教程之基本图形的生成(直线DDA算法,直线中点算法,Bresenham画圆算法),利用C#实现,附源码
环境:Win10+Visual Studio 2022 Community 在本次实验中需要用到上一篇文章实验内容的代码及环境,详情请见:传送门 目录 一.实验目的 二.实验过程 1.生成直线的DDA ...
- matlab已知圆心和半径怎么作圆,MATLAB中已知圆心和半径画圆
今天在用MATLAB编程的时候,用到了已知圆心和半径,画圆的程序,上网搜了一下,主要有下面两种,在这里总结一下:(这里我都是放在函数中做的,想画多个圆的话可以加个for循环调用一下函数,或者直接用向量 ...
- MATLAB中已知圆心和半径画圆
今天在用MATLAB编程的时候,用到了已知圆心和半径,画圆的程序,上网搜了一下,主要有下面两种,在这里总结一下:(这里我都是放在函数中做的,想画多个圆的话可以加个for循环调用一下函数,或者直接用向量 ...
最新文章
- nginx内置变量 大全
- mysql 时间点_MySQL 基于时间点与位置恢复
- 计算机excel教程文字版,Excel函数教程:文本函数
- python教程:filter,map,reduce
- ubuntu下使用pidgin(pidgin-lwqq)登陆qq
- C++工作笔记-枚举类型的作用
- 爱上MVC~业务层刻意抛出异常,全局异常的捕获它并按格式返回
- 关于GPS定位反欺诈研究
- 职场中,为什么有人经常说:做得越多,死得越快?
- (一)SVM的八股简介
- 生产环境一次诡异的空指针问题,反转了4次
- html+css制作小米商城官网初尝试
- 乔布斯斯坦福毕业演讲
- Python——第一天的Suger Rush
- 计算机添加家庭成员,Win10系统添加家庭成员出错怎么解决?
- MEMS mic之Amic(一)
- Windchill:oid获取对象、对象获取oid
- 跑步可以戴有线耳机吗?推荐这几款无线运动耳机
- 区域颜色填充-四连通种子填充算法
- 推荐一款app——ADSafe