Fix to SHRINKFACES

A fix to shrinkfaces that behaves as documented also for patches not formed with faces/vertices prop

이 제출물을 팔로우합니다

The shipped shrinkfaces m-file fails (sometime) when operated through the syntax :
>> shrinkfaces(PatchHandle, ShrinkFactor)

It fails exactly when the operated patch was formed in a direct 'patch(x,y,z,c' manner, and not via 'patch('vertices',..., 'faces',..)'. The reason is that a patch formed in the former manner has FaceVertexCdata with size numVerts-by-3 (or by 1), and after the verts duplication performed by shrinkfaces it is irrelevant, and shrinkfaces fails to update it. This version does.
Please let me know of any bugs/further requests: ofek@REMOVETHISsimbionix.com .

Example:

[x,y,z,v] = flow;
[x,y,z,v] = reducevolume(x,y,z,v,2);
fv = isosurface(x,y,z,v,-3);

p=trisurf(fv.faces,fv.vertices(:,1),fv.vertices(:,2),fv.vertices(:,3))
shrinkfaces(p,0.6) ; % fails - does not behave as documented.

delete(gcf)
p=trisurf(fv.faces,fv.vertices(:,1),fv.vertices(:,2),fv.vertices(:,3))
myshrinkfaces(p,0.6) ; % succeeds

인용 양식

Ofek Shilon (2026). Fix to SHRINKFACES (https://kr.mathworks.com/matlabcentral/fileexchange/11720-fix-to-shrinkfaces), MATLAB Central File Exchange. 검색 날짜: .

일반 정보

MATLAB 릴리스 호환 정보

  • 모든 릴리스와 호환

플랫폼 호환성

  • Windows
  • macOS
  • Linux
버전 퍼블리시됨 릴리스 정보 Action
1.0.0.0