首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用c++制作图像

如何使用c++制作图像
EN

Stack Overflow用户
提问于 2013-05-22 16:06:04
回答 4查看 5.6K关注 0票数 0

我做过最小的外接圆问题。

我想知道,如果我有n个点,半径和圆心的形式,那么我可以在图上打印所有这些东西。

打印意味着“我能做一个图像吗?”

如果有人知道,请告诉我我必须学习的东西。

EN

回答 4

Stack Overflow用户

发布于 2013-05-22 16:10:08

就其本身而言,无论是C++还是其标准库都不包含任何用于处理图像的函数。要处理图像(加载、保存等),您需要自己完成繁重的工作,或者链接到第三方库。

最简单的方法是将映像转储到Netpbm format中的磁盘。这种格式非常简单,你可以不用自己写东西。也有一个library可以做到这一点。该格式不使用任何压缩,因此最终得到的图像可能比预期的要大,但如果您只是进行探索性编码,那么它可能就足够好了。

其他库包括libjpeglibpng。这两个库都是特定于格式的(它们只适用于特定的图像格式)。不特定于格式的库包括OpenCV,它实际上在内部使用libjpeg和libpng。

编辑

读完你的问题后,我意识到你的问题不仅仅是保存图像,它实际上是创建它(以及保存它)。“创建”图像的最简单方法是分配一个字节数组。从逻辑上讲,数组是二维的:通常,第一维对应于图像的高度,第二维对应于宽度。一旦你创建了你的图像,你就可以通过设置数组中的值来“绘制”它。例如,要绘制一条线,可以枚举线上的(x,y)位置,并将每个位置的像素值设置为所需的值。

最后,当您想要输出图像时,请参阅我的答案的第一部分。

票数 1
EN

Stack Overflow用户

发布于 2013-05-22 16:10:10

要创建图像,您必须处理外部库等。你真的需要它吗?

看起来您正在处理一个“科学应用程序”,我建议您输出一个.txt文件并使用gnuplot来绘制您的图像

票数 0
EN

Stack Overflow用户

发布于 2013-05-22 16:10:17

您可以使用cimg或opengl。对于后者,请查看此问题OpenGL - draw pixels to screen?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16686568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档