Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Lumma
Зарегистрирован: 25.05.2007 Сообщения: 2
|
Добавлено: Пт Май 25 2007 11:52 Заголовок сообщения: Билдер, гиперболы |
|
|
Пробежалась по назаниям тем, немного смутилась, т.к. кажется, мой вопрос покажется детским лепетом, но все же рискну задать:
Как задавать интервал и выводить сами точки ( ведь при подстановке в формулу получаются бробные значения, а потом автоматом оно округляется.....) на компоненте Image( через Canvas), чтобы построить ветвь гиперболы ( в первой четверти).
Я не могу построить этот график, помогите. |
|
Вернуться к началу |
|
|
Dimasm
Зарегистрирован: 25.04.2005 Сообщения: 454
|
Добавлено: Сб Май 26 2007 07:44 Заголовок сообщения: |
|
|
Всё там нормально строится...
1. определитесь с масштабом. т.е например, 100 пикселей, есть 1 единица.
И когда y(0.24) = 0.5, то y на канве = 0.5*(100/1)=50
а x = 0.24*(100/1)=24пикселя
2. для человека привычно, когда координатные оси идут вверх(Y) и вправо (X)
у канывы ось X - слева на право, а ось Y - сверху вниз...
надо корректировать Y
с учётом примера выше - Y = Image1->Height - 0.5*(100/1)
3. если вы хотите сместить центр координат в середину Image, то
Код: | X = 0.24*(100/1) + Image->Width/2;
Y = Image1->Height - 0.5*(100/1) + Image1->Height/2; |
и рисуйте в любых четвертях
4. не знаю на счёт Dephi, но Builder я столкнулся с проблеммой округления
т.е. 0.5*(100/1) может быть не одно и тоже что и 0.5*(100.0/1.0)
если вы вводите целочисленные коэфициенты 1,2,20... то лучше записываейте их как 1.0,2.0,30.0 или 1., 2., 30.
если в "точные" рассчёты подставляете величины типа INT, то это надо делать преобразование типов...
Код: | int k = 27;
float s = 1.55*float(k);
или
float s = 1.55*(float)k; |
5. есть отличный компанент TChart - по моему там можно построить любой график. в папке с примерами (и у Builder и у Delphi) есть пример приложения с TChart. _________________ С уважением Dimasm |
|
Вернуться к началу |
|
|
Lumma
Зарегистрирован: 25.05.2007 Сообщения: 2
|
Добавлено: Сб Май 26 2007 12:26 Заголовок сообщения: |
|
|
Спасибо огромное за столь раскрытый в интересующих меня моментах ответ! ОказываетсЯ, если перестать биться в истнрике, можно нормально все построить-> при нормальном исследовании вопроса, график оказался параболой, просто до такой степени развернутой, что сразу ринулась искать асимптоты Но это лирика,
а насчет практики, буду стараться задавать более существенные вопросы впредь. |
|
Вернуться к началу |
|
|
|