


DATA3D is the abstract base class for 3-dimensional data objects.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
DESCRIPTION: DATA3D is the base class for 3-dimensional data objects. This is
an abstract class.
SUPER CLASSES: ltpda_data < ltpda_nuo < ltpda_obj
SUB CLASSES: xydata, tsdata, fsdata, data3D
PROPERTIES:
Inherit Properties (read only)
version - cvs-version string.
Protected Properties (read only)
xunits - units of the y-axis
yunits - units of the y-axis
x - data values of the x-axis
y - data values of the y-axis
DATA3D METHODS:
Public Methods
char - returns one character string which represents the object
setZunits - set the property 'xunits'
setZ - set the property 'z'
setXY - set the property 'x' and 'y'
setXYZ - set the property 'x' and 'y' and 'z'
getZ - get the property 'z'
applymethod - applys the given method to the input 3D data
applyoperator - applys the given operator to the two input data objects
VERSION: $Id: data3D.m,v 1.4 2008/08/15 13:01:03 ingo Exp $
HISTORY: 09-06-2008 Hewitson
Creation.
SEE ALSO: ltpda_data, fsdata, tsdata, xydata, data3D
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


0001 % DATA3D is the abstract base class for 3-dimensional data objects. 0002 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0003 % 0004 % DESCRIPTION: DATA3D is the base class for 3-dimensional data objects. This is 0005 % an abstract class. 0006 % 0007 % SUPER CLASSES: ltpda_data < ltpda_nuo < ltpda_obj 0008 % 0009 % SUB CLASSES: xydata, tsdata, fsdata, data3D 0010 % 0011 % PROPERTIES: 0012 % 0013 % Inherit Properties (read only) 0014 % version - cvs-version string. 0015 % 0016 % Protected Properties (read only) 0017 % xunits - units of the y-axis 0018 % yunits - units of the y-axis 0019 % x - data values of the x-axis 0020 % y - data values of the y-axis 0021 % 0022 % DATA3D METHODS: 0023 % 0024 % Public Methods 0025 % char - returns one character string which represents the object 0026 % setZunits - set the property 'xunits' 0027 % setZ - set the property 'z' 0028 % setXY - set the property 'x' and 'y' 0029 % setXYZ - set the property 'x' and 'y' and 'z' 0030 % getZ - get the property 'z' 0031 % applymethod - applys the given method to the input 3D data 0032 % applyoperator - applys the given operator to the two input data objects 0033 % 0034 % VERSION: $Id: data3D.m,v 1.4 2008/08/15 13:01:03 ingo Exp $ 0035 % 0036 % HISTORY: 09-06-2008 Hewitson 0037 % Creation. 0038 % 0039 % SEE ALSO: ltpda_data, fsdata, tsdata, xydata, data3D 0040 % 0041 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0042 0043 classdef data3D < data2D 0044 0045 0046 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0047 % Property definition % 0048 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0049 0050 %---------- Public (read/write) Properties ---------- 0051 properties 0052 end 0053 0054 %---------- Protected read-only Properties ---------- 0055 properties 0056 zunits = sym('empty'); 0057 z = []; 0058 end 0059 0060 %---------- Private Properties ---------- 0061 properties (GetAccess = protected, SetAccess = protected) 0062 end 0063 0064 %---------- Abstract Properties ---------- 0065 properties (Abstract = true, SetAccess = protected) 0066 end 0067 0068 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0069 % Check property setting % 0070 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0071 0072 methods 0073 %--- Zunits 0074 function obj = set.zunits(obj, val) 0075 if ~isa(val, 'sym') 0076 error('### The value for the property ''zunits'' must be a symbolic-object'); 0077 end 0078 obj.zunits = val; 0079 end 0080 %--- Z 0081 function obj = set.z(obj, val) 0082 if ~isnumeric(val) || ndims(val) ~= 2 || isvector(val) 0083 error('### The value for the property ''z'' must be a numeric matrix'); 0084 end 0085 obj.z = val; 0086 end 0087 end 0088 0089 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0090 % Constructor % 0091 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0092 0093 methods 0094 function obj = data3D(varargin) 0095 0096 %%% Call superclass 0097 obj = obj@data2D(varargin{:}); 0098 0099 %%%%%%%%%% Set dafault values %%%%%%%%%% 0100 %%% Exept for a struct as an input 0101 if ~(nargin == 1 && isstruct(varargin{1})) 0102 % set version 0103 obj.prependVersion('$Id: data3D.m,v 1.4 2008/08/15 13:01:03 ingo Exp $'); 0104 end 0105 0106 if nargin == 1 0107 if isstruct(varargin{1}) 0108 %%%%%%%%%% obj = data3D(struct) %%%%%%%%%% 0109 0110 %%% Set properties which are declared in this class 0111 data3D_struct = varargin{1}; 0112 0113 obj.zunits = data3D_struct.zunits; 0114 obj.z = data3D_struct.z; 0115 end 0116 end 0117 end % End constructor 0118 0119 end 0120 0121 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0122 % Methods (public) % 0123 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0124 0125 methods 0126 varargout = setZunits(varargin) 0127 varargout = setZ(varargin) 0128 varargout = getZ(varargin) 0129 0130 function varargout = applymethod(varargin), error('### code me up because we Inherit this fcn.'); end 0131 function varargout = applyoperator(varargin), error('### code me up because we Inherit this fcn.'); end 0132 end 0133 0134 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0135 % Methods (protected) % 0136 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0137 0138 methods (Access = protected) 0139 end 0140 0141 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0142 % Methods (public) % 0143 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0144 0145 methods 0146 end 0147 0148 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0149 % Methods (static) % 0150 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0151 0152 methods (Static) 0153 0154 function ii = getInfo(varargin) 0155 ii = utils.helper.generic_getInfo(varargin{:}, 'data3D'); 0156 end 0157 0158 function out = VEROUT() 0159 out = '$Id: data3D.m,v 1.4 2008/08/15 13:01:03 ingo Exp $'; 0160 end 0161 0162 function out = SETS() 0163 out = {}; 0164 end 0165 0166 function out = getDefaultPlist() 0167 out = []; 0168 end 0169 0170 end 0171 0172 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0173 % Methods (abstract) % 0174 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0175 0176 methods (Static) 0177 end 0178 0179 end 0180