我有一个带有以下顶点的多边形......
20,20
20,30
40,30
和一张图片。我想从图像中切出多边形部分以形成一个新的部分。有没有算法这样做? 我正在使用Processing,如果这有用的话。
提前致谢。
答案 0 :(得分:2)
您可以创建一个新图像并使用剪辑集绘制旧图像。
BufferedImage image = new BufferedImage(100, 100, BufferedImage.TYPE_INT_ARGB);
Graphics g = image.getGraphics();
Path2D path = new Path2D.Double();
path.moveTo(20, 20);
path.lineTo(20, 30);
path.lineTo(40, 30);
path.closePath();
g.setClip(path);
g.drawImage(YourOrigioanlImage, 0, 0, null);
在“处理”中,您可以从PImage
创建java.awt.Image
,这样您就可以使用上面的代码示例获取PImage
,然后执行此操作:
PImage pImage = new PImage(image);
您还可以通过从BufferedImage
PImage
方法,从getNative()
获取PImage
个对象