Delphi Tchart x и y значения в увеличенном прямоугольнике - PullRequest
2 голосов
/ 06 января 2012

У меня есть ряд диаграмм, который содержит 5000 точек из базы данных.Я могу увеличить конкретный раздел данных с помощью мыши.Я хочу скопировать в буфер обмена (или текстовый файл) только те значения x и y, которые видны в подмножестве.Я могу легко получить доступ ко всей серии, однако мне не удалось понять, как получить доступ только к данным в увеличенном прямоугольнике.

Любая помощь приветствуется.Заранее спасибо Артур

Ответы [ 3 ]

0 голосов
/ 07 января 2012

Если вы можете представить любую точку из серии в виде структуры TPoint (например, с помощью функции Point()), а область просмотра - как TRect (например, с помощью Rect()), вы будете возможность использовать функцию PtInRect(), чтобы проверить, находится ли точка в увеличенном прямоугольнике:

if PtInRect(ZoomedRect, ChartPoint) then ...

Ссылки:

0 голосов
/ 09 января 2012

Это обсуждалось здесь . Надеюсь, что предложения здесь полезны для вас.

0 голосов
/ 07 января 2012

Диапазон индекса серии X в увеличенном прямоугольнике: [FirstValueIndex .. LastValueIndex].

Примечание: они доступны только после отображения значений.

Значение -1 означает, что должен использоваться весь диапазон. [0..Count-1]

Обновление:

И если вы также хотите обрезать значения Y, перейдите к указанным выше индексам и сравните их с leftAxis.Minimum и leftAxis.Maximum.

...