Page 1 of 1

Various Smith Series problems

Posted: Thu Oct 12, 2006 12:43 pm
by 9642212
Hi,

1.
When I use a Smith Series, no symbol is shown in the legend. It should be perfectly possible (e.g. similar to symbol used for a CustomPolar Series), so I expect it isn't implemented yet.

Image


2.
I get some strange output from the PointToRadius function. It doesn't always return the value I would expect.
I've made a simple example to demonstrate the problem. It just contains a form with a TChart that contains one Smith Series. The form also has a button on it. This is the relevant code:

Code: Select all

public Form1()
{
    InitializeComponent();
    smith1.FillSampleValues();
    Console.WriteLine("Radius: " + smith1.PointToRadius(smith1.CircleXCenter, smith1.CircleYCenter));
}

private void button1_Click(object sender, EventArgs e)
{
    Console.WriteLine("Radius: " + smith1.PointToRadius(smith1.CircleXCenter, smith1.CircleYCenter));
}
The WriteLine in the form constructor prints out what you would expect; being "Radius: 0". However when you press the button, the WriteLine in the Click EventHandler prints out "Radius: 0.152". Any idea why this is happening?

3.
The CursorTool on a Smith Series is not usable.
If you enable it to snap to the plot, it snaps to various irrelevant locations.
The XValue and YValue property do not return a value that is related to the Smith Chart (got the impression that it is related to the horizontal and vertical axis, which aren't used). I expect that this is calculated based on the GetHorizAxis and GetVertAxis, but if the associated Series UseAxis property is false (e.g. Smith Series), this should not be the correct way to do so.
This can be easily reproduced with the following code:

Code: Select all

public Form1()
{
    InitializeComponent();

    smith1.FillSampleValues();
    cursorTool1.Change += new Steema.TeeChart.Tools.CursorChangeEventHandler(cursorTool1_Change);
}

void cursorTool1_Change(object sender, Steema.TeeChart.Tools.CursorChangeEventArgs e)
{
    Console.WriteLine("X: " + cursorTool1.XValue + " / Y: " + cursorTool1.YValue);
}
Regards

Posted: Fri Oct 13, 2006 8:28 am
by narcis
Hi dimitrig,

Please find below the answers to your questions:

1. This is not available for now. However we are going to implement it for next releases.

2. Are you using Circled property set to true?

3. Cursor tool doesn't support snap feature for any circular series. We are going to implement this for future releases.

Posted: Fri Oct 13, 2006 9:18 am
by Marjan
Hi.

#1 has just been added to Smith series (DrawLegendShape method). The fix will be included in next maintenance release.

Posted: Fri Oct 13, 2006 10:42 am
by 9642212
Hi,

1. Great that it has been added... thanks.

2. This behavior is independent of the Circled property. It doesn't matter if it is set to True or not, the result is the same.

I actually noticed this problem in a more complex situation, but I narrowed it down in a simple demonstrator (cfr. the code).

Just to give you an idea how I stumbled upon it and what a more realistic scenario would be:
---
In the complex situation, I use a cursor tool and try to calculate the smith values associated with the cursor position. This can only be done by the PointToRadius and PointToAngle function, using the screen pixel position of the cursor.
If I move the cursor, I print out the radius and angle. The radius gives irrelevant readings, but at first sight the angle seems ok.
What is weirder, is that the numbers fluctuate for the same cursor position depending on how you get there. So if I move the cursor to a certain screen position, then move it around for a while, and then move it back, sometimes the radius' reading is totally different.
---

3. Ok... thanks.