我已经从Bezier曲线创建了一个“blob”(下面的屏幕截图),现在想要以这样的方式对它进行着色,使其显示为伪3D,所有“左”边缘都有较暗的阴影,所有“右边”都较亮“边缘,也许是表面本身的纯白色”光点“。例如:我对如何实现this video中使用的着色感兴趣。
修改
一些其他信息:为了实现下面的平面填充效果,我创建了一个Area
对象,并使用Ellipse2D
向其中添加了Shape
add(new Area(ellipse))
个然后最后添加中心多边形区域以避免在中间留下空白区域。
alt text http://www.freeimagehosting.net/uploads/bc8081cbf2.png
答案 0 :(得分:1)
iPhone应用程序可以访问OpenGL-ES,这允许在着色和渲染基本上是具有自发光照明的彩色等值面的显着宽容度。除非你愿意为它编写一个完整的软件3d库,否则Java2d肯定不够复杂。
混合2d和3d也是possible。
答案 1 :(得分:1)
我在此RadialGradientPaint中使用自定义kineic model来获取伪3D效果。我相信Java 6中提供了更通用的implementation。