社区导航

 
查看: 2353|回复: 12

[原创] 适用单片机的2D图形库原来需求这么大

[复制链接]

7753

TA的帖子

54

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-1-14 10:28:27 | 显示全部楼层 |阅读模式
年前这把月,我基本都在做图形库。
严格来说我是在用网上搜索到几个图形变换算法,整合成了一套自己要用的图形变换算法。
目前实现了基本的

旋转,平移,抖动(也许是非正式意义上的抖动,就是基于平移的做法)
消融 还有 渐入渐出。

当时在做这件事的时候,一开始是期待使用专业的图形库,当然是开源免费的。
但在网上看了半天,来来去去发现真正适合单片机用,方便跨平台移植的其实不多。

更多的库,真正到官网看完介绍,才发现更多的是针对图像文件解析和图像处理的,而不是我们在单片机上要用的单纯绘制2D图形,对图像的处理,说到底也无非是显示,加上上述我提到的这些图形变化。

因为再上更高级更复杂的功能,单片机势必带不动,而且也没这个必要。

当时我想用opengl这个库,当然不指望能全部用上,就想着找到库里的相关图形算法,取出源码使用,然而搞了半天我居然没找到它的源码,然后才发现这个opengl和我想象的不太一样,它更多的是一个算法接口规范定义,而不是一套实现,当然基于特定的图形硬件可以找到它的源码,但我想了想,还是暂时放弃了,觉得太麻烦。

于是,后来我的方案是

ucgui做特定的圆形圆弧,三角形,多边形等图形绘制。
至于上述的图形变换,我自己搜索网上算法实现。

评分

2

查看全部评分

没有一件事情是容易的,所以,起念头时,一定要好好琢磨


回复

使用道具 举报

7753

TA的帖子

54

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-1-14 10:37:00 | 显示全部楼层
但我其实一直还是想用一下更专业的免费开源图形库,尤其是2D。

在我开始做具体的移植和实现算法之前,我搜索了一下网络,做了一个简单的图表。
是对当前已知的已有的网上能找到的图形算法库的汇总

QQ图片20170114103447.png
没有一件事情是容易的,所以,起念头时,一定要好好琢磨


回复

使用道具 举报

7753

TA的帖子

54

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-1-14 10:38:57 | 显示全部楼层
但其实我感觉了一下,最靠谱的还是 AGG
我对它唯一有点不爽的地方是,它是用C++实现的,当然话说回来,现在很多MCU的IDE都已经提供了 c++编译器,比如STM32之类的ARM,在MDK IAR上都有C++编译器。

我曾经简单试用过,但我没真正开发过项目用C++
当时我做的是 string这个类,但我发现并没有出现什么 对FLASH或者RAM的大量消耗,运行速度也很快,由此,我想,在单片机上用C++其实也没什么问题。
没有一件事情是容易的,所以,起念头时,一定要好好琢磨


回复

使用道具 举报

7753

TA的帖子

54

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-1-14 10:42:45 | 显示全部楼层
我之所以提起这件事,是因为我这几天自己在搞图形算法,也加了一些群(不过那些群更多的是图像处理识别哪一类,和我们其实真的关系不大,不过有些算法,概念却是通用的,我的旋转算法最终实现也是靠他们提点)

而后我这两天加了个FreeRTOS,我才刚进来没说几句话就发现他们好几个人都很关心有什么好的图形算法库可以用。
我提了AGG,然而似乎没人有啥反应,似乎都不知道,听了我解释也很忌惮C++似乎,即使我重复过上L的言论都一样。

而AGG,其实还好,至少网上有一份中文资料,当然不是单片机的,是入门教程。
但我下过最新的2.5 AGG代码,但凡有代码的东西,就好说。

但我想,如果是这样子的话,可能我应该早点在业余时间试试AGG了,就在STM32上跑就好了。

另外,附带一句,opengl作为一个事实上的图形库标准,其实也是有人在单片机上移植它的,我在搜索的过程里有印象,但是我没多看。

点评

opengl 是 gpu 和 cpu 通信协议的标准,对单片机不适用  详情 回复 发表于 2017-1-14 10:57
没有一件事情是容易的,所以,起念头时,一定要好好琢磨


