Section courante

A propos

Section administrative du site

La géométrie s'est également s'amuser à faire des dessins à l'apparence mathématique. Un des classiques dans ce genre, c'est bien sûre dessiner un «Treillis». En prenant pour acquis les paramètres de compilation suivants:

chrome treillis.pas /ref:$(Framework)\System.dll /ref:$(Framework)\System.Drawing.dll /ref:$(Framework)\System.Windows.Forms.dll

Voici le code RemObjects Chrome:

namespace treillis;

interface

uses
  System, System.Drawing, System.Windows.Forms;

type
  MainForm = class(System.Windows.Forms.Form)
  private
    components: System.ComponentModel.Container := nil;
    method InitializeComponent;
  protected
    method Dispose(aDisposing: boolean); override;
  public
    constructor;
    class method Main;
    method Painting(sender: OBJECT; pe: System.Windows.Forms.PaintEventArgs);
  end;

implementation

constructor MainForm;begin
  InitializeComponent();
end;

method MainForm.Dispose(aDisposing: boolean);begin
  if aDisposing then begin
   if assigned(components) then components.Dispose();
  end;
  inherited Dispose(aDisposing);
end;

method MainForm.Painting(sender: OBJECT; pe: System.Windows.Forms.PaintEventArgs);
Var
 x,y,t,i:INTEGER;
Begin
  x:=30;
  y:=40;
  t:=240 div 5;
  For i := 0 TO t do Begin
   pe.get_Graphics().DrawLine(New Pen(Color.Black), x, y + i*5, x + i*5, y + t*5)
  End;
End;

method MainForm.InitializeComponent;begin
  self.Paint += new System.Windows.Forms.PaintEventHandler(self.Painting);
  self.Text:='Trellis';
  self.Width:=300;
  self.Height:=320;
  self.BackColor:= Color.White;
end;

[STAThread]
class method MainForm.Main;begin
 try
  with treilisapp := new MainForm() do Application.Run(treilisapp);
 except
  on E: Exception do begin
   MessageBox.Show(E.Message);
  end;
 end;
end;

END.

Voici en terminant un exemple du résultat de se petit programme:



Dernière mise à jour : Dimanche, le 17 février 2008