[Lazarus] Installing Components
Technical
tech at polypressuk.co.uk
Sun May 30 11:28:24 CEST 2010
Alexander Klenin wrote:
> So let's take you as a representative sample ;-)
> Do you feel it is justified to remove these
> properties to get multiple reticules and TReticule.Pen property instead?
>
As I was browsing through the code last night, I was actually surprised
that the reticule pen property
was not already made public in TAChart. I'll have the check out the
LineDragTool--it sounds like it
will work better for what I want to do anyway. Rather than make so many
heavy changes to the reticule,
I wonder if it would be easier and more compatible to make a new tool
like LineDrag that can be configured
to snap to point and act like a reticule--or not. Perhaps at some point
later the reticule, with all its
hard-coded properties and marriage to mouse movements, could be
deprecated.
> However, what you want is not actually a job for reticules,
> since they are designed to follow cursor and data points.
> It is better performed by dragging TConstantLine-s
> In fact, similar feature request has already come up in the past,
> so I implemented it now -- see TConstantLineDragTool
> and toolsdemo at r25751
>
I don't mind the way the reticule snaps to data points for my current
application. I'm working with
discrete samples and any interpretation between data points is
meaningless anyway. Even if the
motion is made continuous, I still want to return discrete
horizontal-axis values:
(sample1, sample2, sample3...) or (0ms, 10ms, 20ms, 30ms ...), for
example. I haven't looked at the
new tool yet, but it would be neat if it had a couple properties to make
the motion continuous or discrete
and to make the returned value continuous or discrete. Combined with
the pen property, that should make
it able to replace the vertical reticule in functionality while still
allowing multiple instances, dragging, pen properties, etc.
If it was possible to have two vertical drag tools and two horizontal
drag tools, you could implement
measurement cursors on the chart that acted like oscilloscope cursors.
Very useful to me.
> This can be done, see "Linear transform" page in axis demo.
> Try changing Offset value of catTCelToFahr transformation.
> The most serious limitation is that you must calculate the offset (and
> scale, if needed),
> yourself -- TChart can not do this automatically based on series value range.
> This is the main point left for closing two long-standing tracker issues
I did check that out and it almost works for me. I'm displaying series
of the same height, so
I can use a scale of 1 and manually calculated offsets. I just have to
come up with a way to add
names for each series on the left of the chart. I think I can do it if
I hide every axis but the first one
and then name the visible axis similar to the "customized marks"
example. I want something like
CH1 -
CH2 -
CH3 -
where each series is vertically aligned with the label on the left.
I REALY like TAChart and TATools, by the way. Thanks for all the work
you've done maintaining and extending it.
-Rick
More information about the Lazarus
mailing list