unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 =
class(TForm)
Button1: TButton;
Button2: TButton;
Memo1: TMemo;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Verfeinern(a,b,c,d: integer);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
x,a,b,c,d,n: integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute
then
begin
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Memo1.Lines[Memo1.Lines.count-2] := '
<rect x=a y=b width=c height=d fill="black"/>';
Memo1.Lines.SaveToFile('
svg-verfeinerungsstufe' + IntToStr(x) + '
.html');
x:= x+1;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
x := 1;
end;
procedure TForm1.Verfeinern(a,b,c,d: integer);
begin
{Koordinaten der bestehenden Quadraten (aus der *.svg-Datei) einlesen.
Anschließend durch Algorithmus verfeinern. Dabei wird Länge + Breite der
bestehenden Quadraten /3 geteilt. Die neuen Werte für Länge und Breite bilden
die Länge und Breite der verfeinerten Quadraten. Diese werden in der Mitte des
vorher bestehenden Quadrates angezeigt (siehe Sierpinski-Teppich)
Letztendlich alles wieder in der *.svg-Datei speichern.}
end;
end.