Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 22 odgovora
  • 8.392 pregleda

Najnovija ↓

grafik u delphiju 07.02.2005. u 15:47 · pre 264 meseca #1
kako da uradim grafik funkcije oblika aX^2+bX+c u delphiju 5???
Re: grafik u delphiju 08.02.2005. u 00:19 · pre 264 meseca #2
Isto kao sto bi uradio na papiru. Imas odredjene vrednosti za nepoznate (recimo 0.1, 0.15, 0.2, 0.25...), izracunas izraz, dobijes koordinatu na grafiku, spajas dobijene tacke i eto ti grafika.

Imas funkcije Canvas-a LineTo i MoveTo koje su ti potrebne za iscrtavanje grafika. U principu prvu tacku koju dobijes postavis sa MoveTo, a svaku sledecu prosledis funkciji LineTo. Jedino na cega treba da obratis paznju je razmera... ne bi hteo da ti grafik bude previse mali ili preterano velik da se ne vidi na formi.
Potpis
Play Store
Re: grafik u delphiju 08.02.2005. u 00:38 · pre 264 meseca #3
Evo ti nesto za pocetak. Dalje ces, valjda, moci sam


Code:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    procedure Translate(var x, y: Integer);
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
const
  A = 1;
  B = 1;
  C = 0;
  START_X = -10;
  END_X = 10;
var
  i, x, y: Integer;

  function Funct(x: Integer): Integer;
  begin
    Result := A * x * x + B * x + c
  end;

begin
  x := START_X; y := Funct(x);
  Translate(x, y);
  Canvas.MoveTo(x, y);
  for i := START_X + 1 to END_X do begin
    x := i;
    y := Funct(x);
    Translate(x, y);
    Canvas.LineTo(x, y)
  end
end;

procedure TForm1.Translate(var x, y: Integer);
begin
  Inc(x, ClientWidth div 2);
  y := ClientHeight div 2 - y
end;

end.
Re: grafik u delphiju 08.02.2005. u 14:21 · pre 264 meseca #4
@dejan
hvala

jel mozes samo malo da mi pojasnis proceduru Translate?
sve ovo ostalo razumem
Re: grafik u delphiju 08.02.2005. u 18:10 · pre 264 meseca #5
Evo ja cu ti razjasnim ako smem... ;-)

Translate ocigledno postavlja koordinatni pocetak na sredinu canvasa, tako da imas sva 4 kvadranta grafika...
Re: grafik u delphiju 08.02.2005. u 20:05 · pre 264 meseca #6
Citat:
_v!rus_: Evo ja cu ti razjasnim ako smem... ;-)

Translate ocigledno postavlja koordinatni pocetak na sredinu canvasa, tako da imas sva 4 kvadranta grafika...


Otprilike... Mi posmatramo koordinantni pocetak na sredini canvasa, dok je on u stvarnosti u levom gornjem uglu. Zato svaku tacku (x, y) treba translirati tako da se od nasih zamisljenih dobiju stvarne koordinate. Takodje, nase y raste gore, dok u stvarnosti raste dole. Otuda y := -(y - ClientHeight div 2).

Pojednostavljeno: postupak kojim si translirao koordinantni pocetak iz gornjeg levog ugla na sredinu primenjujes na svaku tacku
Re: grafik u delphiju 09.02.2005. u 12:28 · pre 264 meseca #7
ahaaaa kapiram.... nice

thnx
Re: grafik u delphiju 09.02.2005. u 16:21 · pre 264 meseca #8
Ako ti treba neki lep grafik, moyes da koristis interpolaciju, koja na osnovu tacaka crta grafik. Ja sam to radio kao projekat, pa ako te zanima, posalji mi mail, pa cu da ti posaljem.
PS
U pitanju je delphi 7. :O)
Re: grafik u delphiju 10.02.2005. u 00:21 · pre 264 meseca #9
to je najlakse uraditi kako rade AA na grafickoj kartici. Ili nacrtas sve to par puta vece pa interpolacijom smanjis na zeljenu ili nacrtas normalno, pa povecas, pa smanjis :) to je prilicno lagano, ima biblioteke za poznate algoritme za interpolaciju na svakom cosku
Potpis
Ride the rainbow, crack the sky

