public SVGTextFigure clone() { SVGTextFigure that = (SVGTextFigure) super.clone(); that.coordinates = new Point2D.Double[this.coordinates.length]; for (int i = 0; i < this.coordinates.length; i++) { that.coordinates[i] = (Point2D.Double) this.coordinates[i].clone(); } that.rotates = (double[]) this.rotates.clone(); that.cachedBounds = null; that.cachedDrawingArea = null; that.cachedTextShape = null; return that; }