Erasemode error: How do i correct it?

33 ビュー (過去 30 日間)
KLETECH MOTORSPORTS
KLETECH MOTORSPORTS 2020 年 11 月 13 日
回答済み: Maadhav Akula 2020 年 11 月 17 日
Tried running this code i found in Rudrapratap for the animation of a 2D bar pendulum. I'm getting the following errors:
Warning: The EraseMode property is no longer supported and will error in a future release.
> In pendmotion22 (line 20)
Warning: The EraseMode property is no longer supported and will error in a future release.
> In pendmotion22 (line 24)
Warning: The EraseMode property is no longer supported and will error in a future release.
> In pendmotion22 (line 29)
Warning: The EraseMode property is no longer supported and will error in a future release.
> In pendmotion22 (line 40)
Warning: The EraseMode property is no longer supported and will error in a future release.
> In pendmotion22 (line 43)
Any idea what i can change in the code?
% get basic data for animat ion
% ask the user for initi al position
disp(' Please specify the init ial angle from the')
disp(' verti cal upright position . ')
disp(' ')
offset=input ( 'Enter the initial angle now : ');
tfinal=input ( ' Please enter the duration of simulation: ' ) ; % ask the user f or t ime of s imulation
disp ( ' I am working .... ' )
theta = pi-offset ; % initial angle
thetadot = 0; % initial angular speed
dt =.2; t=0 ; tf=tfinal ; % time step , initial and final time
disp ( ' Watch the graphics screen ' )
clf % clear figure and stuff
hl = axes('position',[0.55 .1 .4 .3]);
axis( [0 tf -4 4] ); % set axis limits
xlabel( 'time') , ylabel('displacement ')
Displ = line('xdata' , [] , 'ydata' , [] , 'marker','.' , 'erasemode' , 'none' );
h2 = axes( 'position' , [0.55 .55 .4 .3]);
axis ( [0 tf -4 4] ) ; % set axis limits
xlabel ( ' t ime') , ylabel ('velocity ')
Vel = line ( 'xdata' , [] , 'ydata' , [] , 'marker' , '.' , 'erasemode' , 'none' ) ;
h3 = axes( 'position',[.1 .1 .4 .4]);
axis ( [-pi pi -4 4] ) % set axis limits
axis ('square')
xlabel ( 'displacement' ) , ylabel ( 'velocity')
Phase = line('xdata' , [] , 'ydata' , [] , 'marker' , '.' , 'erasemode' , 'none' ) ;
h4 = axes ( 'position' , [.1 .55 .4 .4]);
axis ( [-2 2 -2 2] ) % set axis limits
axis ( 'square' )
data = [0 0; - 1.8 0] ;
phi = 0;
% coordinates of endpoints of the bar
% initial orientat ion
R = [cos(phi) -sin(phi ) ; +sin(phi ) cos(phi)] ; % rotation matrix
data=R*data;
%-----def ine the obj ects called bar , hinge , and path .
bar = line('xdata' , data (1, :), 'ydata' , data (2, :),...
'linewidth' ,3, 'erase' , 'xor') ;
hinge = line( 'xdata' , 0 , 'ydata' , 0 , 'marker' , 'o' , 'markersize' , [10] ) ;
path = line( 'xdata' , [] , 'ydata' , [] , 'marker' , '.' , 'erasemode' , 'none' ) ;
%------Euler 's method for numeri cal integrat ion
while (t<tfinal )
end
t = t+dt ;
theta = theta + thetadot*dt ;
thetadot = thetadot -sin(theta) *dt ;
R = [cos(theta) ( -sin(theta) ); sin(theta) cos(theta) ];
datanew = R*data;
%---- change the property values of the obj ects : path and bar .
set (path , ' xdata ', datanew( 1,1 ), 'ydata ', datanew( 2 , 1 ) ) ;
set (bar , 'xdata' , datanew (1, :), 'ydata' , datanew (2, :) );
set (Phase , 'xdata ', theta, 'ydata ', thetadot );
set (Displ , 'xdata', t, 'ydata' , theta ) ;
set (Vel , 'xdata' , t, 'ydata' , thetadot ) ;
drawnow ;

回答 (1 件)

Maadhav Akula
Maadhav Akula 2020 年 11 月 17 日
Erasemode property has been removed starting from R2014b, you can refer the following answer for how to replace that property:

カテゴリ

Help Center および File ExchangeAssembly についてさらに検索

製品


リリース

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by