Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.03.2012, 14:13   #1
warma2d
Пользователь
 
Аватар для warma2d
 
Регистрация: 17.12.2008
Сообщений: 50
Вопрос Как построить в Delphi окружность ? Chart

Здравствуйте!

Помогите пожалуйста построить в Delphi окружность с помощью Chart. Как я понимаю, это нужно без использования Canvas.
Построить окружность самым простым и доступным способом, т.е. задаётся только Радиус окружности.

Как я понимаю, функция должна быть y:=SQRT(SQR(R)-SQR(x)) и нужно с помощью цикла перебрать некие значения икса?

Однако у меня рисует то 1/4 окружности, то параболу, но не окружность

Вот моя наработка:

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
xH,xk,h,x,y:real;
r:real;
begin
Series1.Clear;
  XH:=-10;
xk:=10;
h:=1;
R:=StrtoFloat (Edit1.Text);
x:=XH;
    repeat
      y:=SQRT(SQR(R)-SQR(x)) ;
     Series1.AddXY(x,y);
       x:=x+h;
    until x>xk;

  end;

end.
Заранее Спасибо!
Skype: warma2d
ICQ: 838012
mail warma2d@ya.ru

Последний раз редактировалось warma2d; 04.03.2012 в 15:53.
warma2d вне форума Ответить с цитированием
Старый 04.03.2012, 15:19   #2
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию

Тебе сюда надо
Если помог, проси поставить минус. Будь оригинален!
Rin вне форума Ответить с цитированием
Старый 04.03.2012, 15:56   #3
warma2d
Пользователь
 
Аватар для warma2d
 
Регистрация: 17.12.2008
Сообщений: 50
По умолчанию

Спасибо за ответ Rin, но признаю, что я не понял.
(я глупыш)

Как построить окружность без Canvas, а только с помощью Chart?
Skype: warma2d
ICQ: 838012
mail warma2d@ya.ru
warma2d вне форума Ответить с цитированием
Старый 04.03.2012, 16:53   #4
phasha
Форумчанин
 
Регистрация: 24.03.2011
Сообщений: 130
По умолчанию

Series1 что это?какой тип? тоже попробовать нарисовать хочу))
phasha вне форума Ответить с цитированием
Старый 04.03.2012, 19:17   #5
warma2d
Пользователь
 
Аватар для warma2d
 
Регистрация: 17.12.2008
Сообщений: 50
Печаль

Цитата:
Сообщение от phasha Посмотреть сообщение
Series1 что это?какой тип? тоже попробовать нарисовать хочу))
Нужно на форму добавить компоненту Chart из вкладки Additional. Затем щелкнуть два раза на график (chart), который у вас появился на форме. И добавить уже конкретный тип графика, который Вы хотите использовать 2d/3d, линейный, диаграммный и т.д.
После этого, в коде, Вам и потребуется
Код:
Series1.AddXY(x,y);
Однако у меня, к сожалению, вопрос так и остался:
как же можно построить окружность без Canvas, а только с помощью Chart ?
Skype: warma2d
ICQ: 838012
mail warma2d@ya.ru
warma2d вне форума Ответить с цитированием
Старый 04.03.2012, 19:23   #6
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

читайте
http://it.kgsu.ru/DelAdd/deladd19.html
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 04.03.2012, 19:27   #7
phasha
Форумчанин
 
Регистрация: 24.03.2011
Сообщений: 130
По умолчанию

да у меня просто проснулся интерес и правда как нарисовать,может кинешь исходник?а можешь еще сам попробовать y:=sqr(r)+sqr(x)-1 =)
95% что не правильно но все же из графиков помню что у^2+x^2=1 ВРОДЕ БЫ формула окружности
phasha вне форума Ответить с цитированием
Старый 04.03.2012, 19:42   #8
warma2d
Пользователь
 
Аватар для warma2d
 
Регистрация: 17.12.2008
Сообщений: 50
По умолчанию

phasha, формула окружности точно
Код:
sqr(x)+sqr(y)=sqr(R)


Hacker19_90, Благодарю за ответ.

Нет, я понимаю, что я не "профессионал", а скорее "чайник" в Delphi, но кое-что знаю.
Вашу ссылку уже прочитал. Увы она мне не помогла. То есть про окружность или круг там ничего не было...
Skype: warma2d
ICQ: 838012
mail warma2d@ya.ru
warma2d вне форума Ответить с цитированием
Старый 04.03.2012, 20:35   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Series1.XValues.Order:=loNone;
И будет автору счастье
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.03.2012, 20:56   #10
warma2d
Пользователь
 
Аватар для warma2d
 
Регистрация: 17.12.2008
Сообщений: 50
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Series1.XValues.Order:=loNone;
И будет автору счастье
Спасибо огромное Stilet!
Ваш ответ мне реально помог.
А именно нашёл на English сайте:
Код:
Var t:Integer;
begin
  Series1.XValues.Order:=loNone ;
  for t:=0 to 360 do Series1.AddXY( Sin(t*Pi/180.0), 
Cos(t*Pi/180.0), '', clRed );
end;
Это реально работает

Однако, если Вы имели в виду использовать, Series1.XValues.Order:=loNone; в голом виде, т.е. в моём коде, то я не понял как это можно сделать.

Не смотря на то, что теперь понятно, как можно построить окружность, я так и не разобрался, как можно изменять его радиус ?
Skype: warma2d
ICQ: 838012
mail warma2d@ya.ru

Последний раз редактировалось warma2d; 04.03.2012 в 21:01.
warma2d вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi. Окружность по Брэзенхему. Muaxaxa Помощь студентам 5 23.10.2011 21:16
Построить окружность в Delphi scorp93 Помощь студентам 1 23.01.2011 16:27
Как построить петлю магнитного гистерезиса в Delphi 1408sunwell23 Общие вопросы Delphi 2 17.12.2010 22:14
(С++)построить окружность, проходящую через k>=3 точек каждого из двух множеств... Suitable Помощь студентам 1 18.01.2009 23:19
Построить треугольник по координатам его вершин и описать около него окружность. Lion Помощь студентам 22 01.04.2008 23:37