How to use a polar chart for astronomical appliance

TeeChart VCL for Borland/CodeGear/Embarcadero RAD Studio, Delphi and C++ Builder.
Post Reply
Dynamo
Newbie
Newbie
Posts: 1
Joined: Mon Jan 27, 2020 12:00 am

How to use a polar chart for astronomical appliance

Post by Dynamo » Tue Mar 24, 2020 1:14 pm

Hello to everyone! I would like to display the „satellites in view“ information from GPS data in a polar chart.

The information i have is:
  • The satellite ID (integer)
  • The signal strength (integer)
  • The azimuth angle (0..360 degrees)
  • The elevation angle (0..90 degrees)
I have a TChart on my VCL delphi form and i add a TPolarSeries programatically for each satellite.
With each TPolarSeries i do a AddPolar(AzimuthValue, ElevationValue).

This works basically with two odd things:
  • The Zero Azimuth Value starts at 3 o’ Clock position and increases counter clockwise. I would like to have the Zero Value at 12 o’ clock position and increments in clockwise direction.
  • The elevation Angle has its Zero Position in the center of the polar Chart. The maximum up to 90 degrees increase automatically at the outside of the chart. I would like to have the value of 90 degrees (Zenith) in the center of the chart and the value of 0 degrees on the outside of the chart.
In addition to the points above i would like to change the line thickness with every AddPolar to reflect the signal strength. Also i do not want to see the filled area and i do not want do see marks for every plot. Maybe a mark for the last plot... Basically i want to see the tracks that the satellites ‚draw‘ into the hemisphere. A nice to have would be a label at the last position for each track/series that would show the id of the given satellite.

Thanks alot for your help!
Jens
Attachments
PolarChart.png
PolarChart.png (79.44 KiB) Viewed 10162 times

Marc
Site Admin
Site Admin
Posts: 1272
Joined: Thu Oct 16, 2003 4:00 am
Location: Girona
Contact:

Re: How to use a polar chart for astronomical appliance

Post by Marc » Wed Mar 25, 2020 3:47 pm

Hello,

The first part of the question:
The Zero Azimuth Value starts at 3 o’ Clock position and increases counter clockwise. I would like to have the Zero Value at 12 o’ clock position and increments in clockwise direction.
You can set the "Rotated" property (in the Circled tab of the Series in the Editor) to 90º to bring 0º to the vertical.

You'll see a Clockwise property in the Labels tab of the Series in the Editor to change the direction the labels.

I'll take a look at the other part of your question.

Regards,
Marc Meumann
Steema Support

Marc
Site Admin
Site Admin
Posts: 1272
Joined: Thu Oct 16, 2003 4:00 am
Location: Girona
Contact:

Re: How to use a polar chart for astronomical appliance

Post by Marc » Thu Mar 26, 2020 11:22 am

Hello,

Re.
The elevation Angle has its Zero Position in the center of the polar Chart. The maximum up to 90 degrees increase automatically at the outside of the chart. I would like to have the value of 90 degrees (Zenith) in the center of the chart and the value of 0 degrees on the outside of the chart.

In addition to the points above i would like to change the line thickness with every AddPolar to reflect the signal strength.
These features are not possible with the current version of the TPolarSeries.
Also i do not want to see the filled area
You can regulate the fill transparency:

eg.

Code: Select all

Series1.Transparency := 40; //%
or just make it non-visible:
eg.

Code: Select all

Series1.Brush.Style := bsClear;
i do not want do see marks for every plot. Maybe a mark for the last plot...
Could do that via the Series Mark event:
eg.

Code: Select all

procedure TForm14.Series1GetMarkText(Sender: TChartSeries; ValueIndex: Integer;
  var MarkText: string);
begin
 if (ValueIndex <> Sender.Count-1) then
   MarkText := '';
end;
Regards,
Marc
Steema Support

Post Reply