so I'm making a videogame
显示 更早的评论
I have a vector of enemy handles so that I can assign visibility to certain enemies and not others, but once I update all of their positions (xdata and ydata), the visibility gets messed up and all become visible in the entire map. Anyone know why? I tried to use get(e,'visible') but it returns a cell of 'on' or 'off' that sucks to feed into set
回答(3 个)
Matt Kindig
2012-5-24
Do you have any calls to 'drawnow'? I don't think that simply changing the xdata/ydata is supposed to change handle visibility. Some other commands, such as 'figure', 'pause', and others automatically call drawnow.
One way you could quickly set all visibilities is to pass in a vector of handles to the set command. Something like:
set( HandlesOfHiddenObjects, 'Visible', 'off');
set( HandlesOfVisibleObjects, 'Visible', 'on');
2 个评论
Walter Roberson
2012-5-24
drawnow() should not affect the visibility of anything.
Stephen
2012-5-24
Walter Roberson
2012-5-24
0 个投票
You cannot set the visibility of individual points in a line object. Your visibility with that code is going to be set according to the last value that happens to be in the array.
类别
在 帮助中心 和 File Exchange 中查找有关 Startup and Shutdown 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!