Page 1 of 1

TRoseChart Zoom

Posted: Tue Sep 10, 2013 10:24 am
by 16566643
Hi,

I would like to zoom in on a Rose Chart but when I zoom in using the mouse wheel chart only zooms on one axis, is there any way to force it to do this correctly and also clip the rose to the bounds of the circle?

Regards,
Sean.

Image

Re: TRoseChart Zoom

Posted: Thu Sep 12, 2013 3:53 pm
by yeray
Hi,

I can't reproduce no one of the reported issues with the following code and TeeChart v2013.08:

Code: Select all

uses TeeRose;

var Chart1: TChart;

procedure TForm1.FormCreate(Sender: TObject);
var i: Integer;
begin
  Chart1:=TChart.Create(Self);
  Chart1.Parent:=Self;
  Chart1.Align:=alClient;

  Chart1.View3D:=false;

  for i:=0 to 4 do
  with Chart1.AddSeries(TRoseSeries) as TRoseSeries do
  begin
    FillSampleValues;
    Pointer.Visible:=false;
  end;
end;
What TeeChart version are you using?
Could you please arrange a simple example project we can run as-is to reproduce the problems here?
Thanks in advance.

Re: TRoseChart Zoom

Posted: Tue Sep 24, 2013 9:36 am
by 16566643
The same problem also occurs in the TeeChart Pro Examples app, just scroll your mouse wheel over the rose chart...
RoseZoom.jpg
RoseZoom.jpg (62.82 KiB) Viewed 6419 times
I am using Build 2013.08.130521

Sean.

Re: TRoseChart Zoom

Posted: Tue Sep 24, 2013 10:40 am
by narcis
Hi Sean,

Thanks for your feedback. I could reproduce the issue here and added it (TV52016726) to the defect list to be implemented in future releases.
clip the rose to the bounds of the circle?
You can clip the rose to the chart rectangle bounds like this:

Code: Select all

procedure TForm2.Series1AfterDrawValues(Sender: TObject);
begin
  Chart1.Canvas.UnClipRectangle;
end;

procedure TForm2.Series1BeforeDrawValues(Sender: TObject);
begin
  Chart1.Canvas.ClipRectangle(Chart1.ChartRect);
end;

Re: TRoseChart Zoom

Posted: Wed Nov 13, 2013 3:17 pm
by narcis
Hi Sean,

As an update, setting TChart.ClipPoints to true already clips the series, for example:

Code: Select all

  Chart1.ClipPoints:=True;