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 2460 - Chart does not render correctly when compiles with RAD Studio 11 works in RAD studio 10
Summary: Chart does not render correctly when compiles with RAD Studio 11 works in RAD...
Status: RESOLVED FIXED
Alias: None
Product: VCL TeeChart
Classification: Unclassified
Component: Chart (show other bugs)
Version: unspecified
Hardware: PC Windows
: High critical
Target Milestone: ---
Assignee: yeray alonso
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-09-19 14:02 EDT by SwingView Pro
Modified: 2022-09-20 10:03 EDT (History)
3 users (show)

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


Attachments
Screen Shots of rendering issue (452.92 KB, application/pdf)
2021-09-19 14:02 EDT, SwingView Pro
Details
Sample project the exhibits the behavior. (76.12 KB, application/zip)
2021-09-20 15:31 EDT, SwingView Pro
Details
Removed some libs that are not needed from the project. (75.74 KB, application/zip)
2021-09-20 16:23 EDT, SwingView Pro
Details

Note You need to log in before you can comment on or make changes to this bug.
Description SwingView Pro 2021-09-19 14:02:22 EDT
Created attachment 980 [details]
Screen Shots of rendering issue

I took the same code that works fine in RAD Studio 10 and compiled in the new RAD Studio 11.  I install the latest TeeChart components (33.210915) for the RAD Studio 11.  I compiled the code with not changes.  The chart does not render correctly as shown by the attachments. The background is blanked out.
Comment 1 yeray alonso 2021-09-20 04:05:51 EDT
I've tested the following code in both RAD 10.4 + TeeChart 2021.32 and RAD 11 + TeeChart 2021.33, and I've got no gradient in any of them.

uses VCLTee.Chart, VCLTee.TeeSurfa, VCLTee.TeeConst, VCLTee.TeeGDIPlus;

var Chart1: TChart;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Caption:=TeeMsg_Version;

  Chart1:=TChart.Create(Self);
  Chart1.Parent:=Self;
  Chart1.Align:=alClient;

  Chart1.View3D:=False;
  Chart1.Legend.Hide;

  Chart1.Axes.Bottom.SetMinMax(0, 11);
  Chart1.Axes.Left.SetMinMax(0, 11);

  with TContourSeries(Chart1.AddSeries(TContourSeries)) do
  begin
    FillSampleValues;
    Filled:=True;
  end;
end;

However, adding this to the code, makes the gradients to appear in both environments:

  Chart1.Gradient.Visible:=True;
  Chart1.Gradient.EndColor:=clGray;

  Chart1.Walls.Back.Transparent:=False;
  Chart1.Walls.Back.Gradient.Visible:=True;
  Chart1.Walls.Back.Gradient.StartColor:=clGray;
  Chart1.Walls.Back.Gradient.EndColor:=clWhite;

I'll close this as "invalid" for the moment.
If you still find problems with it, please arrange a simple example project we can run as-is to reproduce the problem here.
Comment 2 SwingView Pro 2021-09-20 15:29:19 EDT
Here is a C++ project the exhibits the issue.  Just double click on the chart to load the data file for the chart.  The ChartData.sfp should is in the debug folder.
Comment 3 SwingView Pro 2021-09-20 15:31:03 EDT
Created attachment 981 [details]
Sample project the exhibits the behavior.

Double click on the chart to load the chart data.
Comment 4 SwingView Pro 2021-09-20 16:23:21 EDT
Created attachment 982 [details]
Removed some libs that are not needed from the project.
Comment 5 marc meumann 2021-09-21 11:05:06 EDT
We're looking at this. The minimum palette colour is black in this example, that is rendering in the latest version of the code, didn't in previous version (to be revised).

Try this workaround code:

uses System.UITypes;

    with TContourSeries(Chart1[0]) do
    begin
      Levels.Items[0].Color := TAlphaColor($FFFFFFFF); //transparent
    end;
Comment 6 SwingView Pro 2021-09-21 16:49:51 EDT
The work around setting the first color to transparent works.

uses System.UITypes;

    with TContourSeries(Chart1[0]) do
    begin
      Levels.Items[0].Color := TAlphaColor($FFFFFFFF); //transparent
    end;