DIY gitare, pojacala i efekti www.diy-fever.com
Re: grafik u delphiju 10.02.2005. u 13:20 · pre 264 meseca #10
ma hocu da uradim maturski - osobine i grafik funkcije u delphiju. ne treba meni nesto doterano nego samo onako da imam grafik
Re: grafik u delphiju 10.02.2005. u 19:55 · pre 264 meseca #11
e opet mi treba pomoc!
1) osobine funkcije treba da se ispisu u memo-u. kako mogu da ubacim neke simbole? npr. simbol za beskonacno, za pripadanje skupu (kao e), svako (obrnuto A), strelice na gore i na dole....
2) mogu li da grafik uradim uz pomoc chart komponente?

ajd pomozite opet...
Re: grafik u delphiju 10.02.2005. u 22:10 · pre 264 meseca #12
1. Sto se tice znakova u memo-u, mozes da probas sa CharacterMap-om (divan jedan programcic :), ide uz svaki win jos od 3.0.

Edit: evo za beskonacno [∞] (U + 221E) u obicnom tahoma fontu (unicode).

2. Nisam radio sa chartom ali jesam sa dbchartom, pretpostavljam da je isto. Sistem bi bio da za svako X koje se inkrementira, rucno racunas Y i te Y-e prosledjujes kao podatke chartu, exprimentisi malo, skoro sam siguran da moze. Samo je malo fizikalija naterati chart da izgleda onako kako ti hoces, mozda je bolje rucno crtanje.
Re: grafik u delphiju 11.02.2005. u 00:47 · pre 264 meseca #13
nasao sam za ± (alt+0177) i ² (alt+0178) ali ovo ostalo nema sanse... sve ove simbole sam nasao u wordu i tamo ima za skoro svaki ovaj shortcut, ali nema shanse da delphi prihvati one koji imaju shortcut sa alt+x (npr 221e, alt+x = ∞ )

postoji li nacin da se ubace ovi simboli u delphi??????
Re: grafik u delphiju 11.02.2005. u 00:54 · pre 264 meseca #14
da, odi u pomenuti Character Map i tamo (ili u bilo kom programu u kome moze) otkucaj taj znak i onda copy-paste-uj ga u delphi...ja tako radim :)
Potpis
Ride the rainbow, crack the sky

DIY gitare, pojacala i efekti www.diy-fever.com
Re: grafik u delphiju 11.02.2005. u 22:32 · pre 264 meseca #15
kopiram ja ali pojavljuje se samo kocka  za vecinu simbola
Re: grafik u delphiju 11.02.2005. u 23:27 · pre 264 meseca #16
znas sta bih ti onda preporucio. pretpostavljam da taj tvoj output treba da bude mesavina texta i matematickih simbola? uzmi TWebBrowser i dinamicki generisi HTML kod..to su jednostavne stvari...mozes direktno da ucitas HTML kod u TWebBrowser bez potrebe za pravljenjem privremenog html fajla iz kog ces da ucitas.
ako hoces tako da radis dacu ti konktretnije upute
Potpis
Ride the rainbow, crack the sky

DIY gitare, pojacala i efekti www.diy-fever.com
Re: grafik u delphiju 12.02.2005. u 15:13 · pre 264 meseca #17
e ajde da podjem u skolu da vidim moze li ovako (stavio sam e umesto znaka pripadanja skupu). ako ne moze javicu ti ili ovde ili na email.

joj sramota me da i ovo pitam... aaa nema veze
kako da zaokruzim broj na 2 decimale. u pascalu je writeln(a:2). jel moram da ga prebacim u string pa onda za ga smanjujem odnosno obrisem deo. isto treba da se ispise u memo
Re: grafik u delphiju 13.02.2005. u 22:46 · pre 264 meseca #19
zavrsio sam!!! juce! hvala svima na pomoci
Re: grafik u delphiju 16.02.2005. u 03:56 · pre 264 meseca #20
...

Formatfloat funkcija vraca vrednost string tipa...

//textstr:=formatfloat('0.00', value);

da li postoji funkcija za zaokruzivanje real broja na odredjeni broj decimala, ali bez konverzije u str?

Poz
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme