标题本身就说明了...我试图找到像它的另一个问题,但如果它存在一定都少不了它。我在寻找什么,从核心库取代GAPI到.NET包装......这是为建设一个漂亮的UI所以没有必要3D ...

有帮助吗?

解决方案

在.NET中的System.Drawing中的类有很多更强大的比人们意识到。唯一缺少的(这实际上是在2D图形很重要的)是读取和写入单个像素的能力。这在技术上是可能使用的位图对象上与getPixel和SetPixel方法,但这些方法是难以想象的慢。

幸运的是,你可以通过调用一个位图LockBits,然后直接访问位图的字节数据实现了超快速替代。我用这个,效果良好。事实上,我已经花了上周完全在.NET创建鱼眼镜头效果(没有图书馆或PInvoke的要求的话)。

这JPEG是一种蹩脚的,但它表明什么是可能只使用.NET:

替代文字http://www.freeimagehosting.net/uploads/5fdd250b21.jpg

其他提示

IMO我建议得到该帧缓冲器的保持某种方式,如果可能或使用D3DM或从coredll.dll中并且由于使用由本地平台(GDI)通过API等DrawGradient()等等提供的图纸服务直接绘制到它你是在WM你也许能够利用aygshell.dll绘制控件。

下面是一些链接...

1)使用梯度从点净填充结果 2)使用梯度直接填写结果 3)其它天然GDI函数

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top