Skip to content

Commit

Permalink
more
Browse files Browse the repository at this point in the history
  • Loading branch information
ollydev committed Mar 24, 2024
1 parent b265451 commit f4c6dd3
Show file tree
Hide file tree
Showing 47 changed files with 682 additions and 671 deletions.
191 changes: 124 additions & 67 deletions Source/Simba.lpi

Large diffs are not rendered by default.

508 changes: 0 additions & 508 deletions Source/array/simba.array_pointarray.pas

This file was deleted.

4 changes: 2 additions & 2 deletions Source/image/simba.image.pas
Original file line number Diff line number Diff line change
Expand Up @@ -262,8 +262,8 @@ implementation

uses
Math, FPImage,
simba.zip, simba.vartype_box, simba.vartype_quad, simba.geometry, simba.nativeinterface,
simba.matrix_float, simba.matrix_int, simba.array_point, simba.algo_sort,
simba.zip, simba.vartype_floatmatrix, simba.vartype_box, simba.vartype_quad, simba.geometry, simba.nativeinterface,
simba.vartype_ordmatrix, simba.vartype_pointarray, simba.algo_sort,
simba.image_lazbridge, simba.image_integral, simba.image_gaussblur,
simba.image_bitmaparealoader, simba.image_stringconv, simba.containers, simba.array_relationship;

Expand Down
2 changes: 1 addition & 1 deletion Source/image/simba.image_integral.pas
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ TData = record Value: Double; ValueSqr: Double; end;
implementation

uses
simba.matrix_int;
simba.vartype_ordmatrix;

