Add octave github action

fixes-turtlebasket
Mattia Montanari 2023-02-14 15:05:20 +01:00
parent b4de1e3a72
commit 9876960d08
3 changed files with 44 additions and 49 deletions

View File

@ -23,3 +23,11 @@ jobs:
with:
go-version: 1.15
- run: cd examples/go/openGJK && go build && go test -v
Run_Octave_example:
runs-on: ubuntu-latest
container: gnuoctave/octave:7.3.0
steps:
- name: Check out repository code
uses: actions/checkout@v3
- run: cd examples/matlab/; run runme.m

View File

@ -32,7 +32,8 @@ B = -A;
dist = openGJK( A, B );
fprintf('The minimum distance between A and B is %.2f\n',dist);
% VISUALISE RESULTS
% VISUALISE RESULTS ONLY IN MATLAB
if(exist('OCTAVE_VERSION', 'builtin') == 0)
% .. create new figure
figure('units','centimeters', 'WindowStyle','normal', 'color','w',...
'Position',[0 8.5 9 6],'defaultAxesColorOrder',parula,...
@ -60,3 +61,4 @@ surf(x.*dist/2,y.*dist/2,z.*dist/2,'facecolor',[.9 .9 .9],...
view(42,21)
% ... add light
light('Position',[5 -10 20],'Style','local');
end

View File

@ -35,29 +35,14 @@ else
silflag = '-v';
end
% TRY COMPILING MEX FILE
fprintf('Compiling mex function... ')
try
mex(fullfile('..','..','openGJK.c'),... % Source of openGJK
% COMPILE MEX FILE
mex(fullfile('..','..','openGJK.c'),...
'-largeArrayDims', ... % Support large arrays
optflug, ... % Compiler flag for debug/optimisation
fullfile('-I','..','..','include'),... % Folder to header files
'-outdir', pwd, ... % Ouput directory for writing mex function
optflug, ...
['-I',fullfile('..','..','include')],... % Folder to header files
'-output', 'openGJK',... % Name of ouput mex file
'-DMATLAB_MEX_BUILD',... % Define variable for mex function in source files
silflag ) % Silent/verbose flag
% File compiled without errors. Return path and name of mex file
fprintf('completed!\n')
fprintf('The following mex file has been generated:')
fprintf('\t%s\n',[pwd,filesep,'openGJK.',mexext])
catch
% Build failed, refer to documentation
fprintf('\n\n ERROR DETECTED! Mex file cannot be compiled.\n')
fprintf('\tFor more information, see ')
fprintf('<a href="http://www.mathworks.com/help/matlab/ref/mex.html">this documentation page</a>.\n\n')
return
end
silflag )
% RUN EXAMPLE
fprintf('Running example... ')