Moving Sofa Problem

Author

Eric W. Weisstein
December 14, 2024

This notebook downloaded from http://mathworld.wolfram.com/notebooks/ComputationalGeometry/MovingSofaProblem.nb.

For more information, see Eric's MathWorld entry http://mathworld.wolfram.com/MovingSofaProblem.html.

©2024 Wolfram Research, Inc. except for portions noted otherwise

Square sofa

From Dan Romik's SofaVisualizationSquareSofaInHallway routine in movingsofas-v1 .3.nb

SquareSofaAnimation=Table[Graphics[{SofaHallway[3],Translate[SquareSofa,Piecewise[{{2.5{t-1,0},t≤1},{2.5{0,1-t},t≤2}}]]}],{t,0,2,.03}]

ListAnimate[SquareSofaAnimation]

(gif=Export[FileNameJoin[{"/Users/eww/Sites/mathworld.wolfram.com/htdocs/images/gifs","MovingSofaSquareAnimation.gif"}],SquareSofaAnimation,ImageSize->150])//AbsoluteTiming

Tally[ImageDimensions/@Import[gif]]

Area@FirstCase[SquareSofa,_Polygon,Missing,∞]

Semicular sofa

From Dan Romik's SofaVisualizationSemicircularSofaInHallway routine in movingsofas-v1 .3.nb

SemicircleSofaAnimation=Table[SofaMovieWithHallway[4,1.5,HammersleyGeneralizedSofa[0],HammersleyGeneralizedSofaRotationPath[0],t],{t,0,3,.05}]

ListAnimate[SemicircleSofaAnimation]

(gif=Export[FileNameJoin[{"/Users/eww/Sites/mathworld.wolfram.com/htdocs/images/gifs","MovingSofaSemicircleAnimation.gif"}],SemicircleSofaAnimation,ImageSize->150])//AbsoluteTiming

Tally[ImageDimensions/@Import[gif]]

Area@FirstCase[HammersleyGeneralizedSofa[0],_Disk,Missing,∞]

N[%]