Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 323782

Summary: ImageMap's series property is not available for 3D charts
Product: z_Archived Reporter: Boris Stepanov <freepriman>
Component: BIRTAssignee: Heng Li <liheeng>
Status: RESOLVED FIXED QA Contact: Xiaoying Gu <bluesoldier>
Severity: normal    
Priority: P3 CC: bluesoldier, liheeng
Version: 2.5.2   
Target Milestone: 2.6.2   
Hardware: PC   
OS: Windows Vista   
Whiteboard:

Description Boris Stepanov CLA 2010-08-27 01:27:19 EDT
Build Identifier: 2.5.2.20100210

imageMap that generated for URL redirect action contains series=null when we render 3D charts

Reproducible: Always

Steps to Reproduce:
1. Create 3D Bar chart using Chart API.
2. Add URL redirect action to it.
3. Render chart using PNG renderer.
4. Write imageMap to log file.

Wrong behavior: series=null for each area.
Comment 1 Heng Li CLA 2010-12-02 02:14:01 EST
Boris,
Could you please attach your code that could reproduce this? The 3D chart with URL redirect created in BIRT chart designer has correct image map for PNG format, I am not sure if there is API usage issue in your code. Thanks.
Comment 2 Boris Stepanov CLA 2010-12-04 00:59:32 EST
I will try to create snippet. I fixed it in class org.eclipse.birt.chart.computation.withaxes.PlotWith3DAxes, line 1460.

this code:

dpa[i] = new DataPointHints( oDataBase,
						oDataOrthogonal,
						oDataAncillary, <<<<<<<<
						percentileValue,
						seOrthogonal.getDataPoint( ),
						fsBase,
						fsOrthogonal,
						fsSeries,
						fsPercentile,
						i,
						lo3d,
						new double[]{
								dXLength, dZLength
						},
						rtc );

was changed to:

dpa[i] = new DataPointHints( oDataBase,
						oDataOrthogonal,
seOrthogonal.getSeriesIdentifier( ), <<<<<
						percentileValue,
						seOrthogonal.getDataPoint( ),
						fsBase,
						fsOrthogonal,
						fsSeries,
						fsPercentile,
						i,
						lo3d,
						new double[]{
								dXLength, dZLength
						},
						rtc );
Comment 3 Heng Li CLA 2010-12-06 01:23:08 EST
Now, I understand your meaning exactly, it seems a bug, here should be series identifier, I will fix it. Thanks!

(In reply to comment #2)
> I will try to create snippet. I fixed it in class
> org.eclipse.birt.chart.computation.withaxes.PlotWith3DAxes, line 1460.
> 
> this code:
> 
> dpa[i] = new DataPointHints( oDataBase,
>                         oDataOrthogonal,
>                         oDataAncillary, <<<<<<<<
>                         percentileValue,
>                         seOrthogonal.getDataPoint( ),
>                         fsBase,
>                         fsOrthogonal,
>                         fsSeries,
>                         fsPercentile,
>                         i,
>                         lo3d,
>                         new double[]{
>                                 dXLength, dZLength
>                         },
>                         rtc );
> 
> was changed to:
> 
> dpa[i] = new DataPointHints( oDataBase,
>                         oDataOrthogonal,
> seOrthogonal.getSeriesIdentifier( ), <<<<<
>                         percentileValue,
>                         seOrthogonal.getDataPoint( ),
>                         fsBase,
>                         fsOrthogonal,
>                         fsSeries,
>                         fsPercentile,
>                         i,
>                         lo3d,
>                         new double[]{
>                                 dXLength, dZLength
>                         },
>                         rtc );
Comment 4 Heng Li CLA 2010-12-06 01:33:33 EST
Fixed by using correct series identifier to initialize data point hints