Ignore:
Timestamp:
Mar 30, 2020, 3:48:19 PM (4 years ago)
Author:
sommeria
Message:

various updates

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/mouse_motion.m

    r1077 r1078  
    220220                pos=[xy(1,1) xy(1,2) 0];%coordinates on the graph
    221221                if isfield(Field,'ProjObjectAngle')&&~isequal(Field.ProjObjectAngle,[0 0 0])
    222                     om=norm(Field.ProjObjectAngle);%norm of rotation angle in radians
    223                     OmAxis=Field.ProjObjectAngle/om; %unit vector marking the rotation axis
    224                     cos_om=cos(pi*om/180);
    225                     sin_om=sin(pi*om/180);
    226                     pos=[xy(1,1) xy(1,2) 0];
    227                     %pos=cos_om*pos+sin_om*cross(OmAxis,pos)+(1-cos_om)*(OmAxis*pos')*OmAxis;
    228                     coeff=OmAxis(3)*(1-cos_om);
    229                     norm_plane(1)=OmAxis(1)*coeff+OmAxis(2)*sin_om;
    230                     norm_plane(2)=OmAxis(2)*coeff-OmAxis(1)*sin_om;
    231                     norm_plane(3)=OmAxis(3)*coeff+cos_om;
    232                     %Z0=norm_plane*Field.ProjObjectCoord'/norm_plane(3);
    233                     pos(3)=-(norm_plane(1)*pos(1)+norm_plane(2)*pos(2))/norm_plane(3);                               
    234                 end
    235                 pos=pos+Field.ProjObjectCoord;
     222                    norm_plane=angle2normal(Field.ProjObjectAngle);
     223                    pos(3)=-(norm_plane(1)*(pos(1)-Field.ProjObjectCoord(1))+norm_plane(2)*(pos(2)-Field.ProjObjectCoord(2)))/norm_plane(3);                               
     224                end
     225                pos(3)=pos(3)+Field.ProjObjectCoord(3);
    236226                text_displ_3=[text_displ_3 'x,y,z=' num2str(pos,4)];
    237227            end
Note: See TracChangeset for help on using the changeset viewer.