Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Масштабирование c формы в Chart, не получается смасштабировать, ПОМОГИТЕ! 
:(
    Опции темы
sabbatazh
  Дата 10.9.2008, 08:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 17.7.2008

Репутация: нет
Всего: нет



Здравствуйте Всем!!!!
Помогите!!!
с масштадированием разобрался!!! от оно как...

Код

procedure TForm1.Button8Click(Sender: TObject);
var MinX, MaxX, MinY, MaxY: Double;
begin
   MinX:= StrToFloat(Edit13.Text);
   MaxX:= StrToFloat(Edit14.Text);
   MinY:= StrToFloat(Edit1.Text);
   MaxY:= StrToFloat(Edit12.Text);

 if (MinX > MaxX) or (MinY > MaxY) then begin
   if (MinX > MaxX) then MessageDlg('MinX > MaxX',mtError,[mbOK],0);
   if (MinY > MaxY) then MessageDlg('MinY > MaxY',mtError,[mbOK],0)
 end else begin

  if (MinX = 0) and (MaxX = 0) then
     Chart1.BottomAxis.Automatic:= True
  else
    with Chart1.BottomAxis do begin
      Automatic:=False;
      Minimum:= MinX;
      Maximum:= MaxX;
    end;

  if (MinY = 0) and (MaxY = 0) then
     Chart1.LeftAxis.Automatic:= True
  else
    with Chart1.LeftAxis do begin
      Automatic:=False;
      Minimum:= MinY;
      Maximum:= MaxY;
    end;
 end;
end;


Теперь возник другой вопрос, связанный с масшабированием:
"При перемещении графика мышью изменяется начало и конец графика, как прочитать параметры изменения положения графика ?????"  

честно перепробывал все и в инете рылся не нашел, и форум пересмотрел подобного нет!....

Помогите плиз!!!! Очень нада!!!!  smile 
PM MAIL   Вверх
Staruha
Дата 10.9.2008, 08:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: нет
Всего: 27



У мышки есть координаты x и y.Для начала поймай место захвата


--------------------
Возмездие настигнет
PM MAIL   Вверх
sabbatazh
Дата 10.9.2008, 08:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 17.7.2008

Репутация: нет
Всего: нет



да есть, и что?! я не пойму.... пробывал разное!!!
Код

procedure TForm1.Chart1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 if Button = mbRight then begin   
    //udMinX:= Trunc(Chart1.BottomAxis.CalcPosPoint(X));
    //udMaxX:= udMaxX+ X;// 
 end;
end;


Получается бредьня!!!!

и ниче не получилось.... Подскажи!!! Я может чет не догоняю!!!

Это сообщение отредактировал(а) sabbatazh - 10.9.2008, 08:53
PM MAIL   Вверх
Alexeis
Дата 10.9.2008, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 55
Всего: 459



Цитата(sabbatazh @  10.9.2008,  07:20 Найти цитируемый пост)
"При перемещении графика мышью изменяется начало и конец графика, как прочитать параметры изменения положения графика ?????"  

  Спокойно, не нужно так нервничать. Если изменяются координаты точек, разве не проще прочитать из чарта новый исправленный массив точек?


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
sabbatazh
Дата 10.9.2008, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 17.7.2008

Репутация: нет
Всего: нет



а как єто сделать, я не сильно с компонентом знаком...
PM MAIL   Вверх
Alexeis
Дата 10.9.2008, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 55
Всего: 459



Цитата(sabbatazh @  10.9.2008,  09:08 Найти цитируемый пост)
а как єто сделать, я не сильно с компонентом знаком... 

Заполняем чарт
Код

  Series1.AddXY(12, 14);
  Series1.AddXY(13, 15);
  Series1.AddXY(14, 16);


Читаем значения точек

Код

  ShowMessage(FloatToStr(Series1.YValues[0]) + ' ' +  FloatToStr(Series1.YValues[1]))


Тоже самое есть и для абсцисс.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
sabbatazh
Дата 10.9.2008, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 17.7.2008

Репутация: нет
Всего: нет



а как выкрутится усли у меня массив серий?
PM MAIL   Вверх
Alexeis
Дата 10.9.2008, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 55
Всего: 459



Тоже самое у чарта же свой масив серий.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
sabbatazh
Дата 10.9.2008, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 17.7.2008

Репутация: нет
Всего: нет



Цитата(Alexeis @ 10.9.2008,  11:58)
Тоже самое у чарта же свой масив серий.

я делаю такую штуку, создаю много серий:
Код

var SignalSeriesOut: array of TLineSeries;
....

procedure CreateSeries;
var i: integer;    
begin
  SetLength(SignalSeriesOut, (arrayDimension_I*arrayDimension_J));

   for i:= 0 to arrayDimension_I*arrayDimension_J- 1 do begin
       SignalSeriesOut[i]:= TLineSeries.Create(Form1.Chart1);
       SignalSeriesOut[i].ParentChart:= Form1.Chart1;
       //SignalSeriesOut[i].ColorEachPoint:= true;
       //SignalSeriesOut[i].SeriesColor:= clRed;
       SignalSeriesOut[i].ShowInLegend:= false;
       SignalSeriesOut[i].Active:= false;
       SignalSeriesOut[i].LinePen.Width:= 2;
       SignalSeriesOut[i].Marks.Visible:= false;
   end;
end;


От почему мне нада к Чар обращаться... smile 

Это сообщение отредактировал(а) sabbatazh - 10.9.2008, 15:59
PM MAIL   Вверх
Alexeis
Дата 10.9.2008, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 55
Всего: 459



Цитата(sabbatazh @  10.9.2008,  14:56 Найти цитируемый пост)
От почему мне нада к Чар обращаться...

Обращайся к чему хош, я думал что ты используешь встроенный массив серий чарта. Нет так нет smile . В чем собсно вопрос? Как обратиться к элементу массива?


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
sabbatazh
Дата 10.9.2008, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 17.7.2008

Репутация: нет
Всего: нет



Alexeis

НЕТ!!!!

Значит:  
  Есть построенный график, знаю начоло и конец его, например Х1 = 0, а Хр = 100, вот он весь на экране (ну много графиков на экране - массив серии). Потом, увеличиваю или масштабирую график_и до определенного размера шоб чтот видно было и я вижу часть графика, так вот: "как мне узнать эти _Х1 и _Хр уже для увеличенного графика?", вот в чем вопрос. 
  Я просто не пойму как это сделать, уже все перепробывал что знал по Чар и нашел в литературе.... не доходит до меня пока как это сделать!!!
PM MAIL   Вверх
Alexeis
Дата 10.9.2008, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 55
Всего: 459



Цитата(sabbatazh @  10.9.2008,  17:40 Найти цитируемый пост)
Потом, увеличиваю или масштабирую график_и до определенного размера шоб чтот видно было и я вижу часть графика, так вот: "как мне узнать эти _Х1 и _Хр уже для увеличенного графика?", вот в чем вопрос. 

  т.е. график теперь обрезанный и нужно найти координаты начала и конца уже обрезанной части графика?


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
sabbatazh
Дата 10.9.2008, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 17.7.2008

Репутация: нет
Всего: нет



ООООО ДА!!!!!!!! smile  smile 
PM MAIL   Вверх
Alexeis
Дата 10.9.2008, 22:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 55
Всего: 459



Гм.. это сложнее не уверен что возможно.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
sabbatazh
Дата 18.9.2008, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 17.7.2008

Репутация: нет
Всего: нет



Пробую такую штуку, типа:

Код
  SB.Panels[1].Text := Format('%.2f-%.2f',[Chart.BottomAxis.Minimum, Chart.BottomAxis.Maximum]);



вываливает ошибку, не пойму чего.... как еще мона боротся??? smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.2827 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.