Cat climbing shelf footprint calculator

Calculate placed rectangles [id,x,y,width,height,rotated] and unplaced IDs with your own figures.

Your numbers

Use the units shown. Results update as you change valid inputs.

Use placed rectangles [id,x,y,width,height,rotated] and unplaced IDs to compare changes to your inputs. The method and limits below explain the scope.

Examples

Examples

Try the starting example

Available wall width (cm)
200
Available wall height (cm)
180
Shelf front elevations JSON [ID,width cm,height envelope cm]
[["A",60,20],["B",60,20],["C",100,30]]
User clearance between shelf envelopes (cm)
20
Allow rectangle rotation 0=no / 1=yes
0
Wall exclusions JSON [x,y,width,height] (cm)
[[80,60,40,50]]
Placed rectangles [id,x,y,width,height,rotated]
[["A",0,0,60,20,0],["B",80,0,60,20,0],["C",0,130,100,30,0]]
Unplaced IDs
[]
Placed rectangle count
3
Placed footprint area (square input units)
5400

Try another scenario

Available wall width (cm)
120
Available wall height (cm)
180
Shelf front elevations JSON [ID,width cm,height envelope cm]
[["A",60,20],["B",60,20],["C",100,30]]
User clearance between shelf envelopes (cm)
20
Allow rectangle rotation 0=no / 1=yes
0
Wall exclusions JSON [x,y,width,height] (cm)
[[80,60,40,50]]
Placed rectangles [id,x,y,width,height,rotated]
[["A",0,0,60,20,0],["B",0,40,60,20,0],["C",0,130,100,30,0]]
Unplaced IDs
[]
Placed rectangle count
3
Placed footprint area (square input units)
5400
Calculation method

Calculation method

Placed rectangles [id,x,y,width,height,rotated]

Process input rows in order. Enumerate x=0/right edges+gap and y=0/top edges+gap of placed rectangles and exclusions. Test allowed orientations and nonoverlap; choose lowest y, then x, then unrotated.

Unplaced IDs

IDs for which this constructive heuristic finds no placement; not proof of global infeasibility.

Placed rectangle count

Count placements.

Placed footprint area (square input units)

Sum width*height of placed rectangles.

Symbols and units
a
Available wall width (cm)
b
Available wall height (cm)
c
Shelf front elevations JSON [ID,width cm,height envelope cm]
d
User clearance between shelf envelopes (cm)
e
Allow rectangle rotation 0=no / 1=yes
f
Wall exclusions JSON [x,y,width,height] (cm)

Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.

Assumptions & limits

Assumptions & limits

  • Wall-plane rectangular footprint arrangement using the displayed front-elevation envelopes. This does not design a climbable route, assess jumps, specify anchors, determine load capacity or assure pet suitability. Clearance is user selected. Supported limits: 1..50 positive shelf envelopes, positive wall; gap>=0; rotation 0/1; exclusions inside wall; actual bottom-left coordinate feasibility only.
Are these inputs private?

These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.

Share this page
Share this calculator

Leave unchecked to share the page without your entered values.