elm = svggc.createArc( boEllipse.getLeft( ), boEllipse.getTop( ), boEllipse.getWidth( ), boEllipse.getHeight( ), dStart, dExtent );
Area fArea = new Area( outerArc ); fArea.exclusiveOr( new Area( innerArc ) );  Shape prevClip = _g2d.getClip( );  elm = svggc.createGeneralPath( fArea );  } else { elm = svggc.createGeneralPath( new Arc2D.Double( are.getTopLeft( ).getX( ), are.getTopLeft( ).getY( ), are.getWidth( ), are.getHeight( ), are.getStartAngle( ), are.getAngleExtent( ), toSwingArcType( are.getStyle( ) ) ) ); }
	public void enableInteraction( InteractionEvent ie ) throws ChartException	{		Trigger[] triggers = ie.getTriggers( );		if ( triggers == null )		{			return;		}		final PrimitiveRenderEvent pre = ie.getHotSpot( );		Element elm = null;		if ( pre instanceof PolygonRenderEvent )		{			final Location[] loa = ( (PolygonRenderEvent) pre ).getPoints( );			int[][] pa = getCoordinatesAsInts( loa );			elm = svggc.createPolygon( pa[0], pa[1], pa[0].length );		}		else if ( pre instanceof OvalRenderEvent )		{			final Bounds boEllipse = ( (OvalRenderEvent) pre ).getBounds( );			elm = svggc.createOval( boEllipse.getLeft( ),					boEllipse.getTop( ),					boEllipse.getWidth( ),					boEllipse.getHeight( ) );		}		else if ( pre instanceof ArcRenderEvent )		{			final ArcRenderEvent are = (ArcRenderEvent) pre;			final Bounds boEllipse = are.getEllipseBounds( );			double dStart = are.getStartAngle( );			double dExtent = are.getAngleExtent( );			elm = svggc.createArc( boEllipse.getLeft( ),					boEllipse.getTop( ),					boEllipse.getWidth( ),					boEllipse.getHeight( ),					dStart,					dExtent );		}		if ( elm != null )		{			for ( int x = 0; x < triggers.length; x++ )			{				Trigger tg = triggers[x];				if ( tg.getAction( ).getType( ) == ActionType.SHOW_TOOLTIP_LITERAL )				{					Element title = svggc.dom.createElement( "title" ); //$NON-NLS-1$					title.appendChild( svggc.dom.createTextNode( ( (TooltipValue) tg.getAction( )							.getValue( ) ).getText( ) ) );					elm.appendChild( title );					elm.setAttribute( "onmouseout", "TM.remove()" ); //$NON-NLS-1$ //$NON-NLS-2$					elm.setAttribute( "onmouseover", "TM.show(evt)" ); //$NON-NLS-1$ //$NON-NLS-2$						}				else if ( tg.getAction( ).getType( ) == ActionType.URL_REDIRECT_LITERAL )				{					elm.setAttribute( "onmousedown", //$NON-NLS-1$							"parent.location='" //$NON-NLS-1$									+ ( (URLValue) tg.getAction( ).getValue( ) ).getBaseUrl( )									+ "'" ); //$NON-NLS-1$					setCursor( elm );				}			}			hotspotLayer.appendChild( elm );		}			}