0001 function [obj] = bm_edit_app_view3d_display_brain(...
0002 obj, display_factor, view_setting3d)
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 if ~exist('obj', 'var'), error('obj is a required parameter.'); end
0021 if ~exist('display_factor', 'var')
0022 error('display_factor is a required parameter.');
0023 end
0024 if ~exist('view_setting3d', 'var')
0025 error('view_setting3d is a required parameter.');
0026 end
0027
0028
0029
0030
0031 if ~ishandle(obj.h)
0032 obj = bm_edit_app_view3d_make_figure(obj, view_setting3d);
0033 end
0034
0035
0036 fclr = zeros(5, 3);
0037 face_color = cell(0);
0038 face_color{1} = [0.8 0.7 0.6];
0039 eclr = 'none';
0040 light_mode = 0;
0041 max_mode = 1;
0042
0043
0044 H = guihandles(obj.h);
0045 figure(obj.h);
0046 cla(H.model_axes);
0047 obj.patch_handles = [];
0048
0049
0050 Nelements = vb_display_factor_get_length(display_factor);
0051 model_names = cell(0);
0052 for k=1:Nelements
0053 element = vb_display_factor_get_element(display_factor, k);
0054 switch(element.class_name)
0055 case 'surf_element'
0056 vertex = vb_surf_element_get_vertex(element);
0057 face = vb_surf_element_get_face(element);
0058 patch_h = bm_edit_app_view3d_plot_surf(...
0059 obj, ...
0060 H.model_axes, ...
0061 vertex, ...
0062 face, ...
0063 face_color{1}, ...
0064 max_mode);
0065 obj.patch_handles = [obj.patch_handles; patch_h];
0066 model_names{length(model_names)+1} = vb_display_element_get_name(element);
0067 end
0068 end
0069
0070
0071 camlight(-60,0);
0072 camlight(60,0);
0073 camlight(180,0);
0074
0075
0076 set(H.model_listbox, 'String', model_names);
0077
0078 xlim('auto');
0079 ylim('auto');
0080 zlim('auto');
0081
0082
0083
0084
0085 if nargout ~= 1
0086 error('function caller should receive obj.');
0087 end