/** * Display multiple images in an array * * @param title * the frame title * @param cols * number of columns * @param images * the images * @return the frame */ public static JFrame display(final String title, final int cols, final Image<?, ?>... images) { final JFrame f = new JFrame(title); f.getContentPane().setLayout(new GridLayout(0, cols)); for (final Image<?, ?> image : images) { if (image != null) { final ImageComponent ic = new ImageComponent( ImageUtilities.createBufferedImageForDisplay(image)); ic.setOriginalImage(image); f.getContentPane().add(ic); } } f.pack(); f.setVisible(true); return f; }
/** * Display multiple images in an array * * @param title * the frame title * @param cols * number of columns * @param images * the images * @return the frame */ public static JFrame display(final String title, final int cols, final Image<?, ?>... images) { final JFrame f = new JFrame(title); f.getContentPane().setLayout(new GridLayout(0, cols)); for (final Image<?, ?> image : images) { if (image != null) { final ImageComponent ic = new ImageComponent( ImageUtilities.createBufferedImageForDisplay(image)); ic.setOriginalImage(image); f.getContentPane().add(ic); } } f.pack(); f.setVisible(true); return f; }
private void createUI() { final JFrame frame = new JFrame("PDM Builder"); final JPanel panel = new JPanel(); frame.getContentPane().add(panel); ic = new DisplayUtilities.ImageComponent(true, false); ic.setAllowPanning(false); ic.setAllowZoom(false); ic.setImage(ImageUtilities.createBufferedImage(images.get(0))); ic.setPreferredSize(ic.getSize()); ic.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { registerClick(e.getX(), e.getY()); } }); panel.add(ic); final SpinnerModel model = new SpinnerNumberModel(0, 0, images.size(), 1); imageSpinner = new JSpinner(model); new JSpinner.NumberEditor(imageSpinner); imageSpinner.addChangeListener(this); panel.add(imageSpinner); labelsList = new JComboBox<String>(pointLabels); labelsList.addActionListener(this); panel.add(labelsList); frame.pack(); frame.setVisible(true); }
final Video<T> video, final AudioStream as, final JFrame screen) final ImageComponent ic = new ImageComponent(); ic.setSize(video.getWidth(), video.getHeight()); ic.setPreferredSize(new Dimension(video.getWidth(), video.getHeight()));
/** * Convenience function to create a VideoDisplay from a video in an existing * component. * * @param <T> * the image type of the video frames * @param video * The video * @param comp * The {@link JComponent} to draw into * @return a VideoDisplay */ public static <T extends Image<?, T>> VideoDisplay<T> createVideoDisplay(final Video<T> video, final JComponent comp) { final ImageComponent ic = new ImageComponent(); ic.setSize(video.getWidth(), video.getHeight()); ic.setPreferredSize(new Dimension(video.getWidth(), video.getHeight())); ic.setAllowZoom(false); ic.setAllowPanning(false); ic.setTransparencyGrid(false); ic.setShowPixelColours(false); ic.setShowXYPosition(false); comp.add(ic); final VideoDisplay<T> dv = new VideoDisplay<T>(video, ic); new Thread(dv).start(); return dv; }
/** * Default constructor * * @param window * The window to display the demo in * @throws IOException */ public VideoFeatureExtraction(final JComponent window) throws IOException { this.capture = new VideoCapture(640, 480); window.setLayout(new GridBagLayout()); final JPanel vidPanel = new JPanel(new GridBagLayout()); vidPanel.setBorder(BorderFactory.createTitledBorder("Live Video")); this.videoDisplay = VideoDisplay.createVideoDisplay(this.capture, vidPanel); this.videoDisplay.addVideoListener(this); GridBagConstraints gbc = new GridBagConstraints(); gbc.anchor = GridBagConstraints.PAGE_START; window.add(vidPanel, gbc); this.modelPanel = new JPanel(new GridBagLayout()); this.modelPanel.setBorder(BorderFactory.createTitledBorder("Feature type: " + this.mode.toString())); gbc = new GridBagConstraints(); gbc.anchor = GridBagConstraints.PAGE_END; gbc.gridy = 1; window.add(this.modelPanel, gbc); this.modelFrame = new ImageComponent(true, false); this.modelPanel.add(this.modelFrame); this.histogramImage = new MBFImage(640, 60, ColourSpace.RGB); this.modelFrame.setImage(ImageUtilities.createBufferedImageForDisplay(this.histogramImage)); ((JFrame) SwingUtilities.getRoot(this.videoDisplay.getScreen())).addKeyListener(this); }
/** * Convenience function to create a VideoDisplay from a video in an existing * component. * * @param <T> * the image type of the video frames * @param video * The video * @param comp * The {@link JComponent} to draw into * @return a VideoDisplay */ public static <T extends Image<?, T>> VideoDisplay<T> createVideoDisplay(final Video<T> video, final JComponent comp) { final ImageComponent ic = new ImageComponent(); ic.setSize(video.getWidth(), video.getHeight()); ic.setPreferredSize(new Dimension(video.getWidth(), video.getHeight())); ic.setAllowZoom(false); ic.setAllowPanning(false); ic.setTransparencyGrid(false); ic.setShowPixelColours(false); ic.setShowXYPosition(false); comp.add(ic); final VideoDisplay<T> dv = new VideoDisplay<T>(video, ic); new Thread(dv).start(); return dv; }
private void createUI() { final JFrame frame = new JFrame("PDM Builder"); final JPanel panel = new JPanel(); frame.getContentPane().add(panel); ic = new DisplayUtilities.ImageComponent(true, false); ic.setAllowPanning(false); ic.setAllowZoom(false); ic.setImage(ImageUtilities.createBufferedImage(images.get(0))); ic.setPreferredSize(ic.getSize()); ic.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { registerClick(e.getX(), e.getY()); } }); panel.add(ic); final SpinnerModel model = new SpinnerNumberModel(0, 0, images.size(), 1); imageSpinner = new JSpinner(model); new JSpinner.NumberEditor(imageSpinner); imageSpinner.addChangeListener(this); panel.add(imageSpinner); labelsList = new JComboBox<String>(pointLabels); labelsList.addActionListener(this); panel.add(labelsList); frame.pack(); frame.setVisible(true); }
/** * Default constructor * @param id of kinect controller * @throws KinectException */ public KinectDepthSnapshot(int id) throws KinectException { controller = new KinectController(id, irmode,true); GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice[] devices = ge.getScreenDevices(); JFrame frame=new JFrame("Full Screen JFrame"); //Set default close operation for JFrame frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //Set JFrame size to full screen size follow current screen size screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width; screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height; fullScreenResizeProcessor = new ResizeProcessor(screenWidth, screenHeight); frame.setBounds(0,0,screenWidth,screenHeight); videoFrame = VideoDisplay.createVideoDisplay(this, new DisplayUtilities.ImageComponent(true)); JFrame wholeWindow = new JFrame(); wholeWindow.setUndecorated(true); wholeWindow.setAlwaysOnTop(true); wholeWindow.getContentPane().add(videoFrame.getScreen()); devices[0].setFullScreenWindow(wholeWindow); ((JFrame)SwingUtilities.getRoot(videoFrame.getScreen())).setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); SwingUtilities.getRoot(videoFrame.getScreen()).addKeyListener(this); }
/** * Default constructor * @param id of kinect controller * @throws KinectException */ public KinectDepthSnapshot(int id) throws KinectException { controller = new KinectController(id, irmode,true); GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice[] devices = ge.getScreenDevices(); JFrame frame=new JFrame("Full Screen JFrame"); //Set default close operation for JFrame frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //Set JFrame size to full screen size follow current screen size screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width; screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height; fullScreenResizeProcessor = new ResizeProcessor(screenWidth, screenHeight); frame.setBounds(0,0,screenWidth,screenHeight); videoFrame = VideoDisplay.createVideoDisplay(this, new DisplayUtilities.ImageComponent(true)); JFrame wholeWindow = new JFrame(); wholeWindow.setUndecorated(true); wholeWindow.setAlwaysOnTop(true); wholeWindow.getContentPane().add(videoFrame.getScreen()); devices[0].setFullScreenWindow(wholeWindow); ((JFrame)SwingUtilities.getRoot(videoFrame.getScreen())).setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); SwingUtilities.getRoot(videoFrame.getScreen()).addKeyListener(this); }
@Override public void run() { try { final MultiPuppeteer vs = new MultiPuppeteer(); final VideoCapture vc = new VideoCapture(640, 480); final ImageComponent ic = new ImageComponent(true); CLMDemoApplet.this.add(ic); final VideoDisplay<MBFImage> vd = VideoDisplay.createVideoDisplay(vc, ic); vd.addVideoListener(vs); CLMDemoApplet.this.doLayout(); } catch (final Exception e) { e.printStackTrace(); } } });
@Override public void run() { try { final MultiPuppeteer vs = new MultiPuppeteer(); final VideoCapture vc = new VideoCapture(640, 480); final ImageComponent ic = new ImageComponent(true); CLMDemoApplet.this.add(ic); final VideoDisplay<MBFImage> vd = VideoDisplay.createVideoDisplay(vc, ic); vd.addVideoListener(vs); CLMDemoApplet.this.doLayout(); } catch (final Exception e) { e.printStackTrace(); } } });
/** * Default constructor. * * @throws IOException */ public QRTrackingDemo() throws IOException { this.ic = new ImageComponent(true); this.ic.setPreferredSize(new Dimension(320, 240)); this.toDraw = new MBFImage(320, 240, 3); // Now test to see if it has a QR code embedded in it this.reader = new com.google.zxing.qrcode.QRCodeReader(); this.lastImage = ""; this.add(this.ic); }
/** * Default constructor. * * @throws IOException */ public QRTrackingDemo() throws IOException { this.ic = new ImageComponent(true); this.ic.setPreferredSize(new Dimension(320, 240)); this.toDraw = new MBFImage(320, 240, 3); // Now test to see if it has a QR code embedded in it this.reader = new com.google.zxing.qrcode.QRCodeReader(); this.lastImage = ""; this.add(this.ic); }
/** * Create the video player to play the given video. * * @param v * The video to play * @param audio * The audio to play */ public VideoPlayer(final Video<T> v, final AudioStream audio) { this(v, audio, new ImageComponent()); }
/** * Create the video player to play the given video. * * @param v * The video to play */ public VideoPlayer(final Video<T> v) { this(v, null, new ImageComponent()); }
/** * Default constructor. * * @throws IOException */ public VideoProcessingDemo() throws IOException { this.ic = new ImageComponent( true ); this.ic.setPreferredSize( new Dimension(320,240) ); this.init(); }
/** * Default constructor. * * @throws IOException */ public VideoProcessingDemo() throws IOException { this.ic = new ImageComponent( true ); this.ic.setPreferredSize( new Dimension(320,240) ); this.init(); }
/** * Create the video player to play the given video. * * @param v * The video to play * @param audio * The audio to play */ public VideoPlayer(final Video<T> v, final AudioStream audio) { this(v, audio, new ImageComponent()); }
/** * Create the video player to play the given video. * * @param v * The video to play */ public VideoPlayer(final Video<T> v) { this(v, null, new ImageComponent()); }