回复

使用道具 举报

103

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2017-1-14 10:57:15 | 显示全部楼层
辛昕 发表于 2017-1-14 10:42
我之所以提起这件事,是因为我这几天自己在搞图形算法,也加了一些群(不过那些群更多的是图像处理识别哪一 ...

opengl 是 gpu 和 cpu 通信协议的标准,对单片机不适用


回复

使用道具 举报

5418

TA的帖子

185

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-1-14 11:32:14 | 显示全部楼层
教主你好,我最近也在研究图形学,并也打算在单片机上跑跑基本实验,其实我扯上单片机,完全是不务正业。这些话可能说的有点早了,等我研究研究再说。

点评

先说吧,我想知道你做了什么,做到哪里了,有啥想法  详情 回复 发表于 2017-1-14 13:47
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,虽然在群里买不到板子,但是可以学会开车;虽然学不到技术,但是可以学会开车;商家勿入!加群暗号:喵


回复

使用道具 举报

7753

TA的帖子

54

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-1-14 13:47:51 | 显示全部楼层
lcofjp 发表于 2017-1-14 11:32
教主你好,我最近也在研究图形学,并也打算在单片机上跑跑基本实验,其实我扯上单片机,完全是不务正业。这 ...

先说吧,我想知道你做了什么,做到哪里了,有啥想法

点评

我还在看计算机图形学的书,还没实践  详情 回复 发表于 2017-1-14 14:43
上图,看看你做的,再吐槽免得吐错了。  详情 回复 发表于 2017-1-14 14:36
没有一件事情是容易的,所以,起念头时,一定要好好琢磨


回复

使用道具 举报

1456

TA的帖子

2

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

发表于 2017-1-14 14:36:19 来自手机 | 显示全部楼层


上图,看看你做的,再吐槽免得吐错了。

点评

不用了,挺low的............  详情 回复 发表于 2017-1-16 13:28


回复

使用道具 举报

5418

TA的帖子

185

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-1-14 14:43:30 | 显示全部楼层
辛昕 发表于 2017-1-14 13:47
先说吧,我想知道你做了什么,做到哪里了,有啥想法

我还在看计算机图形学的书,还没实践
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,虽然在群里买不到板子,但是可以学会开车;虽然学不到技术,但是可以学会开车;商家勿入!加群暗号:喵


回复

使用道具 举报

7753

TA的帖子

54

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-1-16 13:28:07 | 显示全部楼层
freebsder 发表于 2017-1-14 14:36
上图,看看你做的,再吐槽免得吐错了。

不用了,挺low的............
没有一件事情是容易的,所以,起念头时,一定要好好琢磨


回复

使用道具 举报

1

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2017-9-1 11:24:41 | 显示全部楼层
楼主你好!
  想问下你的AGG移植到STM32成功了吗?

点评

AGG移植不难,用起来很痛苦。 考虑换 google 的 SKIA试试 无奈SKIA编译起来比较难,主要是我C++太渣。 而且没时间 不过最近发现了一个新东西,相当不错,打算找个时间折腾,哈哈  详情 回复 发表于 2017-9-2 15:05


回复

使用道具 举报

7753

TA的帖子

54

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-9-2 15:05:21 | 显示全部楼层
星夜电子 发表于 2017-9-1 11:24
楼主你好!
  想问下你的AGG移植到STM32成功了吗?

AGG移植不难,用起来很痛苦。
考虑换 google 的 SKIA试试
无奈SKIA编译起来比较难,主要是我C++太渣。

而且没时间

不过最近发现了一个新东西,相当不错,打算找个时间折腾,哈哈
没有一件事情是容易的,所以,起念头时,一定要好好琢磨


回复

使用道具 举报

7753

TA的帖子

54

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-9-2 15:05:57 | 显示全部楼层
http://www.gl.littlev.hu/
此物,朋友介绍,粗粗看了一眼,相当不错。

待一两个月后,有时间,一定玩玩。
没有一件事情是容易的,所以,起念头时,一定要好好琢磨


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2018-10-19 00:50 , Processed in 0.343313 second(s), 18 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表