📄 mirrordemo1.m
字号:
%MirrorDemo1
close all
clear all
imgFilename = [];
% imgFilename{end+1} = 'jug1.png';
%imgFilename{end+1} = 'jug2.png';
% imgFilename{end+1} = 'horse1.png';
% imgFilename{end+1} = 'horse2.png';
imgFilename{end+1} = 'locust1.png';
imgFilename{end+1} = 'locust2.png';
for imgLoop = 1:length(imgFilename)
imCell{imgLoop} = imread(imgFilename{imgLoop});
imCell{imgLoop} = im2double(imCell{imgLoop});
% EvalPrint('size(imCell{imgLoop})')
polyBoundaryVec = ExtractBoundaries( imCell{imgLoop} );
polyBoundaryVecCell{imgLoop} = polyBoundaryVec;
end
%mergedViewVec = StaticMirrorObjMovingCamFn( polyBoundaryVecCell, 'draw', 1, 'useMiddleOfSilhouettesAsInitPp', 0 );
mergedViewVec = StaticMirrorObjMovingCamFn( polyBoundaryVecCell, 'draw', 1 );
[pMesh, kMesh] = VhMarchTetMirror( mergedViewVec, imCell, 'draw', 1, 'cellWid', 0.002 );
vrmlFilename = 'DoubleMirrorModel.wrl';
fid = fopen( vrmlFilename, 'w' );
fprintf(fid, '#VRML V2.0 utf8\n');
fprintf(fid, 'Background {skyColor [0 0 0]}\n');
cameraPosition = [0;0;5];
cameraTarget = ViewVecCentrePoint( mergedViewVec );
AddVrmlViewpoint( fid, cameraPosition, cameraTarget, 'description', 'visual hull', 'fieldOfView', 0.2 );
AddVrmlIndexedFaceSet( fid, pMesh, kMesh, 'objNameStr', 'DoubleMirror');
fclose(fid);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -