Problem adding a field to a struct via function

13 次查看(过去 30 天)
Hi!
I would like to use functions, which compute a few things, and then add the respective results to my struct. My problem is that, when I put the very same lines in the command window, it works perfectly, but when I use my functions, nothing changes.
For example, I have the short code:
function generateTriangleCount(MeshInfo)
SizeTriangleField=size(MeshInfo.tri);
MeshInfo.NT=SizeTriangleField(1);
end
where MeshInfo is my structure. Entering generateTriangleCount(MeshInfo) does not add the field NT to my structure, but entering SizeTriangleField=size(MeshInfo.tri); and MeshInfo.NT=SizeTriangleField(1); does. What do I do wrong?

采纳的回答

Kelly Kearney
Kelly Kearney 2021-11-17
Your function doesn't return any output. Modify it to do so:
function MeshInfo = generateTriangleCount(MeshInfo)
SizeTriangleField=size(MeshInfo.tri);
MeshInfo.NT=SizeTriangleField(1);
end
and then call it via:
MeshInfo = generateTriangleCount(MeshInfo);

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by