Error while converting polyshape into double
10 次查看(过去 30 天)
显示 更早的评论
i have building my polyshape of a ship and i'm trying to rotate it depends on "head" value, which is the angle of the ship in radian.
in simple script it rotate absolutely fine, but in main script it find some error because the polyshape cannot convert into double data.
here i attached all my relevant script, the main script is "Kedua_LoopScript.m"
wonder why it cannot works and how to solve it
0 个评论
采纳的回答
Matt J
2023-6-20
编辑:Matt J
2023-6-21
You have pre-allocated ShipImg as a numeric double float vector,
ShipImg = ones(1,length(t)); %a double vector of ones
Then instead of trying to insert a number into ShipImg(n) in line 208, you try to assign a polyshape,
ShipImg(n) = ShipImgRotation(rad2deg(head(n)),LPP,B,xG); %right hand side is a polyshape, left side is not
You cannot stick a polyshape object into a memory location reserved for a double float.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Elementary Polygons 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!