You've already forked lazarus-ccr
Adds a quick pointer builder helper routine and a rendering test to the viewer
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1665 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -208,6 +208,11 @@ type
|
||||
end;
|
||||
|
||||
{@@
|
||||
DimensionLeft ---text--- DimensionRight
|
||||
| |
|
||||
| | BaseRight
|
||||
|
|
||||
| BaseLeft
|
||||
}
|
||||
|
||||
{ TvAlignedDimension }
|
||||
@ -343,6 +348,7 @@ procedure RegisterVectorialReader(
|
||||
procedure RegisterVectorialWriter(
|
||||
AWriterClass: TvVectorialWriterClass;
|
||||
AFormat: TvVectorialFormat);
|
||||
function Make2DPoint(AX, AY: Double): T3DPoint;
|
||||
|
||||
implementation
|
||||
|
||||
@ -433,6 +439,13 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
function Make2DPoint(AX, AY: Double): T3DPoint;
|
||||
begin
|
||||
Result.X := AX;
|
||||
Result.Y := AY;
|
||||
Result.Z := 0;
|
||||
end;
|
||||
|
||||
{ TvEllipse }
|
||||
|
||||
procedure TvEllipse.CalculateBoundingRectangle;
|
||||
|
@ -76,8 +76,8 @@ object frmFPVViewer: TfrmFPVViewer
|
||||
object pageViewer: TPage
|
||||
end
|
||||
object Page2: TPage
|
||||
ClientWidth = 8448
|
||||
ClientHeight = 9984
|
||||
ClientWidth = 16896
|
||||
ClientHeight = 19968
|
||||
object DXFTreeView: TTreeView
|
||||
Left = 8
|
||||
Height = 313
|
||||
@ -88,4 +88,13 @@ object frmFPVViewer: TfrmFPVViewer
|
||||
end
|
||||
end
|
||||
end
|
||||
object buttonRenderingTest: TButton
|
||||
Left = 256
|
||||
Height = 25
|
||||
Top = 41
|
||||
Width = 96
|
||||
Caption = 'Render Test'
|
||||
OnClick = buttonRenderingTestClick
|
||||
TabOrder = 5
|
||||
end
|
||||
end
|
||||
|
@ -16,6 +16,7 @@ type
|
||||
TfrmFPVViewer = class(TForm)
|
||||
btnVisualize: TButton;
|
||||
btnViewDXFTokens: TButton;
|
||||
buttonRenderingTest: TButton;
|
||||
editFileName: TFileNameEdit;
|
||||
notebook: TNotebook;
|
||||
pageViewer: TPage;
|
||||
@ -25,6 +26,7 @@ type
|
||||
DXFTreeView: TTreeView;
|
||||
procedure btnVisualizeClick(Sender: TObject);
|
||||
procedure btnViewDXFTokensClick(Sender: TObject);
|
||||
procedure buttonRenderingTestClick(Sender: TObject);
|
||||
procedure FormCreate(Sender: TObject);
|
||||
procedure FormDestroy(Sender: TObject);
|
||||
private
|
||||
@ -121,6 +123,37 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfrmFPVViewer.buttonRenderingTestClick(Sender: TObject);
|
||||
var
|
||||
Vec: TvVectorialDocument;
|
||||
begin
|
||||
notebook.PageIndex := 0;
|
||||
|
||||
Drawer.Clear;
|
||||
|
||||
Vec := TvVectorialDocument.Create;
|
||||
try
|
||||
Vec.AddAlignedDimension(Make2DPoint(100, 50), Make2DPoint(200, 100), Make2DPoint(100, 150), Make2DPoint(200, 150));
|
||||
Vec.AddAlignedDimension(Make2DPoint(50, 250), Make2DPoint(100, 200), Make2DPoint(150, 250), Make2DPoint(150, 200));
|
||||
|
||||
Drawer.Drawing.Width := 400;
|
||||
Drawer.Drawing.Height := 400;
|
||||
Drawer.Drawing.Canvas.Brush.Color := clWhite;
|
||||
Drawer.Drawing.Canvas.Brush.Style := bsSolid;
|
||||
Drawer.Drawing.Canvas.FillRect(0, 0, Drawer.Drawing.Width, Drawer.Drawing.Height);
|
||||
DrawFPVectorialToCanvas(
|
||||
Vec,
|
||||
Drawer.Drawing.Canvas,
|
||||
0,
|
||||
Drawer.Drawing.Height,
|
||||
spinScale.Value,
|
||||
-1 * spinScale.Value);
|
||||
Drawer.Invalidate;
|
||||
finally
|
||||
Vec.Free;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TfrmFPVViewer.FormCreate(Sender: TObject);
|
||||
begin
|
||||
Drawer := TFPVVDrawer.Create(Self);
|
||||
|
Reference in New Issue
Block a user