class function TSimbaIntegralImageF.Create(const From: TByteMatrix): TSimbaIntegralImageF;
var
Expand Down
2 changes: 1 addition & 1 deletion Source/image/simba.image_utils.pas
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ procedure FillData(const Data: PColorBGRA; const Count: SizeInt; const Value: TC
implementation

uses
simba.array_point, simba.geometry;
simba.vartype_pointarray, simba.geometry;

procedure BlendPixel(const Pixel: PColorBGRA; const Color: TColorBGRA);
begin
Expand Down
2 changes: 1 addition & 1 deletion Source/imagebox/simba.imagebox_drawers.pas
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ implementation

uses
Math,
simba.matrix_float, simba.algo_sort, simba.vartype_box;
simba.vartype_floatmatrix, simba.algo_sort, simba.vartype_box;

generic procedure DoDrawPolygonFilled<_T>(Poly: TPointArray; DrawInfo: TDrawInfo);
type
Expand Down
2 changes: 1 addition & 1 deletion Source/matchtemplate/simba.matchtemplate.pas
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ implementation
uses
simba.matchtemplate_ccorr, simba.matchtemplate_sqdiff, simba.matchtemplate_ccoeff,
simba.threadpool,
simba.matrix_float, simba.matrix_int;
simba.vartype_floatmatrix, simba.vartype_ordmatrix;

// How much to "Slice" (vertically) the image up for multithreading.
function CalculateSlices(SearchWidth, SearchHeight: Integer): Integer;
Expand Down
2 changes: 1 addition & 1 deletion Source/matchtemplate/simba.matchtemplate_ccoeff.pas
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ implementation

uses
simba.threadpool, simba.simplelock,
simba.matrix_float, simba.matrix_int;
simba.vartype_floatmatrix, simba.vartype_ordmatrix;

// MatchTemplate_CCOEFF
function __MatchTemplate_CCOEFF(Image, Template: TIntegerMatrix; Normed: Boolean): TSingleMatrix;
Expand Down
2 changes: 1 addition & 1 deletion Source/matchtemplate/simba.matchtemplate_ccorr.pas
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ implementation

uses
simba.threadpool, simba.simplelock,
simba.matrix_float, simba.matrix_int;
simba.vartype_floatmatrix, simba.vartype_ordmatrix;

// MatchTemplate_CCORR
function __MatchTemplate_CCORR(Image, Templ: TIntegerMatrix; Normed: Boolean): TSingleMatrix;
Expand Down
2 changes: 1 addition & 1 deletion Source/matchtemplate/simba.matchtemplate_helpers.pas
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ implementation

uses
simba.FFTPACK4, simba.threadpool,
simba.matrix_float, simba.matrix_int;
simba.vartype_floatmatrix, simba.vartype_ordmatrix;

function DoFFT2(const Matrix: TSingleMatrix; const outW, outH: Integer): TComplexMatrix;
var
Expand Down
2 changes: 1 addition & 1 deletion Source/matchtemplate/simba.matchtemplate_matrix.pas
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ function Rot90(const Matrix: TComplexMatrix): TComplexMatrix;
implementation

uses
simba.matrix_int, simba.matrix_float;
simba.vartype_floatmatrix, simba.vartype_ordmatrix;

function SumsPd(const Matrix: TSingleMatrix; out Square: TDoubleMatrix): TDoubleMatrix;
var
Expand Down
2 changes: 1 addition & 1 deletion Source/matchtemplate/simba.matchtemplate_sqdiff.pas
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ implementation

uses
simba.threadpool, simba.simplelock,
simba.matrix_int, simba.matrix_float;
simba.vartype_floatmatrix, simba.vartype_ordmatrix;

// MatchTemplate_SQDIFF
function __MatchTemplate_SQDIFF(Image, Templ: TIntegerMatrix; Normed: Boolean): TSingleMatrix;
Expand Down
60 changes: 0 additions & 60 deletions Source/matrix/simba.matrix_bool.pas

This file was deleted.

2 changes: 1 addition & 1 deletion Source/script/imports/simba.import_atpa.pas
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ implementation

uses
lptypes,
simba.array_pointarray;
simba.vartype_pointarray;

(*
T2DPointArray
Expand Down
2 changes: 1 addition & 1 deletion Source/script/imports/simba.import_boxarray.pas
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ implementation

uses
lptypes,
simba.array_box,
simba.vartype_boxarray,
simba.algo_difference, simba.algo_intersection, simba.algo_symmetricDifference;

(*
Expand Down
2 changes: 1 addition & 1 deletion Source/script/imports/simba.import_internal.pas
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ implementation
uses
simba.algo_difference, simba.algo_intersection, simba.algo_symmetricDifference,
simba.script, simba.image, simba.process,
simba.array_point, simba.array_ord, simba.array_string;
simba.vartype_pointarray, simba.vartype_ordarray, simba.vartype_stringarray;

procedure _LapeWrite(const Params: PParamArray); LAPE_WRAPPER_CALLING_CONV
begin
Expand Down
2 changes: 1 addition & 1 deletion Source/script/imports/simba.import_matrix.pas
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ implementation

uses
lptypes,
simba.matrix_int, simba.matrix_float, simba.matrix_bool;
simba.vartype_ordarray, simba.vartype_floatmatrix, simba.vartype_ordmatrix;

(*
Matrix
Expand Down
2 changes: 1 addition & 1 deletion Source/script/imports/simba.import_tpa.pas
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ implementation

uses
lptypes,
simba.array_point,
simba.vartype_pointarray,
simba.algo_difference, simba.algo_intersection, simba.algo_symmetricDifference;

(*
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion Source/simba.externalimage.pas
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ implementation
uses
Math,
simba.vartype_box, simba.vartype_quad,
simba.array_point, simba.array_pointarray, simba.array_box;
simba.vartype_pointarray, simba.vartype_boxarray;

procedure TSimbaExternalImage.CheckInUpdate;
begin
Expand Down
2 changes: 1 addition & 1 deletion Source/simba.finder.pas
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ TColorTolerance = record
implementation

uses
simba.matrix_float, simba.matrix_int, simba.array_point,
simba.vartype_floatmatrix, simba.vartype_ordmatrix, simba.vartype_pointarray,
simba.finder_color, simba.finder_image, simba.finder_dtm,
simba.containers, simba.matchtemplate, simba.vartype_box;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ implementation

uses
simba.containers, simba.colormath_distance_unrolled, simba.threadpool,
simba.array_pointarray, simba.matrix_float, simba.datetime, simba.vartype_box;
simba.vartype_pointarray, simba.vartype_floatmatrix, simba.datetime, simba.vartype_box;

// How much to "Slice" (vertically) the image up for multithreading.
function CalculateSlices(SearchWidth, SearchHeight: Integer): Integer;
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,7 @@ function FindImageOnBuffer(var Limit: TSimpleThreadsafeLimit;
implementation

uses
simba.containers, simba.threadpool, simba.array_point, simba.array_pointarray,
simba.vartype_box;
simba.containers, simba.threadpool, simba.vartype_pointarray, simba.vartype_box;

// How much to "Slice" (vertically) the image up for multithreading.
function CalculateSlices(SearchWidth, SearchHeight: Integer): Integer;
Expand Down
2 changes: 1 addition & 1 deletion Source/simba.shapebox.pas
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ TSimbaShapeBox = class(TSimbaImageBox)
implementation

uses
LCLType, simba.geometry, simba.array_point,
LCLType, simba.geometry, simba.vartype_pointarray,
simba.vartype_box, simba.vartype_string, simba.vartype_point;

const
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Project: Simba (https://github.com/MerlijnWajer/Simba)
License: GNU General Public License (https://www.gnu.org/licenses/gpl-3.0)
}
unit simba.array_box;
unit simba.vartype_boxarray;

{$i simba.inc}

Expand Down
2 changes: 1 addition & 1 deletion Source/simba.vartype_circle.pas
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ implementation

uses
Math,
simba.math, simba.array_point, simba.random, simba.containers, simba.geometry,
simba.math, simba.vartype_pointarray, simba.random, simba.containers, simba.geometry,
simba.vartype_box;

class function TCircleHelper.Create(AX, AY: Integer; ARadius: Integer): TCircle;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
- ArgExtrema
}

unit simba.matrix_float;
unit simba.vartype_floatmatrix;

{$DEFINE SIMBA_MAX_OPTIMIZATION}
{$i simba.inc}
Expand Down Expand Up @@ -91,7 +91,7 @@ implementation

uses
Math,
simba.math, simba.containers, simba.container_heaparray, simba.array_point, simba.vartype_box;
simba.math, simba.containers, simba.container_heaparray, simba.vartype_pointarray, simba.vartype_box;

class operator TSingleSum.:=(const Right: Single): TSingleSum;
begin
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Project: Simba (https://github.com/MerlijnWajer/Simba)
License: GNU General Public License (https://www.gnu.org/licenses/gpl-3.0)
}
unit simba.array_ord;
unit simba.vartype_ordarray;

{$i simba.inc}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Project: Simba (https://github.com/MerlijnWajer/Simba)
License: GNU General Public License (https://www.gnu.org/licenses/gpl-3.0)
}
unit simba.matrix_int;
unit simba.vartype_ordmatrix;

{$i simba.inc}

Expand Down Expand Up @@ -40,6 +40,15 @@ interface
procedure SetSize(AWidth, AHeight: Integer);
end;

TBooleanMatrixHelper = type helper for TBooleanMatrix
public
function Width: Integer;
function Height: Integer;
function Area: Integer;
function GetSize(out AWidth, AHeight: Integer): Boolean;
procedure SetSize(AWidth, AHeight: Integer);
end;

implementation

uses
Expand Down Expand Up @@ -224,5 +233,36 @@ procedure TByteMatrixHelper.SetSize(AWidth, AHeight: Integer);
SetLength(Self, AHeight, AWidth);
end;

function TBooleanMatrixHelper.Width: Integer;
begin
if (Length(Self) > 0) then
Result := Length(Self[0])
else
Result := 0;
end;

function TBooleanMatrixHelper.Height: Integer;
begin
Result := Length(Self);
end;

function TBooleanMatrixHelper.Area: Integer;
begin
Result := Width * Height;
end;

function TBooleanMatrixHelper.GetSize(out AWidth, AHeight: Integer): Boolean;
begin
AWidth := Width;
AHeight := Height;

Result := (AWidth > 0) and (AHeight > 0);
end;

procedure TBooleanMatrixHelper.SetSize(AWidth, AHeight: Integer);
begin
SetLength(Self, AHeight, AWidth);
end;

end.

Loading

0 comments on commit f4c6dd3

Please sign in to comment.