Changeset 5616


Ignore:
Timestamp:
08/27/10 14:31:32 (15 years ago)
Author:
Mathieu Morlighem
Message:

Added plot_edges.m and speeded up all numbering routines

Location:
issm/trunk/src/m/classes/public/plot
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/classes/public/plot/plot_elementnumbering.m

    r4330 r5616  
    1818        A=elements(:,1); B=elements(:,2); C=elements(:,3);
    1919        patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    20         for i=1:size(elements,1),
    21                 text(sum(x(elements(i,:)))/3,sum(y(elements(i,:)))/3,sum(z(elements(i,:)))/3,num2str(elementnumbers(i)));
    22                 if ismember(elementnumbers(i),getfieldvalue(options,'highlight',[]))
    23                         A=elements(i,1); B=elements(i,2);  C=elements(i,3);
    24                         patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    25                 end
    26         end
     20
     21        %highlight
     22        pos=getfieldvalue(options,'highlight',[]);
     23        A=elements(pos,1); B=elements(pos,2); C=elements(pos,3);
     24        patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
     25
     26        %numbering
     27        text(sum(x(elements(:,1:3)),2)/3,sum(y(elements(:,1:3)),2)/3,sum(z(elements(:,1:3)),2)/3,...
     28                num2str(transpose(1:size(elements,1))),...
     29                'HorizontalAlignment','center','VerticalAlignment','middle');
    2730else
    2831        %plot mesh
     
    3336        patch( 'Faces', [B E F C ], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    3437        patch( 'Faces', [C A D F ], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    35         for i=1:size(elements,1),
    36                 text(sum(x(elements(i,:)))/6,sum(y(elements(i,:)))/6,sum(z(elements(i,:)))/6,num2str(elementnumbers(i)));
    37                 if ismember(elementnumbers(i),getfieldvalue(options,'highlight',[]))
    38                         A=elements(i,1); B=elements(i,2);  C=elements(i,3);  D=elements(i,4); E=elements(i,5);  F=elements(i,6);
    39                         patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    40                         patch( 'Faces', [D E F], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    41                         patch( 'Faces', [A B E D], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    42                         patch( 'Faces', [B E F C ], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    43                         patch( 'Faces', [C A D F ], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    44                 end
    45         end
     38
     39        %highlight
     40        pos=getfieldvalue(options,'highlight',[]);
     41        A=elements(pos,1); B=elements(pos,2); C=elements(pos,3);
     42        patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','none','EdgeColor','black');
     43        patch( 'Faces', [D E F], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','none','EdgeColor','black');
     44        patch( 'Faces', [A B E D], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','none','EdgeColor','black');
     45        patch( 'Faces', [B E F C ], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','none','EdgeColor','black');
     46        patch( 'Faces', [C A D F ], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','none','EdgeColor','black');
     47
     48        %numbering
     49        text(sum(x(elements(:,1:6)),2)/6,sum(y(elements(:,1:6)),2)/6,sum(z(elements(:,1:6)),2)/6,...
     50                num2str(transpose(1:size(elements,1))),...
     51                'HorizontalAlignment','center','VerticalAlignment','middle');
    4652end
    4753
  • issm/trunk/src/m/classes/public/plot/plot_gridnumbering.m

    r4330 r5616  
    1818        A=elements(:,1); B=elements(:,2); C=elements(:,3);
    1919        patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    20         for i=1:length(gridnumbers)
    21                 text(x(i),y(i), z(i),num2str(gridnumbers(i)),'backgroundcolor',[0.8 0.9 0.8]);
    22         end
    23         if exist(options,'highlight'),
    24                 list=getfieldvalue(options,'highlight');
    25                 for i=1:length(list)
    26                         text(x(list(i)),y(list(i)), z(list(i)),num2str(list(i)),'backgroundcolor',[1 0 0]);
    27                 end
    28         end
     20
     21        %numbering
     22        text(x,y,z,num2str(transpose(1:size(x,1))),...
     23                'backgroundcolor',[0.8 0.9 0.8],'HorizontalAlignment','center','VerticalAlignment','middle');
     24
     25        %Highlight
     26        pos=getfieldvalue(options,'highlight',[]);
     27        text(x(pos),y(pos),z(pos),num2str(transpose(pos)),...
     28                'backgroundcolor',[1 0 0],'HorizontalAlignment','center','VerticalAlignment','middle');
    2929else
    3030        %plot mesh
     
    3535        patch( 'Faces', [B E F C ], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    3636        patch( 'Faces', [C A D F ], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    37         for i=1:length(gridnumbers)
    38                 text(x(i),y(i), z(i),num2str(i),'backgroundcolor',[0.8 0.9 0.8]);
    39         end
    40         if exist(options,'highlight'),
    41                 list=getfieldvalue(options,'highlight');
    42                 for i=1:length(list)
    43                         text(x(list(i)),y(list(i)), z(list(i)),num2str(list(i)),'backgroundcolor',[1 0 0]);
    44                 end
    45         end
     37
     38        %numbering
     39        text(x,y,z,num2str(transpose(1:size(x,1))),...
     40                'backgroundcolor',[0.8 0.9 0.8],'HorizontalAlignment','center','VerticalAlignment','middle');
     41
     42        %Highlight
     43        pos=getfieldvalue(options,'highlight',[]);
     44        text(x(pos),y(pos),z(pos),num2str(transpose(pos)),...
     45                'backgroundcolor',[1 0 0],'HorizontalAlignment','center','VerticalAlignment','middle');
    4646end
    4747
  • issm/trunk/src/m/classes/public/plot/plot_highlightelements.m

    r4330 r5616  
    1919        A=elements(:,1); B=elements(:,2); C=elements(:,3);
    2020        patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    21         for i=1:size(elements,1),
    22                 if ismember(elementnumbers(i),getfieldvalue(options,'highlight',[]))
    23                         A=elements(i,1); B=elements(i,2);  C=elements(i,3);
    24                         patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    25                 end
    26         end
     21
     22        %Highlight
     23        pos=getfieldvalue(options,'highlight',[]);
     24        A=elements(pos,1); B=elements(pos,2); C=elements(pos,3);
     25        patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    2726else
    2827        %plot mesh
     
    3332        patch( 'Faces', [B E F C ], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    3433        patch( 'Faces', [C A D F ], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    35         for i=1:size(elements,1),
    36                 if ismember(elementnumbers(i),getfieldvalue(options,'highlight',[]))
    37                         A=elements(i,1); B=elements(i,2);  C=elements(i,3);  D=elements(i,4); E=elements(i,5);  F=elements(i,6);
    38                         patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    39                         patch( 'Faces', [D E F], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    40                         patch( 'Faces', [A B E D], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    41                         patch( 'Faces', [B E F C ], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    42                         patch( 'Faces', [C A D F ], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    43                 end
    44         end
     34
     35        %Highlight
     36        pos=getfieldvalue(options,'highlight',[]);
     37        A=elements(pos,1); B=elements(pos,2); C=elements(pos,3); D=elements(pos,4); E=elements(pos,5); F=elements(pos,6);
     38        patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
     39        patch( 'Faces', [D E F], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
     40        patch( 'Faces', [A B E D], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
     41        patch( 'Faces', [B E F C ], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
     42        patch( 'Faces', [C A D F ], 'Vertices', [x y z],'FaceVertexCData', [0.9 0.5 0.5],'FaceColor','flat','EdgeColor','black');
    4543end
    4644
  • issm/trunk/src/m/classes/public/plot/plot_highlightgrids.m

    r4330 r5616  
    1818        A=elements(:,1); B=elements(:,2); C=elements(:,3);
    1919        patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    20         list=getfieldvalue(options,'highlight',[]);
    21         for i=1:length(list)
    22                 text(x(list(i)),y(list(i)), z(list(i)),num2str(list(i)),'backgroundcolor',[1 0 0]);
    23         end
     20
     21        %Highlight
     22        pos=getfieldvalue(options,'highlight',[]);
     23        text(x(pos),y(pos),z(pos),num2str(transpose(pos)),...
     24                'backgroundcolor',[1 0 0],'HorizontalAlignment','center','VerticalAlignment','middle');
    2425else
    2526        %plot mesh
     
    3031        patch( 'Faces', [B E F C ], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    3132        patch( 'Faces', [C A D F ], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','none','EdgeColor','black');
    32         list=getfieldvalue(options,'highlight',[]);
    33         for i=1:length(list)
    34                 text(x(list(i)),y(list(i)), z(list(i)),num2str(list(i)),'backgroundcolor',[1 0 0]);
    35         end
     33
     34        %Highlight
     35        pos=getfieldvalue(options,'highlight',[]);
     36        text(x(pos),y(pos),z(pos),num2str(transpose(pos)),...
     37                'backgroundcolor',[1 0 0],'HorizontalAlignment','center','VerticalAlignment','middle');
    3638end
    3739
  • issm/trunk/src/m/classes/public/plot/plot_manager.m

    r5527 r5616  
    2424                        plot_BC(md,options,subplotwidth,i,data);
    2525                        return;
     26                case 'edges'
     27                        plot_edges(md,options,subplotwidth,i,data)
     28                        return
    2629                case 'elementnumbering',
    2730                        plot_elementnumbering(md,options,subplotwidth,i);
Note: See TracChangeset for help on using the changeset viewer.