Ahojte, je tu niekto kto vie programovať v lazaruse? Prosím pomôžte mi s domácou úlohou: Napíšte program, ktorý na uhlopriečku grafickej plochy z pravého horného rohu do ľavého dolného rohu nakreslí 10 farebných kruhov, ktoré budú rovnomerne rozostavené.
x1, y1 sú súradnice ľavého horného rohu, x2, y2 sú súradnice pravého dolného, do pomyselného štvorca alebo obdĺžnika týmito súradnicami definovaného ti to spraví vpísanú kružnicu alebo elipsu.
2. ľavý horný roh obrazovky má súradnice 0,0
pravý dolný roh obrazovky má súradnice šírka_obrazovky,výška_obrazovky.
3. kruhy kreslíš na uhlopriečku, malo by sa to dať vrámci jedného cyklu.
@ ja chcem z praveho horneho rohu do laveho dolneho.. a ja o vobec neviem, snazim sa.. uz asi 4 hodiny.. vselijak to robim, ale viem to urobit len z laveho horneho do prraveho
@3 naozaj ti velmi dakujem, ale ako to mam dat do cyklu?prosím, pomôž mi ešte.. si to tu naozaj rysujem, vselijak pocitam, skusam, ale ja ro neviem..som zufala
Image1.Canvas.Ellipse(x, y, x - priemer_kruhu, y + priemer_kruhu);
x := x - priemer_kruhu;
y := y + priemer_kruhu;
end;
takto nejako, približne, ale s tým ako presne znie tá podmienka vo while, a možno aj s tými ostatnými číselkami, sa budeš musieť trochu pohrať. ale princíp tento, chápeš.
Roleta je špeciálny inkognito mód, ktorým skryješ obsah obrazovky pred samým sebou, alebo inou osobou v tvojej izbe (napr. mama). Roletu odroluješ tak, že na ňu klikneš.
9 komentov
1. » lazarus-ccr.sourceforge.net/docs/lcl/graphi...
x1, y1 sú súradnice ľavého horného rohu, x2, y2 sú súradnice pravého dolného, do pomyselného štvorca alebo obdĺžnika týmito súradnicami definovaného ti to spraví vpísanú kružnicu alebo elipsu.
2. ľavý horný roh obrazovky má súradnice 0,0
pravý dolný roh obrazovky má súradnice šírka_obrazovky,výška_obrazovky.
3. kruhy kreslíš na uhlopriečku, malo by sa to dať vrámci jedného cyklu.
4. detaily si dopracuj sama.
súradnice pravého horného rohu sú šírka_obrazovky, 0
a súradnice ľavého dolného sú 0, výška_obrazovky
čiže v tom cykle začneš od širka_obrazovky, 0
a postupne od x odpočítavaš kým nedôjdeš po nulu, a k y pripočítavaš kým nedôjdeš po výška_obrazovky
Image1.Canvas.Ellipse (Image1.Width,z,Image1.Width-(x*i),z+(y*i);
Image1.Width: *i;
z:=y*i;
úplne presne ti nepoviem, lebo je to hrozne dávno čo som naposledy robil s pascalom, ale niečo na štýl
integer x := Image1.Width;
integer y := 0;
while y
...debil birdz mi odsekol koment...!!!
while y < = Image1.Height do
begin
Image1.Canvas.Ellipse(x, y, x - priemer_kruhu, y + priemer_kruhu);
x := x - priemer_kruhu;
y := y + priemer_kruhu;
end;
takto nejako, približne, ale s tým ako presne znie tá podmienka vo while, a možno aj s tými ostatnými číselkami, sa budeš musieť trochu pohrať. ale princíp tento, chápeš.
napríklad: » pastebin.com/HTFkew0A... (nie je to dokanalé, ale hrať sa mi s tým nechce. Pohraj sa s tým ty )
keby si priemer/ polomer iba odčítavala, tak to bude platit iba pre štvorec.