@Override
		public void paint(GGlassPane glassPane, Graphics g) {

			Rectangle defaultBounds = component.getBounds();

			int width = defaultBounds.width;
			int height = defaultBounds.height;

			Rectangle emphasizedBounds =
				new Rectangle(defaultBounds.x, defaultBounds.y, width, height);

			emphasizedBounds =
				SwingUtilities.convertRectangle(component.getParent(), emphasizedBounds, glassPane);

			Graphics2D g2d = (Graphics2D) g;

			int offsetX = emphasizedBounds.x - ((width - defaultBounds.width) >> 1);
			int offsetY = emphasizedBounds.y - ((height - defaultBounds.height) >> 1);

			g2d.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
				RenderingHints.VALUE_INTERPOLATION_BILINEAR);

			//
			// Shake code
			// 
			if (lastDirection > 0) {
//				lastDirection = -.01; // small
				lastDirection = -.031; // bigger
			}
			else {
//				lastDirection = .01; // small
				lastDirection = .031; // bigger
			}

			g2d.rotate(lastDirection, emphasizedBounds.getCenterX(), emphasizedBounds.getCenterY());
			g.drawImage(image, offsetX, offsetY, width, height, null);
		}
Returns the {@link GGlassPane} for the given component

@param c the component
@return the glass pane
Ghidra/Framework/Docking/src/main/java/docking/util/AnimationUtils.java