DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Autoscaling algorithm

Solved!
Go to solution

Hallo Everyone,

I need to figure out the algorithm of the automatic Scaling in DIAdem for Diagramms.

Or at least if I put a Diagram on Autoscale to read min max and Tick-Step.

 

is this possible?

 

I need that for my Reports which are very high automatisated and depending on the size of the numbers other objects have to move.

 

Thanks in advance

 

STG82

0 Kudos
Message 1 of 5
(4,551 Views)

Hi STG82,

 

Would you please describe what you are wanting to accomplish?  If you are unsatisfied with DIAdem's automatic axis scaling, then you can apply your own algorithm-- do you know what approach would accomplish your scaling goals?

 

Brad Turpin

DIAdem Product Support Engineer

National Instruments

0 Kudos
Message 2 of 5
(4,527 Views)

Hallo Brad,

I´m fully satisfied with the Automatic Scaling itself.

 

My Problem is that I use a 2Y-Time Diagram in my Report (for all Channels the Same Report-Template) and that depending of the scaling 2 Objects have to move.

Like if my Left Y-Scale is from -2 to 0 to 2 the Object shall be closer to the diagram than if the Scale would be -1500 to 4500 for example.

 

So what I would like to do is taking the Auto-Scale algorithm and then read the numbers for TickStep, Min and Max

no matter if I read it out in the Report or in the script.

 

I hope u know what i mean and that it is possible. I work already on a autoscale algorithm by myself, but the NI algorithm is really nice already.

 

Thanks in advance and best regards

STG82

0 Kudos
Message 3 of 5
(4,517 Views)
Solution
Accepted by topic author STG82

Hi STG82,

 

You can reference the Y axes by either name or index-- here is the name method:

 

Dim Ystart(2), Ystop(2), Ystep(2)

Call PicUpdate
Call GraphObjOpen("2DAxis1")
  Call GraphObjOpen("2DAxis1_YAxis1")
    Ystart(1) = D2AxisYBegin
    Ystop(1)  = D2AxisYEnd
    Ystep(1)  = D2AxisYTick
  Call GraphObjClose("2DAxis1_YAxis1")
  Call GraphObjOpen("2DAxis1_YAxis2")
    Ystart(2) = D2AxisYBegin
    Ystop(2)  = D2AxisYEnd
    Ystep(2)  = D2AxisYTick
  Call GraphObjClose("2DAxis1_YAxis2")
Call GraphObjClose("2DAxis1")
Call PicUpdate

MsgBox Ystart(1) & vbTAB & Ystep(1) & vbTAB & Ystop(1) & vbCRLF & Ystart(2) & vbTAB & Ystep(2) & vbTAB & Ystop(2)

 

Brad Turpin

DIAdem Product Support Engineer

National Instruments

0 Kudos
Message 4 of 5
(4,509 Views)

Muchas de muchas Gracias.

Vielen Dank.

Thanks a lot.

 

That was exactly what I was looking for. In between i wrote an algorithm which is as exact as the DIAdem-Auto-Scale... but with just reading MIN MAX and TICK I´m more satisfied.

 

I tried a lot to read that numbers, but I didn´t get the right idea.

 

Thanks a lot

STG82

0 Kudos
Message 5 of 5
(4,497 Views)