Spirala v delphi

Programovacie jazyky, rady, poradňa...
RoQa
Darca
Darca
Používateľov profilový obrázok
Príspevky: 2613
Registrovaný: 16 mar 2007, 22:21
Bydlisko: BA<->Východ
Kontaktovať používateľa:

Spirala v delphi

Príspevok od používateľa RoQa »

potrebujem niekoho kto by mi spravil aby mi kreslilo spiralu v dephi s nejakym vysvetlenim . dakujem
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

Kód: Vybrať všetko

procedure TForm1.FormCreate(Sender: TObject);
begin
  r:=10;  //pociatocny polomer
  uhol:=0;  //pocitocny uhol (r a uhol su globalne premenne)
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var x,y:integer;
    nx,ny:integer;
begin
   x:=image1.Width div 2;  //stred vykreslovania
   y:=image1.height div 2;
   nx:= round(x + r*cos(uhol / 180 * PI)); //vyratanie novej pozicie
   ny:= round(y + r*sin(uhol / 180 * PI));
   inc(uhol);  //zvysenie uhla
   if(uhol mod 45)=0 then inc(r); //aby sme nekreslili kruh, treba zvysovat polomer.
   image1.Canvas.Pixels[nx,ny]:=clBlack;  //vykreslenie bodu
end;
Prílohy
spirala.rar
(163.11 KiB) 46 stiahnutí
RoQa
Darca
Darca
Používateľov profilový obrázok
Príspevky: 2613
Registrovaný: 16 mar 2007, 22:21
Bydlisko: BA<->Východ
Kontaktovať používateľa:

Príspevok od používateľa RoQa »

dik moc som vedel ,ze ma nesklames :D :D ani nevies ako si mi pomohol .... btw... ked stiahnem delphi 7 na zaciatku to pyta kod odkial ho mam vziat ? ked dam join now tak stranku mi nenajde.. :/
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

nie sme warez, to je tvoja vec kde si ho nájdeš :)
RoQa
Darca
Darca
Používateľov profilový obrázok
Príspevky: 2613
Registrovaný: 16 mar 2007, 22:21
Bydlisko: BA<->Východ
Kontaktovať používateľa:

Príspevok od používateľa RoQa »

ale je na stahuj.cz ako freeware preto sa pytam :D // uz som pochopil ze to treba zaregistrovat bezplatne :D
LordMMX
Light Expert
Light Expert
Používateľov profilový obrázok
Príspevky: 75
Registrovaný: 25 okt 2008, 17:34
Bydlisko: Halič City
Kontaktovať používateľa:

Príspevok od používateľa LordMMX »

tak tak... Delphi 7 Personal existuje... a ten je zadara
RoQa
Darca
Darca
Používateľov profilový obrázok
Príspevky: 2613
Registrovaný: 16 mar 2007, 22:21
Bydlisko: BA<->Východ
Kontaktovať používateľa:

Príspevok od používateľa RoQa »

Audiotrack alebo niekto ochotny ak by sa dalo tam este hodit nejaky Edit/Memo a ktomu neviem ale asi bude treba Button a aby to bolo tak aby som pociuatocny uhol zadal do mema / Editu .... Dik moc

btw. tomu moc nechapem ''//vyratanie novej pozicie'' .... a este keby sa dala zvacsit ta perioda po ktorej sa to vykresluje aby to bolo rychlejsie lebo v timeri som dal 1 ale stale je to pomaly :(
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

bude to rýchlejšie keď dáš vyšší polomer, toto sa ti zdá pomaly lebo vykresluje veľa bodov blízko seba. Keď špirála trochu "narastie" bude sa kresliť rýchlejšie. (prípadne môžeš v jednom cykle timeru vykresliť viac bodov ako jeden) Čo sa týka toho že nechápeš vyrátavaniu toho nového bodu, s tým ja nič nenarobím. Treba dávať pozor v škole, tieto vzorce vychádzajú zo vzorca pre kružnicu a učia sa na strednej. Taktiež aby to bolo rýchlejšie, treba periodu znížiť a nie zväčšiť, že ty nedávaš v škole moc pozor? ;)
Prílohy
spirala2.rar
(175.08 KiB) 36 stiahnutí
RoQa
Darca
Darca
Používateľov profilový obrázok
Príspevky: 2613
Registrovaný: 16 mar 2007, 22:21
Bydlisko: BA<->Východ
Kontaktovať používateľa:

Príspevok od používateľa RoQa »

audiotrack napísal:...Taktiež aby to bolo rýchlejšie, treba periodu znížiť a nie zväčšiť, že ty nedávaš v škole moc pozor? ;)
tak mi to povedal ucitel :D asi nedava moc pozor :D ale dik :D

//autoeditácia príspevku ( 12 May 2009, 21:16 )
mohol by si mi este napisat co znamena kazdy z krokov

Kód: Vybrať všetko

r:=strtoint(edit1.text);
  uhol:=strtoint(edit2.text);
  image1.Canvas.Rectangle(0,0,image1.width,image1.height);
  timer1.Enabled:=true;
+ naco sa pouziva ten XPmanifest ? dík :)
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

XPmanifest je aby boli komponenty v XP štýle a nie tom starom win 98 štýle (tie edity a tlačidlo)

Kód: Vybrať všetko

r:=strtoint(edit1.text);
do r uloží číselnú hodnotu z edit1

Kód: Vybrať všetko

uhol:=strtoint(edit2.text);
to isté s uhlom

Kód: Vybrať všetko

image1.Canvas.Rectangle(0,0,image1.width,image1.height);
vykreslenie štvorca cez celý canvas (aby som zmazal čo bolo doteraz nakreslené)

Kód: Vybrať všetko

timer1.Enabled:=true;
zapnutie timeru /zabudol som to zmazať, netreba to/


a mal by si porozmýšlať nad nejakou knihou alebo návodmi. Keď nevieš základné veci (ako priradiť hodnotu z editu do premennej), tak ma to s tebou rýchlo prestane baviť :)
RoQa
Darca
Darca
Používateľov profilový obrázok
Príspevky: 2613
Registrovaný: 16 mar 2007, 22:21
Bydlisko: BA<->Východ
Kontaktovať používateľa:

Príspevok od používateľa RoQa »

ok ok ja som to tak robil len som tam nedal

Kód: Vybrať všetko

 image1.Canvas.Rectangle(0,0,image1.width,image1.height);
a stale v kuse mi to kreslilo :D
Napísať odpoveď