Steema Issues Database

Note: This database is for bugs and wishes only. For technical support help, if you are a customer please visit our online forums;
otherwise you can use StackOverflow.
Before using this bug-tracker we recommend a look at this document, Steema Bug Fixing Policy.



Bug 939 - [TV52013467] Using code below and exploding smalles slice produces a wrong pie, se...
Summary: [TV52013467] Using code below and exploding smalles slice produces a wrong pi...
Status: CONFIRMED
Alias: None
Product: VCL TeeChart
Classification: Unclassified
Component: Series (show other bugs)
Version: unspecified
Hardware: All All
: Normal major
Target Milestone: ---
Assignee: Steema Issue Manager
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-10-17 12:50 EDT by narcís calvet
Modified: 2014-10-10 13:17 EDT (History)
1 user (show)

See Also:
Chart Series: ---
Delphi / C++ Builder RAD IDE Version:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description narcís calvet 2014-10-02 05:12:17 EDT
Using code below and exploding smalles slice produces a wrong pie, see attached image. Same happens with the .NET version.
uses Series;

procedure TForm1.FormCreate(Sender: TObject);
var Series1: TPieSeries;
begin
 Series1:=TPieSeries.Create(self);
 Chart1.AddSeries(Series1);
 //Series1.YValues.Order := loAscending;
 Series1.Add(4.7, 'test value 2', clTeeColor);
 Series1.Add(95.3, 'test value 1', clTeeColor);
 //Series1.YValues.Sort;
end;
A complete redesign of how exploded slices are painted is necessary. Slices should be broken into polygons forming them and check which polygons should be drawn first (regardless the slice they belong to), not which slices.

This already works in OpenGL and may be part of the scope of new Blocks feature. [created:2008-10-17T12:50:54.000+02:00 reported by:narcis@steema.com reported in version:8.04 (TeeChart VCL)]
Comment 1 david berneda 2014-10-10 13:17:03 EDT
A sorted list of slices polygons might work, but there are still some cases where the Z order is not determined by the Z of the polygon, as slice polygons have multiple "Z" (they are curves in 3D space).

OpenGL works at pixel-level, not at polygon level, and this is why pixels get correctly hidden or displayed depending on the Z of each pixel.

One possible solution to this problem might be using clipping, an accumulated path made of preview slice curves, that will hide contents when displaying new slices on top.