Я пытаюсь эффективно перевести многоугольник через фигуру в Matlab (R2018). В настоящее время я делаю это с помощью patch ():
player.block = hgtransform;
patch('XData',x,'YData',y,'FaceColor','blue','Parent',player.block);
потом позже ...
player.block.Matrix = makehgtform('translate',[0 player.pos 0]);
Это сработало довольно хорошо. Но когда есть несколько патчей для перемещения графического лага, я пытаюсь использовать команду polyshape (). Из документации говорится, что вы можете установить объект Polyshape как дочерний для объекта преобразования. Я попытался сделать это следующим образом:
block = hgtransform;
square = polyshape(x,y);
player.block = plot(square);
player.block.Parent = block;
Затем я получаю «Невозможно установить свойство для удаленного объекта».
Как вы переводите объекты Polyshape с помощью HGTransform / это вообще возможно?