From 65e29e3984fb71ad761fff6e0f9d50c35ca68235 Mon Sep 17 00:00:00 2001 From: sekelsenmat Date: Fri, 14 Jan 2011 12:54:17 +0000 Subject: [PATCH] Starts implementing a fpvectorial viewer git-svn-id: trunk@16763 - --- .gitattributes | 6 + .../fpvectorial/examples/fpvviewer/cube.dxf | 414 ++++++++++++++++++ .../examples/fpvviewer/diamond.dxf | 200 +++++++++ .../examples/fpvviewer/fpvv_mainform.lfm | 34 ++ .../examples/fpvviewer/fpvv_mainform.pas | 53 +++ .../examples/fpvviewer/fpvviewer.lpi | 169 +++++++ .../examples/fpvviewer/fpvviewer.lpr | 23 + 7 files changed, 899 insertions(+) create mode 100644 packages/fpvectorial/examples/fpvviewer/cube.dxf create mode 100644 packages/fpvectorial/examples/fpvviewer/diamond.dxf create mode 100644 packages/fpvectorial/examples/fpvviewer/fpvv_mainform.lfm create mode 100644 packages/fpvectorial/examples/fpvviewer/fpvv_mainform.pas create mode 100644 packages/fpvectorial/examples/fpvviewer/fpvviewer.lpi create mode 100644 packages/fpvectorial/examples/fpvviewer/fpvviewer.lpr diff --git a/.gitattributes b/.gitattributes index 201ccb41e7..6fd7d5a005 100644 --- a/.gitattributes +++ b/.gitattributes @@ -2504,6 +2504,12 @@ packages/fpvectorial/examples/fpvc_mainform.pas svneol=native#text/plain packages/fpvectorial/examples/fpvectorialconverter.ico -text packages/fpvectorial/examples/fpvectorialconverter.lpi svneol=native#text/plain packages/fpvectorial/examples/fpvectorialconverter.lpr svneol=native#text/plain +packages/fpvectorial/examples/fpvviewer/cube.dxf svneol=native#text/plain +packages/fpvectorial/examples/fpvviewer/diamond.dxf svneol=native#text/plain +packages/fpvectorial/examples/fpvviewer/fpvv_mainform.lfm svneol=native#text/plain +packages/fpvectorial/examples/fpvviewer/fpvv_mainform.pas svneol=native#text/plain +packages/fpvectorial/examples/fpvviewer/fpvviewer.lpi svneol=native#text/plain +packages/fpvectorial/examples/fpvviewer/fpvviewer.lpr svneol=native#text/plain packages/fpvectorial/examples/fpvwritetest.lpi svneol=native#text/plain packages/fpvectorial/examples/fpvwritetest.pas svneol=native#text/plain packages/fpvectorial/fpmake.pp svneol=native#text/plain diff --git a/packages/fpvectorial/examples/fpvviewer/cube.dxf b/packages/fpvectorial/examples/fpvviewer/cube.dxf new file mode 100644 index 0000000000..d0497a33d1 --- /dev/null +++ b/packages/fpvectorial/examples/fpvviewer/cube.dxf @@ -0,0 +1,414 @@ + 0 +SECTION + 2 +HEADER +999 +cube.dxf created by IVREAD. +999 +Original data in cube.iv + 0 +ENDSEC + 0 +SECTION + 2 +TABLES + 0 +ENDSEC + 0 +SECTION + 2 +BLOCKS + 0 +ENDSEC + 0 +SECTION + 2 +ENTITIES + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + -0.5000 + 30 + 1.000 + 11 + 0.5000 + 21 + -0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + -0.5000 + 30 + 1.000 + 11 + 0.5000 + 21 + 0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + 0.5000 + 30 + 1.000 + 11 + -0.5000 + 21 + 0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + 0.5000 + 30 + 1.000 + 11 + -0.5000 + 21 + -0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + -0.5000 + 30 + 0.0000E+00 + 11 + -0.5000 + 21 + -0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + -0.5000 + 30 + 0.0000E+00 + 11 + -0.5000 + 21 + 0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + 0.5000 + 30 + 0.0000E+00 + 11 + 0.5000 + 21 + 0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + 0.5000 + 30 + 0.0000E+00 + 11 + 0.5000 + 21 + -0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + -0.5000 + 30 + 0.0000E+00 + 11 + -0.5000 + 21 + -0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + -0.5000 + 30 + 1.000 + 11 + -0.5000 + 21 + 0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + 0.5000 + 30 + 1.000 + 11 + -0.5000 + 21 + 0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + 0.5000 + 30 + 0.0000E+00 + 11 + -0.5000 + 21 + -0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + -0.5000 + 30 + 1.000 + 11 + 0.5000 + 21 + -0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + -0.5000 + 30 + 0.0000E+00 + 11 + 0.5000 + 21 + 0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + 0.5000 + 30 + 0.0000E+00 + 11 + 0.5000 + 21 + 0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + 0.5000 + 30 + 1.000 + 11 + 0.5000 + 21 + -0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + -0.5000 + 30 + 0.0000E+00 + 11 + 0.5000 + 21 + -0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + -0.5000 + 30 + 0.0000E+00 + 11 + 0.5000 + 21 + -0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + -0.5000 + 30 + 1.000 + 11 + -0.5000 + 21 + -0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + -0.5000 + 30 + 1.000 + 11 + -0.5000 + 21 + -0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + 0.5000 + 30 + 1.000 + 11 + 0.5000 + 21 + 0.5000 + 31 + 1.000 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + 0.5000 + 30 + 1.000 + 11 + 0.5000 + 21 + 0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 0.5000 + 20 + 0.5000 + 30 + 0.0000E+00 + 11 + -0.5000 + 21 + 0.5000 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -0.5000 + 20 + 0.5000 + 30 + 0.0000E+00 + 11 + -0.5000 + 21 + 0.5000 + 31 + 1.000 + 0 +ENDSEC + 0 +EOF diff --git a/packages/fpvectorial/examples/fpvviewer/diamond.dxf b/packages/fpvectorial/examples/fpvviewer/diamond.dxf new file mode 100644 index 0000000000..c0eb189756 --- /dev/null +++ b/packages/fpvectorial/examples/fpvviewer/diamond.dxf @@ -0,0 +1,200 @@ + 0 +SECTION + 2 +ENTITIES + 0 +LINE + 8 + 0 + 10 + 45.00 + 20 + 45.00 + 30 + 0.0000E+00 + 11 + 45.00 + 21 + -45.00 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 45.00 + 20 + -45.00 + 30 + 0.0000E+00 + 11 + 0.0000E+00 + 21 + 0.0000E+00 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 0.0000E+00 + 20 + 0.0000E+00 + 30 + 0.0000E+00 + 11 + -45.00 + 21 + 45.00 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -45.00 + 20 + 45.00 + 30 + 0.0000E+00 + 11 + 45.00 + 21 + 45.00 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 45.00 + 20 + 45.00 + 30 + 0.0000E+00 + 11 + 0.0000E+00 + 21 + 0.0000E+00 + 31 + -78.00 + 0 +LINE + 8 + 0 + 10 + 0.0000E+00 + 20 + 0.0000E+00 + 30 + -78.00 + 11 + 0.0000E+00 + 21 + 0.0000E+00 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 0.0000E+00 + 20 + 0.0000E+00 + 30 + 0.0000E+00 + 11 + -45.00 + 21 + -45.00 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -45.00 + 20 + -45.00 + 30 + 0.0000E+00 + 11 + 45.00 + 21 + 45.00 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + 45.00 + 20 + -45.00 + 30 + 0.0000E+00 + 11 + -45.00 + 21 + -45.00 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -45.00 + 20 + -45.00 + 30 + 0.0000E+00 + 11 + -45.00 + 21 + 45.00 + 31 + 0.0000E+00 + 0 +LINE + 8 + 0 + 10 + -45.00 + 20 + 45.00 + 30 + 0.0000E+00 + 11 + 0.0000E+00 + 21 + 0.0000E+00 + 31 + -78.00 + 0 +LINE + 8 + 0 + 10 + 0.0000E+00 + 20 + 0.0000E+00 + 30 + -78.00 + 11 + 45.00 + 21 + -45.00 + 31 + 0.0000E+00 + 0 +ENDSEC + 0 +EOF diff --git a/packages/fpvectorial/examples/fpvviewer/fpvv_mainform.lfm b/packages/fpvectorial/examples/fpvviewer/fpvv_mainform.lfm new file mode 100644 index 0000000000..0a305ac191 --- /dev/null +++ b/packages/fpvectorial/examples/fpvviewer/fpvv_mainform.lfm @@ -0,0 +1,34 @@ +object frmFPVViewer: TfrmFPVViewer + Left = 349 + Height = 240 + Top = 171 + Width = 240 + Caption = 'frmFPVViewer' + ClientHeight = 240 + ClientWidth = 240 + OnCreate = FormCreate + OnDestroy = FormDestroy + LCLVersion = '0.9.31' + object btnView: TButton + Left = 8 + Height = 25 + Top = 40 + Width = 224 + Caption = 'View' + OnClick = btnViewClick + TabOrder = 0 + end + object editFileName: TFileNameEdit + Left = 8 + Height = 25 + Top = 8 + Width = 200 + DialogOptions = [] + FilterIndex = 0 + HideDirectories = False + ButtonWidth = 23 + NumGlyphs = 0 + MaxLength = 0 + TabOrder = 1 + end +end diff --git a/packages/fpvectorial/examples/fpvviewer/fpvv_mainform.pas b/packages/fpvectorial/examples/fpvviewer/fpvv_mainform.pas new file mode 100644 index 0000000000..621cc96327 --- /dev/null +++ b/packages/fpvectorial/examples/fpvviewer/fpvv_mainform.pas @@ -0,0 +1,53 @@ +unit fpvv_mainform; + +{$mode objfpc}{$H+} + +interface + +uses + fpvectorial, svgvectorialwriter, Classes, SysUtils, FileUtil, Forms, Controls, + Graphics, Dialogs, StdCtrls, EditBtn; + +type + + { TfrmFPVViewer } + + TfrmFPVViewer = class(TForm) + btnView: TButton; + editFileName: TFileNameEdit; + procedure btnViewClick(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormDestroy(Sender: TObject); + private + { private declarations } + public + { public declarations } + Vec: TvVectorialDocument; + end; + +var + frmFPVViewer: TfrmFPVViewer; + +implementation + +{$R *.lfm} + +{ TfrmFPVViewer } + +procedure TfrmFPVViewer.btnViewClick(Sender: TObject); +begin + Vec.ReadFromFile(editFileName.FileName); +end; + +procedure TfrmFPVViewer.FormCreate(Sender: TObject); +begin + Vec := TvVectorialDocument.Create; +end; + +procedure TfrmFPVViewer.FormDestroy(Sender: TObject); +begin + Vec.Free; +end; + +end. + diff --git a/packages/fpvectorial/examples/fpvviewer/fpvviewer.lpi b/packages/fpvectorial/examples/fpvviewer/fpvviewer.lpi new file mode 100644 index 0000000000..3c0ddbef07 --- /dev/null +++ b/packages/fpvectorial/examples/fpvviewer/fpvviewer.lpi @@ -0,0 +1,169 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/fpvectorial/examples/fpvviewer/fpvviewer.lpr b/packages/fpvectorial/examples/fpvviewer/fpvviewer.lpr new file mode 100644 index 0000000000..9c273fea65 --- /dev/null +++ b/packages/fpvectorial/examples/fpvviewer/fpvviewer.lpr @@ -0,0 +1,23 @@ +{ +FPVectorial example application for viewing vectorial images + +Author: Felipe Monteiro de Carvalho + +License: Public Domain +} +program fpvviewer; + +{$mode objfpc}{$H+} + +uses + Interfaces, // this includes the LCL widgetset + Forms, fpvv_mainform; + +//{$R *.res} + +begin + Application.Initialize; + Application.CreateForm(TfrmFPVViewer, frmFPVViewer); + Application.Run; +end. +