{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Setup"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-27T13:10:39.556994Z",
     "start_time": "2019-07-27T13:10:34.822113Z"
    },
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "from matplotlib.patches import Rectangle\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Define some (potentially?) useful fractions for setting inputs.\n",
    "\n",
    "(In retrospect, it is easier to type 3*sixteenth than remember and type that this is 0.1875, but it's easier yet to type 3/16.0, so this isn't that useful.)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-27T13:10:39.564991Z",
     "start_time": "2019-07-27T13:10:39.560149Z"
    },
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "half = 1/2.\n",
    "quarter = 1/4.\n",
    "eighth = 1/8.\n",
    "sixteenth = 1/16."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here are some functions to help with formating values for printing, in particularly to getting aspect ratios of rectangles."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-27T13:10:39.579609Z",
     "start_time": "2019-07-27T13:10:39.569316Z"
    },
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def formatRectSizes(w,h):\n",
    "    return w, h, float(w)/float(h), float(h)/float(w)\n",
    "\n",
    "def getBothARs(w,h):\n",
    "    return float(w)/float(h), float(h)/float(w)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-27T13:10:39.616570Z",
     "start_time": "2019-07-27T13:10:39.590694Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(2, 3, 16)"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "def convertToFrac(x):\n",
    "    \"\"\"\n",
    "    Given some decimal number of inches, output it as a fraction.\n",
    "    For example, 2.1875 = 2 and 3/16 inches, so convertToFrac(2.1875) returns (2,3,16)\n",
    "    \"\"\"\n",
    "    inches = np.trunc(x)\n",
    "    if inches == x:\n",
    "        return int(inches), 0, 0\n",
    "    denoms = [2,4,8,16]\n",
    "    for denom in denoms:\n",
    "        num = denom*(x-inches)\n",
    "        if num == np.trunc(num):\n",
    "            break\n",
    "    return int(inches), int(num), int(denom)\n",
    "\n",
    "convertToFrac(2.1875)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-27T13:10:39.632649Z",
     "start_time": "2019-07-27T13:10:39.620657Z"
    }
   },
   "outputs": [],
   "source": [
    "def convertToFeetAndInches(total):\n",
    "    \"\"\"\n",
    "    Given some number of inches, return the number of feet and inches.\n",
    "    \"\"\"\n",
    "    feet = int(np.trunc(total/12))\n",
    "    inches = total - 12*feet\n",
    "    return feet, inches\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Round off values to the nearest eighth of an inch, since there's no way I'm cutting things to the nearest hundredth of an inch."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-27T13:10:39.651389Z",
     "start_time": "2019-07-27T13:10:39.642661Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.9375"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "def roundOff(x, denom=8):\n",
    "    return np.round(x*denom)/float(denom)\n",
    "\n",
    "roundOff(0.95, 16)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-13T14:15:23.605061Z",
     "start_time": "2019-07-13T14:15:23.601648Z"
    }
   },
   "source": [
    "# Working Outward (solve for frame size)\n",
    "\n",
    "Given the size of your artwork, mat, etc., how big will the frame be?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-27T20:13:39.157600Z",
     "start_time": "2019-07-27T20:13:39.147645Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Frame size:  16.500 x 16.500\n",
      "  (width:    16 1/2\")\n",
      "  (height:   16 1/2\")\n"
     ]
    }
   ],
   "source": [
    "#specify frame thickness   <----------\n",
    "frameThickness = 1.25\n",
    "frameRabet = quarter\n",
    "\n",
    "#specify size of art   <----------\n",
    "artW = 8\n",
    "artH = 8\n",
    "\n",
    "#specify float (can be zero)   <----------\n",
    "floatL = 0\n",
    "floatR = 0\n",
    "floatT = 0\n",
    "floatB = 0\n",
    "\n",
    "#calculated\n",
    "windowW = artW + floatL + floatR\n",
    "windowH = artH + floatT + floatB\n",
    "\n",
    "#specify size of mat board   <----------\n",
    "matBorderL = 3\n",
    "matBorderR = matBorderL\n",
    "matBorderT = 3\n",
    "matBorderB = 3\n",
    "\n",
    "#calculated\n",
    "frameInW = windowW + matBorderL + matBorderR\n",
    "frameInH = windowH + matBorderT + matBorderB\n",
    "\n",
    "#calculated\n",
    "frameOutW = frameInW + 2*frameThickness\n",
    "frameOutH = frameInH + 2*frameThickness\n",
    "\n",
    "print(\"Frame size:  {:6.3f} x {:6.3f}\".format(frameOutW, frameOutH))\n",
    "print(\"  (width:    {:2d} {:d}/{:d}\\\")\".format(*convertToFrac(frameOutW)))\n",
    "print(\"  (height:   {:2d} {:d}/{:d}\\\")\".format(*convertToFrac(frameOutH)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Working Inward (solve for art size)\n",
    "\n",
    "This is a rather rarer situation, but occasionally I have a frame size in mind and want to create a print for it of the correct size."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-25T19:00:25.441325Z",
     "start_time": "2019-07-25T19:00:25.423498Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "art size:     9.250\" x 11.250\"\n",
      "  (width:     9 1/4\")\n",
      "  (height:   11 1/4\")\n"
     ]
    }
   ],
   "source": [
    "#specify frame thickness   <----------\n",
    "frameThickness = 7*eighth\n",
    "frameRabet = quarter\n",
    "\n",
    "#specify final size of frame   <----------\n",
    "frameOutW = 17.25\n",
    "frameOutH = 21.25\n",
    "\n",
    "#calculated\n",
    "frameInW = frameOutW - 2*frameThickness\n",
    "frameInH = frameOutH - 2*frameThickness\n",
    "\n",
    "#specify size of mat board   <----------\n",
    "matBorderL = 3\n",
    "matBorderR = matBorderL\n",
    "matBorderT = 3\n",
    "matBorderB = 5\n",
    "\n",
    "#calculated\n",
    "windowW = frameInW - (matBorderL + matBorderR)\n",
    "windowH = frameInH - (matBorderT + matBorderB)\n",
    "\n",
    "#specify float (can be zero)   <----------\n",
    "floatL = eighth\n",
    "floatR = eighth\n",
    "floatT = eighth\n",
    "floatB = eighth\n",
    "\n",
    "#calculated\n",
    "artW = windowW - (floatL + floatR)\n",
    "artH = windowH - (floatT + floatB)\n",
    "\n",
    "print(\"art size:    {:6.3f}\\\" x {:6.3f}\\\"\".format(artW, artH))\n",
    "print(\"  (width:    {:2d} {:d}/{:d}\\\")\".format(*convertToFrac(artW)))\n",
    "print(\"  (height:   {:2d} {:d}/{:d}\\\")\".format(*convertToFrac(artH)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Working Middle-ward (?) (solve for mat size)\n",
    "\n",
    "Given a frame I want to use, and an existing piece of artwork, how big wil the mat end up being?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-25T19:00:25.475847Z",
     "start_time": "2019-07-25T19:00:25.450214Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Mat board margin left:   1.875\"   (1 7/8\")\n",
      "Mat board margin right:  1.875\"   (1 7/8\")\n",
      "Mat board margin top:    1.750\"   (1 3/4\")\n",
      "Mat board margin bottom: 1.750\"   (1 3/4\")\n"
     ]
    }
   ],
   "source": [
    "#specify frame thickness   <----------\n",
    "frameThickness = 7*eighth\n",
    "frameRabet = quarter\n",
    "\n",
    "#specify size of art   <----------\n",
    "artW = 11.75\n",
    "artH = 12\n",
    "\n",
    "#specify final size of frame   <----------\n",
    "frameOutW = 17.25\n",
    "frameOutH = 17.25\n",
    "\n",
    "#specify float (can be zero)   <----------\n",
    "floatL = 0\n",
    "floatR = 0\n",
    "floatT = 0\n",
    "floatB = 0\n",
    "\n",
    "#calculated\n",
    "frameInW = frameOutW - 2*frameThickness\n",
    "frameInH = frameOutH - 2*frameThickness\n",
    "\n",
    "#calculated\n",
    "windowW = artW + floatL + floatR\n",
    "windowH = artH + floatT + floatB\n",
    "\n",
    "#calculated\n",
    "matBorderL = (frameInW - windowW)/2.0\n",
    "matBorderR = (frameInW - windowW)/2.0\n",
    "matBorderT = (frameInH - windowH)/2.0\n",
    "matBorderB = (frameInH - windowH)/2.0\n",
    "\n",
    "print(\"Mat board margin left:   {:.3f}\\\"   ({:d} {:d}/{:d}\\\")\".format(matBorderL, *convertToFrac(matBorderL)))\n",
    "print(\"Mat board margin right:  {:.3f}\\\"   ({:d} {:d}/{:d}\\\")\".format(matBorderR, *convertToFrac(matBorderR)))\n",
    "print(\"Mat board margin top:    {:.3f}\\\"   ({:d} {:d}/{:d}\\\")\".format(matBorderT, *convertToFrac(matBorderT)))\n",
    "print(\"Mat board margin bottom: {:.3f}\\\"   ({:d} {:d}/{:d}\\\")\".format(matBorderB, *convertToFrac(matBorderB)))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Monophonic\n",
    "\n",
    "Solve for frame & mat size to equalize the aspect ratio of the art and frame."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-25T19:00:25.507723Z",
     "start_time": "2019-07-25T19:00:25.482746Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Frame size:         17.250 x 14.125\n",
      "Frame aspect ratio:  1.221 | 0.819\n",
      "Art aspect ratio:    1.226 | 0.816\n",
      "\n",
      "Mat board margin left:   3.000\"   (3 0/0\")\n",
      "Mat board margin right:  3.000\"   (3 0/0\")\n",
      "Mat board margin top:    2.312\"   (2 5/16\")\n",
      "Mat board margin bottom: 2.312\"   (2 5/16\")\n"
     ]
    }
   ],
   "source": [
    "roundDimensions = True\n",
    "\n",
    "#specify frame thickness   <----------\n",
    "frameThickness = 7*eighth\n",
    "frameRabet = quarter\n",
    "\n",
    "#specify size of art   <----------\n",
    "artW = 9.5\n",
    "artH = 7.75\n",
    "\n",
    "#calculated\n",
    "targetAR = float(artW)/float(artH)\n",
    "\n",
    "#specify one dimension and leave the other zero\n",
    "frameOutW = 17.25\n",
    "frameOutH = 0\n",
    "\n",
    "if frameOutH == 0.0:\n",
    "    frameOutH = frameOutW / targetAR\n",
    "elif frameOutW == 0.0:\n",
    "    frameOutW = frameOutH * targetAR\n",
    "\n",
    "if roundDimensions:\n",
    "    frameOutH = roundOff(frameOutH, 8)\n",
    "    frameOutW = roundOff(frameOutW, 8)\n",
    "\n",
    "print(\"Frame size:         {:6.3f} x {:6.3f}\".format(frameOutW, frameOutH))\n",
    "print(\"Frame aspect ratio:  {:.3f} | {:.3f}\".format(*getBothARs(frameOutW,frameOutH)))\n",
    "print(\"Art aspect ratio:    {:.3f} | {:.3f}\".format(*getBothARs(artW,artH)))\n",
    "\n",
    "#specify float (can be zero)   <----------\n",
    "floatL = 0.0\n",
    "floatR = 0.0\n",
    "floatT = 0.0\n",
    "floatB = 0.0\n",
    "\n",
    "#calculated\n",
    "frameInW = frameOutW - 2*frameThickness\n",
    "frameInH = frameOutH - 2*frameThickness\n",
    "\n",
    "#calculated\n",
    "windowW = artW + floatL + floatR\n",
    "windowH = artH + floatT + floatB\n",
    "\n",
    "#calculated\n",
    "matBorderL = (frameInW - windowW)/2.0\n",
    "matBorderR = (frameInW - windowW)/2.0\n",
    "matBorderT = (frameInH - windowH)/2.0\n",
    "matBorderB = (frameInH - windowH)/2.0\n",
    "\n",
    "print(\"\")\n",
    "print(\"Mat board margin left:   {:.3f}\\\"   ({:d} {:d}/{:d}\\\")\".format(matBorderL, *convertToFrac(matBorderL)))\n",
    "print(\"Mat board margin right:  {:.3f}\\\"   ({:d} {:d}/{:d}\\\")\".format(matBorderR, *convertToFrac(matBorderR)))\n",
    "print(\"Mat board margin top:    {:.3f}\\\"   ({:d} {:d}/{:d}\\\")\".format(matBorderT, *convertToFrac(matBorderT)))\n",
    "print(\"Mat board margin bottom: {:.3f}\\\"   ({:d} {:d}/{:d}\\\")\".format(matBorderB, *convertToFrac(matBorderB)))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Plotting"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-27T20:13:43.168098Z",
     "start_time": "2019-07-27T20:13:42.820774Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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p+qcTidNTU2sXbuW7t27f6lt2bJlTJ8+nZycHPbs2YPH4+HYsWO88847nDp1ioyMDF0ULiIiEkbCfsUpLy+PnJwcHA7Hl4qgpqYmRo0axSuvvMITTzzBiBEjuHTpEvX19UyfPp2tW7dy/vz5II5cREREOlrYrjg5nU4qKir47ne/+5W2o0eP8uyzz5Kfn09KSgpZWVmMHz+ee+65h6ysLBYuXKg76URERMJQ2BZOpaWl7Nu3j6SkpC/tt9aSmJiI2+1m5syZXL16lUceeQSApKQkXnvtNdLS0khOTqZPnz7BGLqIiIgESdidqnM6nezcuZOJEyeyZs2aL7VZa3nggQc4d+4cK1asYOrUqaSnpxMZGUldXR2PPfYYtbW1rFixQkWTiIhIGAq7wqmuro6ysrI224wxpKamsnfvXl544QXi4uKw1pKZmUlSUhLf+973OHLkCMnJyR08ahEREekMwqZwcrlcPP/88wwaNIgVK1Z8pb2goICXXnqJsWPHEhUVxfDhw5k4cSKbN2/G5XKxe/dukpKS+NWvfqUHXoqIiISpsKkAoqKiiImJ8Vv0jB07FpfLhdPppLKyksbGRs6fP09JSQlNTU0cOHCA3r17k5ubq8JJREQkTIV8BXDlyhXmz59PU1MTTz755Feeu9TY2MjSpUsxxuByufjJT35CbGwsaWlp5ObmYq0lOjqa5cuX881vfhNrbZBmIiIiIsEW8nfVORwOZs6cyW233dZme7du3RgwYADWWh5++GFmzZrFokWLePfddxk2bBi//e1vWb9+PQUFBezbt08PvBQREQljIbvidK0Q+uijj3jggQfaLHiKioo4efIkDoeDdevWsXz5curq6liyZAkffPABt99+OykpKWRnZ/Ozn/1MX68iIiIS5kJyxcntdhMZGcnatWsZNmyY3351dXUAZGVlcfbsWXbt2sWFCxfo378/vXr14u2338bpdJKSkkLPnj07avgiIiLSSYVk4TR37lwyMzOZNGlSm+2NjY0UFxczadIk7r//ftavX8/Fixf59a9/zfHjx0lNTcUYg9vtpq6ujt69e7f5hHEREREJLyF1qq6+vh632012djbf+ta3/PY7f/48hYWFDBw4kMOHD/Pyyy8zf/58evTowaZNm6ivr6e8vJyEhAQ8Hg8LFizowFmIiIhIZxVSK06rV68mMTGRefPm+e1z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\n",
      "text/plain": [
       "<Figure size 720x720 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "centeredAtOrigin = False\n",
    "\n",
    "imgMargin = 2\n",
    "imgW = frameOutW + 2*imgMargin\n",
    "imgH = frameOutH + 2*imgMargin\n",
    "\n",
    "plt.figure(figsize=(10,10))\n",
    "currentAxis = plt.gca()\n",
    "currentAxis.set_aspect('equal')\n",
    "\n",
    "if centeredAtOrigin:\n",
    "    originX = -1*frameOutW/2.0\n",
    "    originY = -1*frameOutH/2.0\n",
    "    currentAxis.set_xlim(-1*imgW/2.0, imgW/2.0)\n",
    "    currentAxis.set_ylim(-1*imgH/2.0, imgH/2.0)\n",
    "else:\n",
    "    originX = 0\n",
    "    originY = 0\n",
    "    currentAxis.set_xlim(-1*imgMargin,imgW-imgMargin)\n",
    "    currentAxis.set_ylim(-1*imgMargin,imgH-imgMargin)\n",
    "\n",
    "# outside of frame\n",
    "currentAxis.add_patch(Rectangle((originX, originY),\n",
    "                                frameOutW, frameOutH,\n",
    "                                edgecolor=(0,0,0), facecolor=(0,0,0,0.25)))\n",
    "# glazing etc:\n",
    "currentAxis.add_patch(Rectangle((originX+frameThickness-frameRabet, originY+frameThickness-frameRabet),\n",
    "                                frameInW+2*frameRabet, frameInH+2*frameRabet,\n",
    "                                edgecolor=(0.5,0.5,0.5), facecolor=(0,0,0,0.25)))\n",
    "# inside of frame:\n",
    "# (this resets this area of the canvas to white)\n",
    "currentAxis.add_patch(Rectangle((originX+frameThickness, originY+frameThickness),\n",
    "                                frameInW, frameInH,\n",
    "                                edgecolor=(0,0,0), facecolor=(1,1,1)))\n",
    "# matting:\n",
    "currentAxis.add_patch(Rectangle((originX+frameThickness, originY+frameThickness),\n",
    "                                frameInW, frameInH,\n",
    "                                edgecolor=(0,0,0), facecolor=(0,0,1,0.25)))\n",
    "# (this resets this area of the canvas to white)\n",
    "currentAxis.add_patch(Rectangle((originX+frameThickness+matBorderL, originY+frameThickness+matBorderB),\n",
    "                                windowW, windowH,\n",
    "                                edgecolor=(0,0,0), facecolor=(1,1,1)))\n",
    "\n",
    "# artwork\n",
    "currentAxis.add_patch(Rectangle((originX+frameThickness+matBorderL+floatL, originY+frameThickness+matBorderB+floatB),\n",
    "                                artW, artH,\n",
    "                                edgecolor='none', facecolor=(0,0,1,0.5)))\n",
    "\n",
    "# A selection from proportion from Jan Tschichold, Robert Bringhurst, etc.\n",
    "desiredARs = [\n",
    "    1.0,\n",
    "    4.0/3.0, # 1.333\n",
    "    np.sqrt(2.0), # 1.414\n",
    "    3.0/2.0, # 1.500\n",
    "    1.538, # (height of pentagon with unit side)\n",
    "    (1.0+np.sqrt(5.0))/2.0, #1.618 (phi)\n",
    "    np.sqrt(3.0), # 1.732\n",
    "    2.0,\n",
    "    np.sqrt(5.0), # 2.236 \n",
    "]\n",
    "\n",
    "for ar in desiredARs:\n",
    "    if frameOutW > frameOutH:\n",
    "        diagonalSlope = 1.0/ar\n",
    "    else:\n",
    "        diagonalSlope = ar\n",
    "    x = np.linspace(*currentAxis.get_xlim(), 2)\n",
    "    y = diagonalSlope*x\n",
    "    plt.plot(x,y,'k:',lw=1.0)\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Results"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-07-27T20:00:45.413321Z",
     "start_time": "2019-07-27T20:00:45.383958Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Frame length:     52.000\"   (4' 4 0/0\")\n",
      "\n",
      "Glazing size:     11.50\" x 11.50\"\n",
      "\n",
      "Aspect ratios\n",
      "  Frame outside:  13.00\" x 13.00\"    1.000 | 1.000\n",
      "  Frame inside:   11.00\" x 11.00\"    1.000 | 1.000\n",
      "  Mat window:      7.00\" x  7.00\"    1.000 | 1.000\n",
      "  Artwork:         7.00\" x  7.00\"    1.000 | 1.000\n"
     ]
    }
   ],
   "source": [
    "\n",
    "linLength = 2*frameOutW+2*frameOutH\n",
    "linLengthFt = int(np.trunc(linLength/12))\n",
    "linLengthIn = linLength - 12*linLengthFt\n",
    "linLengthFt, linLengthIn = convertToFeetAndInches(linLength)\n",
    "\n",
    "print(\"Frame length:     {:.3f}\\\"   ({:d}\\' {:d} {:d}/{:d}\\\")\".format(linLength, linLengthFt, *convertToFrac(linLengthIn)))\n",
    "\n",
    "print(\"\")\n",
    "print(\"Glazing size:     {:>5.2f}\\\" x {:>5.2f}\\\"\".format(frameInW+2*frameRabet, frameInH+2*frameRabet))\n",
    "\n",
    "print(\"\")\n",
    "print(\"Aspect ratios\")\n",
    "print(\"  Frame outside:  {:>5.2f}\\\" x {:>5.2f}\\\"    {:.3f} | {:.3f}\".format(*formatRectSizes(frameOutW,frameOutH)))\n",
    "print(\"  Frame inside:   {:>5.2f}\\\" x {:>5.2f}\\\"    {:.3f} | {:.3f}\".format(*formatRectSizes(frameInW,frameInH)))\n",
    "print(\"  Mat window:     {:>5.2f}\\\" x {:>5.2f}\\\"    {:.3f} | {:.3f}\".format(*formatRectSizes(windowW,windowH)))\n",
    "print(\"  Artwork:        {:>5.2f}\\\" x {:>5.2f}\\\"    {:.3f} | {:.3f}\".format(*formatRectSizes(artW,artH)))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": true
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
