Quick Drawline query

TeeChart for Microsoft Visual Studio .NET, Xamarin Studio (Android, iOS & Forms) & Monodevelop.
Post Reply
rossmc
Newbie
Newbie
Posts: 57
Joined: Wed Apr 08, 2009 12:00 am

Quick Drawline query

Post by rossmc » Thu Jun 02, 2011 12:21 pm

Hi

I use a drawline tool to enable users to 'drop' a vertical line on the face of the chart. I currently use the series minimum and maximum y values to determine the top and bottom points of the drawlineitem.

Is there a way to simply draw a line from the top axis, vertically down to the bottom axes without using series values but rather the actual co-ordinates of the top/bottom axes positions?

Sandra
Site Admin
Site Admin
Posts: 3132
Joined: Fri Nov 07, 2008 12:00 am

Re: Quick Drawline query

Post by Sandra » Thu Jun 02, 2011 3:27 pm

Hello rossmc,

I think you do something similar as next code:

Code: Select all

Steema.TeeChart.Styles.Points points1;
        Steema.TeeChart.Tools.DrawLine drawline1;
        private void InitializeChart()
        {
            tChart1.Aspect.View3D = false;
            tChart1.Legend.Visible = false;
            points1 = new Steema.TeeChart.Styles.Points(tChart1.Chart);
            points1.FillSampleValues();
            tChart1.Dock = DockStyle.Fill;
            drawline1 = new Steema.TeeChart.Tools.DrawLine(tChart1.Chart);
            Steema.TeeChart.Tools.DrawLineItem I = new Steema.TeeChart.Tools.DrawLineItem(drawline1);
            /* set the "Y" line positions (start and end position) */
            tChart1.Draw();
            I.StartPos = new Steema.TeeChart.Drawing.PointDouble(tChart1.Axes.Bottom.Minimum, tChart1.Axes.Left.Maximum);
            I.EndPos = new Steema.TeeChart.Drawing.PointDouble(tChart1.Axes.Bottom.Maximum, tChart1.Axes.Left.Minimum);
            drawline1.EnableDraw = false;
        }
Please, could you tell us if previous code works as you expected?

I hope will helps.

Thanks,
Best Regards,
Sandra Pazos / Development & Support
Steema Software
Avinguda Montilivi 33, 17003 Girona, Catalonia
Tel: 34 972 218 797
http://www.steema.com
Image Image Image Image Image Image
Instructions - How to post in this forum

rossmc
Newbie
Newbie
Posts: 57
Joined: Wed Apr 08, 2009 12:00 am

Re: Quick Drawline query

Post by rossmc » Fri Jun 03, 2011 6:30 am

Hello Sandra

Thanks for response. My way - using series min/max - and your way - using axes min/max - both do basically the same thing. What I have since discovered however is a problem I had in the past (while using ActiveX control) with using the cursor tool to mimic the behaviour I want has been resolved. Resolved for my purposes anyway.

What I am doing now is simply adding a vertical cursor tool where users elects to draw the vertical line. I then set it to not follow the mouse. This additionally means if user wants to reposition the line using the mouse this is all handled by the control instead of me writing a bunch of additional code.

So for now I plan to use the cursor tool instead of the drawline tool to achieve my needs.

rossmc
Newbie
Newbie
Posts: 57
Joined: Wed Apr 08, 2009 12:00 am

Re: Quick Drawline query

Post by rossmc » Mon Jun 06, 2011 8:40 am

Just a quick note on the above. I ran into some odd behaviour using the vertical cursor tool. When programatically adding a vertical cursor, regardless of what I set the .XValue parameter to, the cursor is always intially drawn in the center of the bottom axes. Here is the code for clarity:

Dim v As New Steema.TeeChart.Tools.CursorTool(mychart.Chart)
v.Tag = "line_Vertical"
v.Pen.Color = Color.Gray
v.FollowMouse = False
v.Style = Tools.CursorToolStyles.Vertical
v.XValue = value

The way I resolved this is a little worrying. I simply repeat the .XValue instruction twice! So after v.XValue = value in the sample above I added another line reading v.XValue = value.

Sandra
Site Admin
Site Admin
Posts: 3132
Joined: Fri Nov 07, 2008 12:00 am

Re: Quick Drawline query

Post by Sandra » Mon Jun 06, 2011 12:07 pm

Hello rossmc,

Next code using last version of TeeChart.Net

Code: Select all

Private Sub InitializeChart()
	tChart.Aspect.View3D = False
	Dim line1 As New Steema.TeeChart.Styles.Line(tChart.Chart)
	cursor = New Steema.TeeChart.Tools.CursorTool(tChart.Chart)
	line1.FillSampleValues()
	cursor.Style = Steema.TeeChart.Tools.CursorToolStyles.Vertical
	tChart.Draw()
	cursor.XValue = 3.0
End Sub
Can you please, check previous code works as you expected? And also, can you tell us which version of TeeChart are you using now?

Thanks,
Best Regards,
Sandra Pazos / Development & Support
Steema Software
Avinguda Montilivi 33, 17003 Girona, Catalonia
Tel: 34 972 218 797
http://www.steema.com
Image Image Image Image Image Image
Instructions - How to post in this forum

Post Reply