<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>BMW 5 Series F07 Wheels | OEM BMW Wheels - BmwStyleRims.com</title>
	<atom:link href="https://www.bmwstylerims.com/category/all-bmw-wheel-styles/bmw-5-series/bmw-5-series-f07/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.bmwstylerims.com/category/all-bmw-wheel-styles/bmw-5-series/bmw-5-series-f07/</link>
	<description>All BMW Wheels style including technical data, color codes &#38; pictures</description>
	<lastBuildDate>Wed, 10 Nov 2021 00:14:43 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>BMW wheel style 463</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-463/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:55:24 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[F07]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-463/</guid>

					<description><![CDATA[<p>The BMW wheel style 463 is part of the BMW original wheels lineup. Find out more about the style 463 BMW rims, which is standard  for the bmw 5' F07 but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-463/" aria-label="BMW wheel style 463">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-463/">BMW wheel style 463</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The bmw Style wheel 463 is available in diameters of 21 inches and are staggerd wheels. This wheel is the original wheel style for the bmw series 5&#8242; F07 GT, however it might fit other models given the specifications match below with the replacement wheel sizes.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-463.jpg" alt="BMW wheel style 463" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 463 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116854556</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>81/2X21 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116854556 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116854557</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>10X21 ET:41</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116854557 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>Rubber valve</td>
<td>L=42,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121116326 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Screw-in valve, RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792829 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 463 fits: F07         </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 463 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 463, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 463?</h3>
<p>The tire pressure for the BMW wheel style 463 will depend on your BMW model. Most BMW models like the BMW 5 Series and the , have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-463/">BMW wheel style 463</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>BMW wheel style 452</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-452/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:55:06 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[F07]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-452/</guid>

					<description><![CDATA[<p>The BMW wheel style 452 is part of the BMW original wheels lineup. Find out more about the style 452 BMW rims, which is standard  for the bmw 5' F07 but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-452/" aria-label="BMW wheel style 452">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-452/">BMW wheel style 452</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The bmw Style wheel 452 is available in diameters of 19 inches and are staggerd wheels. This wheel is the original wheel style for the bmw series 5&#8242; F07 GT, however it might fit other models given the specifications match below with the replacement wheel sizes.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-452.jpg" alt="BMW wheel style 452" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 452 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116857672</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>8,5JX19 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116857672 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116859877</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>9,5JX19 ET:39</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116859877 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>Rubber valve</td>
<td>L=42,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121116326 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792830</td>
<td>Screw-in valve, RDC</td>
<td>GRÜN</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792830 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116857665</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>8JX18 ET:30</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116857665 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Screw-in valve, RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792829 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 452 fits: F07         </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 452 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 452, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 452?</h3>
<p>The tire pressure for the BMW wheel style 452 will depend on your BMW model. Most BMW models like the BMW 5 Series and the , have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-452/">BMW wheel style 452</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>BMW wheel style 457</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-457/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:55:06 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[F07]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-457/</guid>

					<description><![CDATA[<p>The BMW wheel style 457 is part of the BMW original wheels lineup. Find out more about the style 457 BMW rims, which is standard  for the bmw 5' F07 but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-457/" aria-label="BMW wheel style 457">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-457/">BMW wheel style 457</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The bmw Style wheel 457 is available in diameters of 20 inches and are staggerd wheels. This wheel is the original wheel style for the bmw series 5&#8242; F07 GT, however it might fit other models given the specifications match below with the replacement wheel sizes.</p>
<p><img decoding="async" class="centerimg" src="" alt="BMW wheel style 457" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 457 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116857673</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>8,5JX20 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116857673 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116857674</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>10JX20 ET:41</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116857674 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>Rubber valve</td>
<td>L=42,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121116326 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792830</td>
<td>Screw-in valve, RDC</td>
<td>GRÜN</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792830 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 457 fits: F07         </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 457 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 457, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 457?</h3>
<p>The tire pressure for the BMW wheel style 457 will depend on your BMW model. Most BMW models like the BMW 5 Series and the , have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-457/">BMW wheel style 457</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>BMW wheel style 458</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-458/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:55:06 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[F07]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-458/</guid>

					<description><![CDATA[<p>The BMW wheel style 458 is part of the BMW original wheels lineup. Find out more about the style 458 BMW rims, which is standard  for the bmw 5' F07 but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-458/" aria-label="BMW wheel style 458">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-458/">BMW wheel style 458</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The bmw Style wheel 458 is available in diameters of 19 inches and are staggerd wheels. This wheel is the original wheel style for the bmw series 5&#8242; F07 GT, however it might fit other models given the specifications match below with the replacement wheel sizes.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-458.jpg" alt="BMW wheel style 458" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 458 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116857675</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>8,5JX19 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116857675 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116859878</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>9,5JX19 ET:39</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116859878 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>Rubber valve</td>
<td>L=42,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121116326 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792830</td>
<td>Screw-in valve, RDC</td>
<td>GRÜN</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792830 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 458 fits: F07         </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 458 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 458, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 458?</h3>
<p>The tire pressure for the BMW wheel style 458 will depend on your BMW model. Most BMW models like the BMW 5 Series and the , have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-458/">BMW wheel style 458</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>BMW wheel style 459</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-459/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:55:06 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[F07]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-459/</guid>

					<description><![CDATA[<p>The BMW wheel style 459 is part of the BMW original wheels lineup. Find out more about the style 459 BMW rims, which is standard  for the bmw 5' F07 but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-459/" aria-label="BMW wheel style 459">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-459/">BMW wheel style 459</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The bmw Style wheel 459 is available in diameters of 20 inches and are staggerd wheels. This wheel is the original wheel style for the bmw series 5&#8242; F07 GT, however it might fit other models given the specifications match below with the replacement wheel sizes.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-459.jpg" alt="BMW wheel style 459" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 459 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116857676</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>8,5JX20 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116857676 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116857677</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>10JX20 ET:41</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116857677 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121178869</td>
<td>Rubber valve</td>
<td>L=48,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121178869 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792830</td>
<td>Screw-in valve, RDC</td>
<td>GRÜN</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792830 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 459 fits: F07         </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 459 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 459, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 459?</h3>
<p>The tire pressure for the BMW wheel style 459 will depend on your BMW model. Most BMW models like the BMW 5 Series and the , have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-459/">BMW wheel style 459</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>BMW wheel style 426</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-426/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:54:27 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[BMW 7 Series]]></category>
		<category><![CDATA[BMW 7 Series F01+]]></category>
		<category><![CDATA[F01]]></category>
		<category><![CDATA[F07]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-426/</guid>

					<description><![CDATA[<p>The BMW wheel style 426 is part of the BMW original wheels lineup. Find out more about the style 426 BMW rims, which is standard for the bmw F01 and F07, but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-426/" aria-label="BMW wheel style 426">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-426/">BMW wheel style 426</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The BMW wheel style 426 is part of bmw&#8217;s lineup of original wheel styles.<br />
 The bmw Style 426 wheel is available in diameters of 19&#8243; inches, with a bolt pattern of 5&#215;120.<br />
 This is the original wheel style for the bmw series F01 and F07, however it might fit other models given the specifications match below with the replacement wheel.The style given to this wheel is best described as V Spoke.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-426.jpg" alt="BMW wheel style 426" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 426 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116851077</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>9,5JX19 ET:39</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116851077 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116851076</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>8,5JX19 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116851076 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121178869</td>
<td>Rubber valve</td>
<td>L=48,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121178869 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792830</td>
<td>Screw-in valve, RDC</td>
<td>GRÜN</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792830 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 426 fits: F01+ F07        </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 426 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 426, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 426?</h3>
<p>The tire pressure for the BMW wheel style 426 will depend on your BMW model. Most BMW models like the BMW 7 Series and the BMW 5 Series, have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-426/">BMW wheel style 426</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>BMW wheel style 425</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-425/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:54:27 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[BMW 7 Series]]></category>
		<category><![CDATA[BMW 7 Series F01+]]></category>
		<category><![CDATA[F01]]></category>
		<category><![CDATA[F07]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-425/</guid>

					<description><![CDATA[<p>The BMW wheel style 425 is part of the BMW original wheels lineup. Find out more about the style 425 BMW rims, which is standard for the bmw F01 and F07, but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-425/" aria-label="BMW wheel style 425">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-425/">BMW wheel style 425</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The BMW wheel style 425 is part of bmw&#8217;s lineup of original wheel styles.<br />
 The bmw Style 425 wheel is available in diameters of 18&#8243; inches, with a bolt pattern of 5&#215;120.<br />
 This is the original wheel style for the bmw series F01 and F07, however it might fit other models given the specifications match below with the replacement wheel.The style given to this wheel is best described as V Spoke.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-425.jpg" alt="BMW wheel style 425" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 425 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116851075</td>
<td>Disc wheel, light alloy, bright-turned</td>
<td>8JX18 ET:30</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116851075 Disc wheel, light alloy, bright-turned" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121178869</td>
<td>Rubber valve</td>
<td>L=48,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121178869 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792830</td>
<td>Screw-in valve, RDC</td>
<td>GRÜN</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792830 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 425 fits: F01+ F07        </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 425 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 425, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 425?</h3>
<p>The tire pressure for the BMW wheel style 425 will depend on your BMW model. Most BMW models like the BMW 7 Series and the BMW 5 Series, have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-425/">BMW wheel style 425</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>BMW wheel style 315</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-315/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:51:19 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[F07]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-315/</guid>

					<description><![CDATA[<p>The BMW wheel style 315 is part of the BMW original wheels lineup. Find out more about the style 315 BMW rims, which is standard for the bmw F01 and F07, but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-315/" aria-label="BMW wheel style 315">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-315/">BMW wheel style 315</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The BMW wheel style 315 is part of bmw&#8217;s lineup of original wheel styles.<br />
 The bmw Style 315 wheel is available in diameters of 19&#8243; inches, with a bolt pattern of 5&#215;120.<br />
 This is the original wheel style for the bmw series F01 and F07, however it might fit other models given the specifications match below with the replacement wheel.The style given to this wheel is best described as Y Spoke.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-315.jpg" alt="BMW wheel style 315" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 315 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116788704</td>
<td>Light alloy rim</td>
<td>9,5JX19 ET:39</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116788704 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116788703</td>
<td>Light alloy rim</td>
<td>8,5JX19 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116788703 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>Rubber valve</td>
<td>L=42,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121116326 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Screw-in valve, RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792829 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 315 fits: F07         </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 315 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 315, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 315?</h3>
<p>The tire pressure for the BMW wheel style 315 will depend on your BMW model. Most BMW models like the BMW 5 Series and the , have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-315/">BMW wheel style 315</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>BMW wheel style 316</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-316/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:51:19 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[F07]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-316/</guid>

					<description><![CDATA[<p>The BMW wheel style 316 is part of the BMW original wheels lineup. Find out more about the style 316 BMW rims, which is standard for the bmw F01 and F07, but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-316/" aria-label="BMW wheel style 316">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-316/">BMW wheel style 316</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The BMW wheel style 316 is part of bmw&#8217;s lineup of original wheel styles.<br />
 The bmw Style 316 wheel is available in diameters of 20&#8243; inches, with a bolt pattern of 5&#215;120.<br />
 This is the original wheel style for the bmw series F01 and F07, however it might fit other models given the specifications match below with the replacement wheel.The style given to this wheel is best described as Double Spoke.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-316.jpg" alt="BMW wheel style 316" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 316 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116788705</td>
<td>Light alloy rim</td>
<td>81/2JX20 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116788705 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116788706</td>
<td>Light alloy rim</td>
<td>10JX20 ET:41</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116788706 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>Rubber valve</td>
<td>L=42,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121116326 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Screw-in valve, RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792829 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 316 fits: F07         </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 316 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 316, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 316?</h3>
<p>The tire pressure for the BMW wheel style 316 will depend on your BMW model. Most BMW models like the BMW 5 Series and the , have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-316/">BMW wheel style 316</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>BMW wheel style 311</title>
		<link>https://www.bmwstylerims.com/bmw-wheel-style-311/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 06 Nov 2021 14:51:19 +0000</pubDate>
				<category><![CDATA[All BMW Wheel Styles]]></category>
		<category><![CDATA[BMW 1 Series]]></category>
		<category><![CDATA[BMW 1 Series E87+]]></category>
		<category><![CDATA[BMW 5 Series]]></category>
		<category><![CDATA[BMW 5 Series F07]]></category>
		<category><![CDATA[BMW 5 Series F10+]]></category>
		<category><![CDATA[BMW 7 Series]]></category>
		<category><![CDATA[BMW 7 Series F01+]]></category>
		<category><![CDATA[E84]]></category>
		<category><![CDATA[E87]]></category>
		<category><![CDATA[F01]]></category>
		<category><![CDATA[F07]]></category>
		<category><![CDATA[F10]]></category>
		<category><![CDATA[F12]]></category>
		<category><![CDATA[F25]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/bmw-wheel-style-311/</guid>

					<description><![CDATA[<p>The BMW wheel style 311 is part of the BMW original wheels lineup. Find out more about the style 311 BMW rims, which is standard for the bmw E87, E84, E90, F25, F26, F06, F10, F12, F01 and F07, but might fit other models.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/bmw-wheel-style-311/" aria-label="BMW wheel style 311">Read More</a></p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-311/">BMW wheel style 311</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The BMW wheel style 311 is part of bmw&#8217;s lineup of original wheel styles.<br />
 The bmw Style 311 wheel is available in diameters of 18&#8243;, 19&#8243;, 20&#8243; and 21&#8243; inches, with a bolt pattern of 5&#215;120.<br />
 This is the original wheel style for the bmw series E87, E84, E90, F25, F26, F06, F10, F12, F01 and F07, however it might fit other models given the specifications match below with the replacement wheel.The style given to this wheel is best described as Star Spoke.<br />
                            Notes: *Available in chrome</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-311.jpg" alt="BMW wheel style 311" data-skip-lazy="" /></p>
<h3><strong>BMW wheel style 311 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Part Number</td>
<td>Part Name</td>
<td>Part Details</td>
<td>Search for Part</td>
</tr>
<tr>
<td>36116787637</td>
<td>Light alloy rim</td>
<td>7 1/2JX18 ET:49</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787637 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787638</td>
<td>Light alloy rim, chromium-plated</td>
<td>7 1/2JX18 ET:49</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787638 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787639</td>
<td>Light alloy rim</td>
<td>8 1/2JX18 ET:52</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787639 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787640</td>
<td>Light alloy rim, chromium-plated</td>
<td>8 1/2JX18 ET:52</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787640 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Wheel bolt black</td>
<td>M12X1,5</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781150 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Hub cap with chrome edge</td>
<td>BMW</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136783536 Hub cap with chrome edge" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121178869</td>
<td>Rubber valve</td>
<td>L=48,5MM</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121178869 Rubber valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valve</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36141095389 Valve" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Valve caps</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36121120779 Valve caps" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787641</td>
<td>Light alloy rim</td>
<td>8JX19 ET:37</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787641 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787642</td>
<td>Light alloy rim, chromium-plated</td>
<td>8JX19 ET:37</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787642 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787643</td>
<td>Light alloy rim</td>
<td>9JX19 ET:39</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787643 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787644</td>
<td>Light alloy rim, chromium-plated</td>
<td>9JX19 ET:39</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787644 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792830</td>
<td>Screw-in valve, RDC</td>
<td>GRÜN</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792830 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111095436 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787604</td>
<td>Light alloy rim</td>
<td>8 1/2JX21 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787604 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787605</td>
<td>Light alloy rim</td>
<td>10JX21 ET:41</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787605 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787606</td>
<td>Light alloy rim, chromium-plated</td>
<td>8 1/2JX21 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787606 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116787607</td>
<td>Light alloy rim, chromium-plated</td>
<td>10JX21 ET:41</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116787607 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792592</td>
<td>Disc wheel, light alloy, Midnight Chrome</td>
<td>8 1/2JX21 ET:25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792592 Disc wheel, light alloy, Midnight Chrome" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792593</td>
<td>Disc wheel, light alloy, Midnight Chrome</td>
<td>10JX21 ET:41</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792593 Disc wheel, light alloy, Midnight Chrome" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136781151</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136781151 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36136890324</td>
<td>Wheel bolt black</td>
<td>M14X1,25</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36136890324 Wheel bolt black" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116796113</td>
<td>Light alloy rim</td>
<td>8 1/2JX20 ET:33</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116796113 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116796114</td>
<td>Light alloy rim</td>
<td>9JX20 ET:44</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116796114 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116796115</td>
<td>Light alloy rim, chromium-plated</td>
<td>8 1/2JX20 ET:33</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116796115 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116796116</td>
<td>Light alloy rim, chromium-plated</td>
<td>9JX20 ET:44</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116796116 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146792828</td>
<td>Screw-in valve, RDC</td>
<td>SCHWARZ</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146792828 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792681</td>
<td>Light alloy rim</td>
<td>8JX19 ET:30</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792681 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792682</td>
<td>Light alloy rim</td>
<td>9JX19 ET:41</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792682 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792683</td>
<td>Light alloy rim, chromium-plated</td>
<td>8JX19 ET:30</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792683 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792684</td>
<td>Light alloy rim, chromium-plated</td>
<td>9JX19 ET:41</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792684 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792000</td>
<td>Light alloy rim</td>
<td>8,5JX20 ET:38</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792000 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792001</td>
<td>Light alloy rim</td>
<td>10JX20 ET:51</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792001 Light alloy rim" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792679</td>
<td>Light alloy rim, chromium-plated</td>
<td>8,5JX20 ET:38</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792679 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36116792680</td>
<td>Light alloy rim, chromium-plated</td>
<td>10JX20 ET:51</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36116792680 Light alloy rim, chromium-plated" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36111096449</td>
<td>Screw-in valve, RDC</td>
<td>GRÜN</td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36111096449 Screw-in valve, RDC" rel="noopener">search for part</a></td>
</tr>
<tr>
<td>36146774590</td>
<td>Valve caps RDC</td>
<td></td>
<td><a target="_blank" href="https://www.amazon.com/gp/search?ie=UTF8&#038;tag=bmwstylerims-20&#038;linkCode=ur2&#038;linkId=9ee75855a54662e6e81080b19ad79844&#038;camp=1789&#038;creative=9325&#038;index=automotive&#038;keywords=36146774590 Valve caps RDC" rel="noopener">search for part</a></td>
</tr>
</table>
<h5>BMW models for which the BMW wheel style 311 fits: E87+ F10+ F07 F12 F01+ E84 F25   </h5>
<h5> </h5>
<h5></h5>
<h3>Will the BMW wheel style 311 fit on your BMW?</h3>
<p>Bear in mind that it could be dangerous to run your BMW on tires or wheels they aren&#8217;t designed to fit. If you are unsure about your current wheel specifications, please check our <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">BMW wheel fitment chart and guide</a></p>
<p>&nbsp;</p>
<p>Insert your existing BMW wheel and tire dimensions, and the sizes of the BMW wheel style 311, and the outcome will be shown on the diagram. The strut shown in the diagram below is for illustration purpose only.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">YOUR EXISTING SETUP</h5>
                        </div>
                        <form class="form_one">
                           <div class="input_row">
                              <div class="input_column_img">
                                 <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                              </div>
                              <div class="input_column">
                                 <label class="form_label" for="tireWidth">Width (mm)</label>
                                 <input id="tireWidth" oninput="tireFunction()" value="205" type="number" min="0" max="399">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireProfile">Profile</label>
                                <input id="tireProfile" oninput="tireFunction()" value="55" type="number" min="0" max="99">
                              </div>
                              <div class="input_column">
                                <label class="form_label" for="tireDiameter">Diameter (in)</label>
                                <input id="tireDiameter" oninput="tireFunction()" value="16" type="number" min="0" max="99">
                              </div>
                            </div>
                           <div class="input_row">
                            <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="offset">Offset (mm)</label>
                                <input id="offset" oninput="tireFunction()" value="40" type="number" min="-99" max="99">
                            </div>
                            <div class="input_column">
                                <label class="form_label" for="width">Width (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Above values are only examples! If unsure of your current wheel size? <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Check here!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">YOUR NEW SETUP</h5>
                           </div>
                         <form class="form_two">
                           <div class="input_row">
                             <div class="input_column_img">
                                <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smalltyre.jpg" alt="Existing Tyre">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireWidth">Width (mm)</label>
                                <input id="twoTireWidth" oninput="twoTireFunction()" value="235" type="number" min="0" max="399">
                                </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireProfile">Profile</label>
                                <input id="twoTireProfile" oninput="twoTireFunction()" value="40" type="number" min="0" max="99">
                             </div>
                             <div class="input_column">
                                <label class="form_label" for="twoTireDiameter">Diameter (in)</label>
                                 <input id="twoTireDiameter" oninput="twoTireFunction()" value="17" type="number" min="0" max="99">
                             </div>
                             </div>
                             <div class="input_row">
                                <div class="input_column_img">
                                    <img decoding="async" src="https://www.bmwstylerims.com/wp-content/uploads/2020/11/smallwheel.jpg" alt="Existing Wheel">
                                 </div>
                                 <div class="input_column">
                                     <label class="form_label" for="twoOffset">Offset (mm)</label>
                                     <input id="twoOffset" class="mm" value="20" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                 </div>
                                     <div class="input_column">
                                         <label class="form_label" for="twoWidth">Width (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Above values are only examples! Change values to view fittment.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">YOUR RESULTS</h5>
                      <p> are automatically applied below </p>
                  </div>  
               <div class="canvasHolder">
                 <canvas class="canvas" id="canvasA"></canvas>
                 <canvas class="canvas" id="canvasB"></canvas>
               </div> 
                <br>


                <div class="hide">
                    <div class="form-check">
                         <label class="lock locka" for="checkTires">
                           <input onclick="checkTires()" type="checkbox" value="" id="checkTires" checked>
                           <span>Show Tires</span>
                         </label>
                    </div>
                    <div class="form-check">
                        <label class="lock" for="checkMeasurements">
                          <input onclick="checkMeasurements()" type="checkbox" value="" id="checkMeasurements" checked>
                          <span>Show Measurements</span>
                        </label>
                    </div>
                    <div class="form-check advance_options">
                          <label class="lock lockd" for="checkClearance">
                          <input onclick="checkClearance()" type="checkbox" value="" id="checkClearance">
                          <span>Show Clearance</span>
                       </label>
                    </div>
                    <div class="form-check advance_options">
                       <label class="lock lockd" for="checkFenderSuspension">
                         <input onclick="checkFenderSuspension()" type="checkbox" value="" id="checkFenderSuspension">
                         <span>Show Fender and Suspension</span>
                       </label>
                    </div>
                
                    <input type="button" id="buttonToggle" class="example_c" value="Show More Options" onclick="toggleMode()">
                    <div class="form_three_container">
                        <form class="form_three">
                           <div class="block_one">          
                              <div class="advance_options form_one">
                                <label for="wheelwellWidth">Wheelwell Clearance (mm) </label>
                                <input id="wheelwellWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="fenderWidth">Fender Clearance (mm) </label>
                                  <input id="fenderWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                              <div class="advance_options form_one">
                                  <label for="suspensionWidth">Suspension Width (mm)</label>
                                  <input id="suspensionWidth" oninput="tireFunction()" value="0" type="number" min="-100" max="399">
                              </div>
                           </div>
                           <div class="block_two">
                              <div class="advance_options form_two">
                               </div>
                              <div class="advance_options form_two">
                                <label for="twoWheelwellWidth">New Wheelwell Clearance (mm) </label>
                                <input id="twoWheelwellWidth" oninput="twoTireFunction()" value="0" type="number" min="-100" max="100">
                              </div>
                           <div class="advance_options form_two">
                                <label for="twoFenderWidth">New Fender Clearance (mm)</label>
                                <input id="twoFenderWidth" oninput="twoTireFunction()" value="0" type="number" min="-99" max="99">
                           </div>
                           <div class="advance_options form_two">
                                <label for="twoSuspensionWidth">New Suspension Width (mm)</label>
                                <input id="twoSuspensionWidth" oninput="twoTireFunction()" value="0" type="number" min="0" max="99">
                           </div>
                          </div>
                        </form>
                    </div>
                 </div>
                   <div class="wheel_text">
                         <p>The diagram is only for show to help you visualize your tires and wheel fitment of your new setup.</p>
                         <br>
                         <p>Tire Width    - The width of your tire in millimeters. <strong>195</strong>/55ZR15</p>
                         <p>Tire Profile  - The ratio of tire wall width to tire width. 195/<strong>55</strong>ZR15</p>
                         <p>Tire Diameter - The diameter of your wheels in inches. 195/55ZR<strong>15</strong> </p>
                         <p>Offset - the distance from the center of the wheel to the mounting face in mm. ET<strong>20</strong> </p>
                         <p>Rim Width - The width of your rims in inches. <strong>7.5</strong>JX17 </p>
                   </div>
      
      
        <div class="table-results">
            <table class="table table-sm">
                <colgroup>
                    <col>
                    <col>
                    <col span="1" class="bg-light">
                    <col>
                </colgroup>
                <thead>
                    <tr>
                        <th id="measure" scope="col">Inches</th>
                        <th scope="col" class="tb_orgwheel">Original Wheel</th>
                        <th scope="col" class="tb_newwheel">New Wheel</th>
                        <th scope="col">Difference</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diameter</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circumference</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Sidewall</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Width</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Wheel Revolutions</th>
                        <td id="revOne"></td>
                        <td id="revTwo"></td>
                        <td id="revPercentage"></td>
                    </tr>
                </tbody>
             </table>
                <input type="button" id="buttonConvert" value="Convert" onclick="convertTable()">
        </div>
    </div>
</div>
    

<style>
  .hide {
    display: none;
  }
  .results{
    color:white!important;
    text-align: center;
    background-color: #005a87;
    padding:5px;
  }

 .results_header{
    display:block;
    text-align: center;
    background-color: #007bff;
    margin-top:30px;    
    margin-bottom: 10px;
    margin-right:10px;
    margin-right:10px;
    max-width: 100%;
    padding:10px;
    width:100%;
    Color: #fff;
  }
.results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}


.lock {
	position:relative;
  cursor:pointer;
	height:32px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lock input {
	display:none; 
}
.lock span:before,
.lock span:after{
	content:"";
}

.lock span:before {
	width:64px;
	height:32px;
	margin-right:8px;
	background:#EEE;
	border-radius:32px;
	display:inline-block;
	vertical-align:middle;
	transition:all .5s cubic-bezier(.175, .885, .32, 1);
}
.lock span:after {
	margin:2px;
	width:28px;
	height:28px;
	background:#FFF;
	border-radius:28px;
	position:absolute;
	left:0;
	z-index:2;
	transition:all .5s cubic-bezier(.175, .885, .32, 1); 
}
.lock input:checked + span:after {
	left:32px;
}
.lockd input:disabled + span:after{
	background: #acacac;
}
.lock input:checked + span:before {
	background-color:#006298;
}
.locka input:checked + span:before {
	background-color:#1CC691;
}
    .example_c {
        color: #fff !important;
        text-transform: uppercase;
        text-decoration: none;
        background: #006298;
        padding: 5px;
        border-radius: 5px;
        display: inline-block;
        border: none;
        transition: all 0.4s ease 0s;
    }
    .example_c:hover {
        background: black;
        letter-spacing: 1px;
        -webkit-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        -moz-box-shadow: 0px 5px 40px -10px rgba(0,0,0,0.57);
        box-shadow: 5px 40px -10px rgba(0,0,0,0.57);
        transition: all 0.4s ease 0s;
    }
    p { margin: 5px }
    .canvasHolder {
        position: relative;
    }

  /* form style*/ 
.psmall{
  font-size:small;
  padding-top:5px;
}

.hclass{
  color:#fff;
  font-weight:400;
}

  .setup_old{
    margin-right:10px;
    background-color: #FF6600;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
.setup_new{
    margin-right:0px;
    background-color: #007bff;
    color:#fff;
    padding:5px 10px 5px 10px;
    color 
  }
    .form_holder_cal{
        background-color:#fff;
        padding-top:0px;   
        margin: 0 auto;
        max-width: 100%;
        
    } 
 
    .form_two{
        
        display: flex-grid;
    }
    .block_two{
        display: table-cell;
        vertical-align: middle;
        width: 50%;
    }
    .block_one{
        display: table-cell;
        float:left;
    }
    .form_two_container{
        display: table-cell;
          
        margin:auto;
             }
    
    .form_one_container{
        display: table-cell;
        
        margin:auto;
                   }
@media screen and (max-width: 750px) {
  .form_two_container {
    display: block;
    margin-top:30px;
    margin-bottom:20px;
    float:left;
   
  }
  .form_one_container {
    display: block;
    padding-top: 30px;
     }
  .results_header{
    display:inline-block;
    margin-right:10px;
    width:100%;
    text-align:center;
  }
  .results_header:after {
    content:"";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: 30px solid #007bff;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
}
}

@media screen and (max-width: 400px) {
  .form_two_container {
    width: 100%;
   
  }
  .form_one_container {
    width: 100%;
    
  }
}

.block_one{
    float:center;
    }

.input_row {
  display: table-row;
}

.input_column_img {
  display: table-column;
  padding-right: 5px; 
  float: left;
  width:100%;
  min-width: 50px;
}

.input_column 
  {
display: table-cell;
}

    .form_one{
        margin-right: 0px; 
    }

     .form_label {
        display:block;
        padding: 5px;
       margin-left: 10px;
       float: left;
       width:80%;
       Font-size:12px;
    }
    .form_one input[type="button"] { 
      min-width: 100px;}
    
  
    .form_two input[type="button"] { 
        min-width: 100px;
    }
    .form_one input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
      height: 28px;
  	   width: 80px;}
  
      .form_two input{
        max-width: 100px;
        border: 1px solid #ccc;
        text-align: center;
        font-size: 14px;
        height: 28px;
        width: 80px;}
    }
    .form-check-input {
        width: 20px;
     
    }
    .canvasHolder{
        float:left;
        position: relative;
        height: 500px; width: 400px; /*based on your canvas size*/
        
    }
  @media only screen and (max-width: 400px) {
  .canvasHolder{
              margin-left:-50px;
    }
}
    .canvas{
        position: absolute;
        top: 0; left: 0;
        }
    .tirecomparison-calculator {
        padding: 20px 5px;
        
        background: #fff;
 
        margin-left: 0px;
        margin-right: 0px;
        overflow: hidden;
    }
.table-results{
display: block;
width: 100%;
  /*
overflow-x: auto;
-webkit-overflow-scrolling: touch;*/
margin: 0 auto;
}

.tb_orgwheel {
  background-color:#FF6600;
  Color: #fff;
}
.tb_newwheel {
  background-color:#007bff;
  Color: #fff;
}

</style>
<script>
    let c = document.getElementById("canvasA");
    let d       = document.getElementById("canvasB");
    let ctx     = c.getContext("2d");
    let ctx2    = d.getContext("2d");
    let initialHeight   = 500;
    let initialWidth    = 400;
    c.width     = initialWidth;
    c.height    = initialHeight;
    d.width     = initialWidth;
    d.height    = initialHeight;

    let tireImg = new Image();
    tireImg.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/tire_PNG45.gif";
  
    let background = new Image();
    background.src = "https://www.bmwstylerims.com/wp-content/uploads/2021/04/jTkeSmK.gif";

    let tireOffsetX = 200;
    let tireOffsetY = 50;

    let inches  = true;
    let enabled = true;
    let measure = true;
    let tires   = false;
    let clearance = true;
    let fendersuspension = false;
     
    var heckMeasurements = document.getElementById("checkMeasurements");
    var heckTires = document.getElementById("checkTires");
    //if enabled disable the function to draw
    function checkClearance(){
        var remember = document.getElementById("checkClearance");
        if (remember.checked){
            clearance = true;
            tireFunction();
            twoTireFunction();
        }else{
            clearance = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkFenderSuspension(){
        var remember = document.getElementById("checkFenderSuspension");
        if (remember.checked){
            fendersuspension = true;
            tireFunction();
            twoTireFunction();
        }else{
            fendersuspension = false;
            tireFunction();
            twoTireFunction();
        }
    }
    function checkMeasurements(){
        if (heckMeasurements.checked){
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
            
        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkTires").checked = true;
            tires = true;
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();
        }
        else{
            measure = false;
            document.getElementById("checkClearance").disabled = true;
            document.getElementById("checkFenderSuspension").disabled = true;
            tireFunction();
            twoTireFunction();

        }
    }

    function checkTires(){
        if (heckTires.checked){
            tires = true;
            tireFunction();
            twoTireFunction();

        }
        else if (!heckTires.checked && !heckMeasurements.checked){
            document.getElementById("checkMeasurements").checked = true;
            tires = false;
            measure = true;
            document.getElementById("checkClearance").disabled = false;
            document.getElementById("checkFenderSuspension").disabled = false;
            tireFunction();
            twoTireFunction();
        }
        else{
            tires = false;
            tireFunction();
            twoTireFunction();

        }
    }
function toggleMode(){
        var divsToHide = document.getElementsByClassName("advance_options"); //divsToHide is an array
        if (enabled === true){
            enabled = false;
            //hide elements
            for(var i = 0; i < divsToHide.length; i++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[i].style.display = "none"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Show More";
        }
        else if (enabled === false) {
            enabled = true;

            for(var x = 0; x < divsToHide.length; x++){
                //divsToHide[i].style.visibility = "hidden"; // or
                divsToHide[x].style.display = "block"; // depending on what you"re doing
            }
            document.getElementById("buttonToggle").value = "Hide";

        }
        tireFunction();
        twoTireFunction();
    }
 
    function processTableValues(colNum, tireHeight, tireSidewall, tiredWidth){
        document.getElementById("diameter" + colNum).textContent        = tireHeight.toFixed(2);
        document.getElementById("circumference" + colNum).textContent   = (3.14159 * tireHeight).toFixed(2);
        document.getElementById("sidewall" + colNum).textContent        = tireSidewall.toFixed(2);
        document.getElementById("width" + colNum).textContent           = (tiredWidth / 25.4).toFixed(2);
        document.getElementById("rev" + colNum).textContent             = (63360 / (3.14159 * tireHeight)).toFixed(0);
    }
    function processTableDifference(){
        document.getElementById("diameterPercentage").textContent       = ((((parseFloat(document.getElementById("diameterTwo").textContent) - parseFloat(document.getElementById("diameterOne").textContent)) / parseFloat(document.getElementById("diameterOne").textContent) * 100)) || 0).toFixed(0) + "%";
        document.getElementById("circumferencePercentage").textContent  = (((parseFloat(document.getElementById("circumferenceTwo").textContent) - parseFloat(document.getElementById("circumferenceOne").textContent)) / parseFloat(document.getElementById("circumferenceOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("sidewallPercentage").textContent       = (((parseFloat(document.getElementById("sidewallTwo").textContent) - parseFloat(document.getElementById("sidewallOne").textContent)) / parseFloat(document.getElementById("sidewallOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("widthPercentage").textContent          = (((parseFloat(document.getElementById("widthTwo").textContent) - parseFloat(document.getElementById("widthOne").textContent)) / parseFloat(document.getElementById("widthOne").textContent) * 100) || 0).toFixed(0) + "%";
        document.getElementById("revPercentage").textContent            = (parseFloat(document.getElementById("revTwo").textContent) - parseFloat(document.getElementById("revOne").textContent) || 0).toFixed(0);
    }  
    function convertTable() {
        if (inches === true) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) * 25.4).toFixed(0);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) * 25.4).toFixed(0);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) / 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) * 25.4).toFixed(0);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) / 1.6).toFixed(0);

            document.getElementById("measure").textContent          = "Millimeters";
            inches = false;

        } else if (inches === false) {
            document.getElementById("diameterOne").textContent      = (parseFloat(document.getElementById("diameterOne").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceOne").textContent = (parseFloat(document.getElementById("circumferenceOne").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallOne").textContent      = (parseFloat(document.getElementById("sidewallOne").textContent) / 25.4).toFixed(2);
            document.getElementById("widthOne").textContent         = (parseFloat(document.getElementById("widthOne").textContent) / 25.4).toFixed(2);
            document.getElementById("revOne").textContent           = (parseFloat(document.getElementById("revOne").textContent) * 1.6).toFixed(0);

            document.getElementById("diameterTwo").textContent      = (parseFloat(document.getElementById("diameterTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("circumferenceTwo").textContent = (parseFloat(document.getElementById("circumferenceTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("sidewallTwo").textContent      = (parseFloat(document.getElementById("sidewallTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("widthTwo").textContent         = (parseFloat(document.getElementById("widthTwo").textContent) / 25.4).toFixed(2);
            document.getElementById("revTwo").textContent           = (parseFloat(document.getElementById("revTwo").textContent) * 1.6).toFixed(0);
            document.getElementById("measure").textContent          = "Inches";
            inches = true;
        }
    }
    let dimensionOffset = 0;
    let dimensionOffsetY = 51;
    function drawDimensions(canvasNum, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, strokeColor, offset){
        canvasNum.strokeStyle = strokeColor;

        //x line
        //big line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY); //top
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY); //bottom
        canvasNum.stroke();
        //x text
        canvasNum.font = "15px Helvetica";
        canvasNum.fillStyle = strokeColor;
        canvasNum.fillText(tireHeight.toFixed(1),  (tireWidth1) - fenderWidth + 15, ((midpoint1 - tireProfile) + (midpoint2 + tireProfile)) / 2 + offset);

        //top line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.stroke();

        //bottom line
        canvasNum.beginPath();
        canvasNum.moveTo((tireWidth1) - fenderWidth + 20, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffset, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();

        //y line
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.stroke();
        //y text
        canvasNum.textBaseline = "bottom";
        canvasNum.fillText((tiredWidth / 25.4).toFixed(2),  (tireWidth1 + tireWidth2) / 2 - 20 + offset  + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth1 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();

        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 30 + tireOffsetY);
        canvasNum.lineTo(tireWidth2 + dimensionOffset + 50, (midpoint1 - tireProfile) - 10 + tireOffsetY);
        canvasNum.stroke();
        
    }

    function drawFenderSuspension(canvasNum, newWidth, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, strokeColor){
        //draw fender line
        if (enabled === true && measure === true){
            if (tireWidth1 > newWidth){ 
            canvasNum.beginPath();
            canvasNum.setLineDash([2,3]);
            canvasNum.strokeStyle = strokeColor;
            canvasNum.moveTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((newWidth) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            else {
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);

            canvasNum.moveTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo((tireWidth1) - fenderWidth + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
            }
            //draw suspension line
            canvasNum.beginPath();
            canvasNum.strokeStyle = strokeColor;
            canvasNum.setLineDash([2,3]);
            canvasNum.moveTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
            canvasNum.lineTo(tireWidth2 + (suspensionWidth) + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
            canvasNum.stroke();
            canvasNum.setLineDash([]);
        }
    }

    function drawClearance(canvasNum, wheelwellWidth, midpoint1, midpoint2, tireProfile, strokeColor){
        if (enabled === true && measure === true){
        //draw fender line
        canvasNum.beginPath();
        canvasNum.strokeStyle = strokeColor;
        canvasNum.moveTo(dimensionOffset + dimensionOffsetY + 80,  (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.lineTo(250 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY - wheelwellWidth/2);
        canvasNum.stroke();
        }
    }
    function drawProfile(canvasNum, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint1 - tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint1 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.lineTo(offsetValue + widthValue + dimensionOffsetY, midpoint2 + tireOffsetY);
        canvasNum.stroke();
    }
    function drawWidth(canvasNum, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile){
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, (midpoint1 - tireProfile) + tireOffsetY);
        canvasNum.stroke();
        
        canvasNum.beginPath();
        canvasNum.moveTo(tireWidth1 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY); //midpoint of rectangle
        canvasNum.lineTo(tireWidth2 + dimensionOffsetY, midpoint2 + tireProfile + tireOffsetY);
        canvasNum.stroke();
    }

    function tireFunction() { //first set
        ctx.clearRect(0, 0, 500, 500);
        ctx.drawImage(background, 50, 50);
        let width           = document.getElementById("width").value * 12;
        let offset          = document.getElementById("offset").value / 2;
        let tireWidth       = parseInt(document.getElementById("tireWidth").value) / 4;
        let tireProfile     = parseInt(document.getElementById("tireProfile").value) * 1.1;
        let tireDiameter    = parseInt(document.getElementById("tireDiameter").value) * 12.5;
        let fenderWidth     = parseInt(document.getElementById("fenderWidth").value) || 0;
        let suspensionWidth = parseInt(document.getElementById("suspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("wheelwellWidth").value) || 0;

        let tiredWidth      = parseInt(document.getElementById("tireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("tireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("tireDiameter").value);
        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = ((((tiredWidth * (tiredProfile / 100)) * 2) + (tiredDiameter * 25.4)) / 25.4);

        processTableValues("One", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1 = (440 - tireDiameter) / 2;
        let midpoint2 = (440 + tireDiameter) / 2;

        tireProfile = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2 = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1 = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#FF6600", 0);

            //draw rect
            ctx.beginPath();
            ctx.strokeStyle    = "#FF6600";
            ctx.lineWidth      = 3;
            if (tires === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            if (enabled === true){
                ctx.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , (((440 - tireDiameter) / 2) - tireProfile) + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else{
            ctx.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            ctx.stroke();
            ctx.strokeStyle = "#000000";
            if (enabled === false){

            //draw lines on top and below the rectangle
            drawWidth(ctx, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

            //draw two lines connecting the tire widths to the base of the rectangle
            drawProfile(ctx, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
            ctx.strokeStyle = "#FF0000";

            //draw fender and suspension lines
            if (fendersuspension === true){
                drawFenderSuspension(ctx, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#FF0000");
            }

            if (clearance === true){
            drawClearance(ctx, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#FF0000");
            }
            }
        }

        else if (measure === false){
            ctx.beginPath();
            ctx.strokeStyle    = "#FF0000";
            ctx.lineWidth      = 3;
            ctx.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx.stroke();
        }
    }

    function twoTireFunction() {
        ctx2.clearRect(0, 0, 500, 500);

        let width           = (document.getElementById("twoWidth").value) * 12;
        let offset          = (document.getElementById("twoOffset").value) / 2;
        let tireWidth       = (parseInt(document.getElementById("twoTireWidth").value)) / 4;
        let tireProfile     = (parseInt(document.getElementById("twoTireProfile").value)) * 1.1;
        let tireDiameter    = (parseInt(document.getElementById("twoTireDiameter").value)) * 12.5;

        let tiredWidth      = parseInt(document.getElementById("twoTireWidth").value);
        let tiredProfile    = parseInt(document.getElementById("twoTireProfile").value);
        let tiredDiameter   = parseInt(document.getElementById("twoTireDiameter").value);
        let fenderWidth     = (parseInt(document.getElementById("twoFenderWidth").value)) || 0;
        let suspensionWidth = parseInt(document.getElementById("twoSuspensionWidth").value) || 0;
        let wheelwellWidth  = parseInt(document.getElementById("twoWheelwellWidth").value) || 0;

        let tireSidewall    = (tiredWidth * (tiredProfile / 100)) / 25.4;
        let tireHeight      = (((tiredWidth * (tiredProfile / 100))  * 2) + (tiredDiameter * 25.4)) / 25.4;

        processTableValues("Two", tireHeight, tireSidewall, tiredWidth);
        processTableDifference();

        let widthValue  = 15 + parseInt(width);
        let offsetValue = 140 + parseInt(offset) - parseInt(width) / 2;
        let midpoint1   = (440 - tireDiameter) / 2;
        let midpoint2   = (440 + tireDiameter) / 2;

        tireProfile     = ((tireHeight * 12.25) - (midpoint2 - midpoint1)) / 2;

        let tireWidth2  = offsetValue + tireWidth + (widthValue / 2);
        let tireWidth1  = offsetValue - tireWidth + (widthValue / 2);

        if (measure === true){
            drawDimensions(ctx2, tireWidth1, tireWidth2, fenderWidth, midpoint1, midpoint2, tireProfile, tireHeight, tiredWidth, "#007bff", 50);

            //draw rect 2
            ctx2.beginPath();
            ctx2.strokeStyle    = "#007bff";
            ctx2.lineWidth      = 2.5;
            if (enabled === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            }
            else {
                ctx2.rect(offsetValue + dimensionOffsetY, (440 - tireDiameter) / 2 + tireOffsetY, widthValue, tireDiameter); //x,y,width,height
            }
            if (tires === true){
                ctx2.rect(tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 0.35;
                ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
                ctx2.globalAlpha    = 1;
            }
            ctx2.stroke();
            ctx2.strokeStyle = "#000000";
            if (enabled === false){

                //draw lines on top and below the rectangle
                drawWidth(ctx2, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile);

                //draw two lines connecting the tire widths to the base of the rectangle
                drawProfile(ctx2, tireWidth1, tireWidth2, widthValue, midpoint1, midpoint2, tireProfile, offsetValue);
                ctx2.strokeStyle = "#0000FF";

                //draw fender and suspension lines
                if (fendersuspension === true){
                drawFenderSuspension(ctx2, offsetValue, tireWidth1, tireWidth2, midpoint1, midpoint2, tireProfile, fenderWidth, suspensionWidth, "#0000FF");
                }

                if (clearance === true){
                    drawClearance(ctx2, wheelwellWidth ,midpoint1, midpoint2, tireProfile, "#0000FF");
                }
            }
        }

        else if (measure === true){
            ctx2.beginPath();
            ctx2.strokeStyle    = "#0000FF";
            ctx2.lineWidth      = 2.5;
            ctx2.globalAlpha    = 0.35;

            ctx2.drawImage(tireImg,  tireOffsetX + parseInt(offset) - ((tireWidth2 - tireWidth1) /2) , ((440 - tireDiameter) / 2) - tireProfile + tireOffsetY, tireWidth2 - tireWidth1, tireDiameter + (tireProfile * 2)); //x,y,width,height
            ctx2.globalAlpha    = 1;

            ctx2.stroke();
        }

    }
    // Make sure the image is loaded first otherwise nothing will draw.

    background.onload = function () {
        var allowedDomains = ['bmwstylerims.com'];
        console.log(document.domain);
        if (allowedDomains.indexOf(document.domain) == -1) {
        // Code to redirect here
        //window.location.href = "https://bmwstylerims.com"; 
        }

        toggleMode();
    };
    //https://obfuscator.io/
    //https://javascriptobfuscator.com/Javascript-Obfuscator.aspx
</script>
</body>
<h3>What is the recommended tire pressure for the BMW wheel style 311?</h3>
<p>The tire pressure for the BMW wheel style 311 will depend on your BMW model. Most BMW models like the BMW 1 Series and the BMW 5 Series, have a recommended tire pressure of 32 PSI (2.2 Bar). However, you should always double-check this for your specific BMW model. You can find out the recommended tire pressure for your BMW, by checking the the sticker on the inside edge of the driver’s door or, check your owner’s manual if you still have the same type of tires that came with the vehicle.</p>
<p>The post <a href="https://www.bmwstylerims.com/bmw-wheel-style-311/">BMW wheel style 311</a> appeared first on <a href="https://www.bmwstylerims.com">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
