You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: cube_3D.m
    path of file: ./repos/five_point_algorithm/aux
    
    the code of the file until where you have to start completion: function cube_pts = cube_3D(centre_3D, size)
%CUBE_3D Auxiliary function that given a cube centre coordinates and the 
%   edge size returns the 3D coordenates of all vertices in a 3x8 matrix. 
%
%   Author: Sergio Agostinho - sergio(dot)r(dot)agostinho(at)gmail(dot)com 
%   Date: Mar 2015

    
function cube_pts = cube_3D(centre_3D, size)
%CUBE_3D Auxiliary function that given a cube centre coordinates and the 
%   edge size returns the 3D coordenates of all vertices in a 3x8 matrix. 
%
%   Author: Sergio Agostinho - sergio(dot)r(dot)agostinho(at)gmail(dot)com 
%   Date: Mar 2015
%   Version: 0.9
%   Repo: https://github.com/SergioRAgostinho/five_point_algorithm
%   Feel free to provide feedback or contribute.

if numel(centre_3D) ~= 3
     error('cube_3D:wrong_dimensions:centre_3D',['centre_3D needs to either be a 3x1 collum ' ...
         'vector or a 1x3 row vector']);
end