本文整理汇总了Java中com.jme3.util.Screenshots类的典型用法代码示例。如果您正苦于以下问题:Java Screenshots类的具体用法?Java Screenshots怎么用?Java Screenshots使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Screenshots类属于com.jme3.util包,在下文中一共展示了Screenshots类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: postFrame
import com.jme3.util.Screenshots; //导入依赖的package包/类
@Override
public void postFrame(FrameBuffer out)
{
if (capture)
{
capture = false;
renderer.readFrameBuffer(out, outBuf);
Screenshots.convertScreenShot(outBuf, awtImage);
try
{
SimpleDateFormat yearFormat = new SimpleDateFormat("yyyyMMddHHmmssSS");
String screenshotID = SynergyNetApp.getTableIdentity() + "_" + yearFormat.format(new Date());
File file = new File(CacheOrganisation.getScreenshotDir() + File.separator + screenshotID + ".png");
file.createNewFile();
ImageIO.write(awtImage, "png", file);
screenShotter.utiliseScreenshot(file, loc, rot);
}
catch (IOException ex)
{
AdditionalSynergyNetUtilities.log(Level.SEVERE, "Error while saving screenshot", ex);
}
loc = new Vector2f();
rot = 0;
}
}
示例2: updateImageContents
import com.jme3.util.Screenshots; //导入依赖的package包/类
public void updateImageContents(){
cpuBuf.clear();
renderer.readFrameBuffer(offBuffer, cpuBuf);
synchronized (image) {
Screenshots.convertScreenShot(cpuBuf, image);
}
if (display != null)
display.repaint();
}
示例3: postFrame
import com.jme3.util.Screenshots; //导入依赖的package包/类
public void postFrame(FrameBuffer out) {
if (capture){
capture = false;
shotIndex++;
renderer.readFrameBuffer(out, outBuf);
Screenshots.convertScreenShot(outBuf, awtImage);
try {
ImageIO.write(awtImage, "png", new File(appName + shotIndex + ".png"));
} catch (IOException ex){
logger.log(Level.SEVERE, "Error while saving screenshot", ex);
}
}
}
示例4: postFrame
import com.jme3.util.Screenshots; //导入依赖的package包/类
@Override
public void postFrame(FrameBuffer fb) {
// cpuBuf.clear();
SceneApplication.getApplication().getRenderer().readFrameBufferWithFormat(offBuffer, cpuBuf,Format.BGRA8);
//
// // copy native memory to java memory
// cpuBuf.clear();
// cpuBuf.get(cpuArray);
// cpuBuf.clear();
//
// // flip the components the way AWT likes them
// for (int i = 0; i < width * height * 4; i += 4) {
// byte b = cpuArray[i + 0];
// byte g = cpuArray[i + 1];
// byte r = cpuArray[i + 2];
// byte a = cpuArray[i + 3];
//
// cpuArray[i + 0] = a;
// cpuArray[i + 1] = b;
// cpuArray[i + 2] = g;
// cpuArray[i + 3] = r;
// }
synchronized (imageLock) {
Screenshots.convertScreenShot(cpuBuf, image);
// WritableRaster wr = image.getRaster();
// DataBufferByte db = (DataBufferByte) wr.getDataBuffer();
// System.arraycopy(cpuArray, 0, db.getData(), 0, cpuArray.length);
}
repaint();
}
示例5: updateImageContents
import com.jme3.util.Screenshots; //导入依赖的package包/类
public void updateImageContents(){
cpuBuf.clear();
renderer.readFrameBuffer(offBuffer, cpuBuf);
synchronized (image) {
Screenshots.convertScreenShot2(cpuBuf.asIntBuffer(), image);
}
if (display != null)
display.repaint();
}
示例6: repaintInThread
import com.jme3.util.Screenshots; //导入依赖的package包/类
public void repaintInThread(){
// Convert screenshot.
byteBuf.clear();
rm.getRenderer().readFrameBuffer(fb, byteBuf);
synchronized (lock){
// All operations on img must be synchronized
// as it is accessed from EDT.
Screenshots.convertScreenShot2(intBuf, img);
repaint();
}
}
示例7: postFrame
import com.jme3.util.Screenshots; //导入依赖的package包/类
public void postFrame(FrameBuffer fb) {
// cpuBuf.clear();
SceneApplication.getApplication().getRenderer().readFrameBuffer(offBuffer, cpuBuf);
//
// // copy native memory to java memory
// cpuBuf.clear();
// cpuBuf.get(cpuArray);
// cpuBuf.clear();
//
// // flip the components the way AWT likes them
// for (int i = 0; i < width * height * 4; i += 4) {
// byte b = cpuArray[i + 0];
// byte g = cpuArray[i + 1];
// byte r = cpuArray[i + 2];
// byte a = cpuArray[i + 3];
//
// cpuArray[i + 0] = a;
// cpuArray[i + 1] = b;
// cpuArray[i + 2] = g;
// cpuArray[i + 3] = r;
// }
synchronized (imageLock) {
Screenshots.convertScreenShot(cpuBuf, image);
// WritableRaster wr = image.getRaster();
// DataBufferByte db = (DataBufferByte) wr.getDataBuffer();
// System.arraycopy(cpuArray, 0, db.getData(), 0, cpuArray.length);
}
repaint();
}
示例8: takePicture
import com.jme3.util.Screenshots; //导入依赖的package包/类
public BufferedImage takePicture() {
bbuf.clear();
renderManager.getRenderer().readFrameBuffer(fbuf, bbuf);
Screenshots.convertScreenShot(bbuf, image);
return image;
}
示例9: drawFrameInThread
import com.jme3.util.Screenshots; //导入依赖的package包/类
public void drawFrameInThread(){
// Convert screenshot.
byteBuf.clear();
rm.getRenderer().readFrameBuffer(fb, byteBuf);
Screenshots.convertScreenShot2(intBuf, img);
synchronized (lock){
// All operations on strategy should be synchronized (?)
if (strategy == null){
try {
createBufferStrategy(1,
new BufferCapabilities(
new ImageCapabilities(true),
new ImageCapabilities(true),
BufferCapabilities.FlipContents.UNDEFINED)
);
} catch (AWTException ex) {
ex.printStackTrace();
}
strategy = getBufferStrategy();
System.out.println("OGL: Visible. Create strategy.");
}
// Draw screenshot.
do {
do {
Graphics2D g2d = (Graphics2D) strategy.getDrawGraphics();
if (g2d == null){
System.out.println("OGL: DrawGraphics was null.");
return;
}
g2d.setRenderingHint(RenderingHints.KEY_RENDERING,
RenderingHints.VALUE_RENDER_SPEED);
g2d.drawImage(img, transformOp, 0, 0);
g2d.dispose();
strategy.show();
} while (strategy.contentsRestored());
} while (strategy.contentsLost());
}
}