绘制圆边界
Draw a circle boundary?
在一次开发人员工作的测试中,我被要求解决这个我不知道的问题。有人能帮帮我吗?
使用void draw(int x, int y)
绘制一个点,绘制虚线圆边界。使用公式x2+y2=r2。您可以使用sqrt
方法,但不要使用sin
、cos
或tan
等
Void DrawCircle(int centerX, int centerY, int radius) {…}
附言:这根本不是大学作业,所以请回复。
我写了一个快速代码可以解决你的问题,但还没有测试过
void DrawCircle(int centerX, int centerY, int radius)
{
int x,y;
x=-radius;
while(x < radius)
{
y=sqrt(radius*radius-x*x);
draw(x+centerX,y+centerY);
y=-y;
draw(x+centerX,y+centerY);
x++;
}
}
这里有一个函数,可以找到圆边界上的点(有无限多个点,dDensity
越小,你得到的点就越多。)
double dDensity = 1.0;
double y, x;
for (x = -radius; x <= radius; x += dDensity)
{
y = sqrt(-pow(x, 2.0f) + pow(r, 2.0f))
Console.WriteLine("(" + (x+centerX).ToString() + ","
+ (y+centerY).ToString() + ")");
}
这将生成圆所包含的点。
"画"一个圆圈是另一个问题,但这对你来说是一个好的开始
相关文章:
- QuadTree只在窗口的右上角绘制
- 绘制旋转的三角形
- std::当在256字节边界上写入整数时,流的奇怪行为
- flutter:即使shouldRepaint()返回true,自定义画家也不会重新绘制
- 如何在QT中的自定义视频小工具t上绘制矩形
- 如何在Visual Basic中使用矩形函数OpenGL绘制矩形
- 无法使用VAO和EBO(openGL)绘制多个对象
- 为什么我的点没有在 OpenGL 中绘制鼠标所在的位置?
- 绘制顺时针三角形,重新排序点
- 在顶点着色器中使用 OpenGl 的未声明标识符,我在顶点着色器中绘制三角形时遇到问题
- 使用不变量来确定二分搜索中的边界条件
- SFML 文本未绘制在窗口上
- SFML 2.4.2 在绘制 sf::Text 对象之前获取本地边界
- C++OpenGL坐标阵列来绘制线条/边界和填充矩形
- 如何在cocos2d-x3测试版中围绕精灵绘制边界框
- OpenGL 批处理:为什么我的绘制调用超出了数组缓冲区边界
- 绘制圆边界
- 如何在opencvc++中绘制眼睛周围的旋转边界框
- OpenGL -当我在立方体上绘制边界时,会出现额外的线
- 在C++环境中使用 OpenCV 绘制边界框