<?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 E89 Wheels | OEM BMW Wheels - BmwStyleRims.com</title>
	<atom:link href="https://www.bmwstylerims.com/it/tag/e89-it/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.bmwstylerims.com/it/tag/e89-it/</link>
	<description>All BMW Wheels style including technical data, color codes &#38; pictures</description>
	<lastBuildDate>Sat, 18 Mar 2023 21:41:40 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>Cerchi BMW Style 515</title>
		<link>https://www.bmwstylerims.com/it/cerchi-bmw-style-515/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 18 Mar 2023 18:50:43 +0000</pubDate>
				<category><![CDATA[BMW Z4 Serie E89]]></category>
		<category><![CDATA[Serie BMW Z4]]></category>
		<category><![CDATA[Tutti gli stili di cerchi BMW]]></category>
		<category><![CDATA[E89]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/cerchi-bmw-style-515/</guid>

					<description><![CDATA[<p>Il cerchi BMW stile 515 fa parte della gamma di cerchi originali BMW. Scopri di più sui cerchi BMW stile 515, che è standard per la BMW Z4 E89 ma potrebbe adattarsi ad altri modelli.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/it/cerchi-bmw-style-515/" aria-label="Cerchi BMW Style 515">Continua a leggere</a></p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-515/">Cerchi BMW Style 515</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Il cerchi BMW Style 515 è disponibile nei diametri di 18 pollici e sono ruote sfalsate. Questa ruota è Il stile della ruota originale per la serie BMW Z4 E89, tuttavia potrebbe adattarsi ad altri modelli dato che le specifiche corrispondono di seguito con le dimensioni della ruota sostitutiva.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-515.jpg" alt="Cerchi BMW Style 515" data-skip-lazy="" /></p>
<h3><strong>Cerchi BMW Style 515 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Codice articolo</td>
<td>Nome articolo</td>
<td>Particolari</td>
<td>Cerca parte</td>
</tr>
<tr>
<td>36111095436</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116855529</td>
<td>cerchio in lega leggera</td>
<td>8JX18 ET:29</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=36116855529 cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116855530</td>
<td>cerchio in lega leggera</td>
<td>8,5JX18 ET:40</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=36116855530 cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Bullone ruota nero</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 Bullone ruota nero" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Coprimozzo con bordo cromato</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 Coprimozzo con bordo cromato" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Valvola a vite, 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 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valvola</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 Valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Tappi valvola</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 Tappi valvola" rel="noopener">Cerca parte</a></td>
</tr>
</table>
<h5>Modelli BMW per i quali Cerchi BMW Style 515 si adatta: E89         </h5>
<h5> </h5>
<h5></h5>
<h3>Il Cerchi BMW Style 515 si adatterà alla tua BMW?</h3>
<p>Tieni presente che potrebbe essere pericoloso guidare la tua BMW con pneumatici o ruote che non sono progettati per adattarsi. Se non sei sicuro delle specifiche del tuo attuale cerchio, controlla il nostro <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">cerchio BMW tabella di montaggio e guida</a></p>
<p>&nbsp;</p>
<p>Inserisci le dimensioni delle ruote e dei pneumatici BMW esistenti e le dimensioni del Cerchi BMW Style 515 e il risultato verrà mostrato sul diagramma. Il puntone mostrato nello schema qui sotto è solo a scopo illustrativo.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">CONFIGURATION EXISTANTE</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Vous n'êtes pas sûr de votre taille de roue actuelle?  <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Vérifiez ici!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">NOUVELLE CONFIGURATION</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Modifiez les valeurs pour voir le réglage.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">RÉSULTATS</h5>
                      <p> sont automatiquement appliqués ci-dessous  </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> Le schéma est à afficher uniquement pour vous aider à visualiser le réglage de vos pneus et roues pour votre nouvelle configuration. </p>
                          <br>
                          <p> Largeur du pneu : la largeur de votre pneu en millimètres. <strong> 195 </strong> / 55ZR15 </p>
                          <p> Profil du pneu : le rapport entre la largeur de la paroi du pneu et la largeur du pneu. 195 / <strong> 55 </strong> ZR15 </p>
                          <p> Diamètre des pneus - Le diamètre des roues en pouces. 195 / 55ZR <strong> 15 </strong> </p>
                          <p> Decalage : la distance entre le centre de la roue et la face de montage en mm. ET <strong> 20 </strong> </p>
                          <p> Largeur de la jante : la largeur des jantes en pouces. <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">Pouce</th>
                        <th scope="col" class="tb_orgwheel">Roue d'origine</th>
                        <th scope="col" class="tb_newwheel">Nouvelle roue</th>
                        <th scope="col">Différence</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diamètre</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circonférence</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Paroi latérale</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Largeur</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Tours de roue</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>Qual è la pressione degli pneumatici consigliata per Cerchi BMW Style 515?</h3>
<p>La pressione dei pneumatici per Cerchi BMW Style 515 dipenderà dal tuo modello BMW. La maggior parte dei modelli BMW, come il Serie BMW Z4 e il , hanno una pressione dei pneumatici consigliata di 32 PSI (2,2 Bar). Tuttavia, dovresti sempre ricontrollare questo per il tuo modello BMW specifico. Puoi scoprire la pressione dei pneumatici consigliata per la tua BMW, controllando l&#8217;adesivo sul bordo interno della portiera del conducente o, controlla il manuale del proprietario se hai ancora lo stesso tipo di pneumatici forniti con il veicolo.</p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-515/">Cerchi BMW Style 515</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cerchi BMW Style 514</title>
		<link>https://www.bmwstylerims.com/it/cerchi-bmw-style-514/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 18 Mar 2023 18:50:43 +0000</pubDate>
				<category><![CDATA[BMW Z4 Serie E89]]></category>
		<category><![CDATA[Serie BMW Z4]]></category>
		<category><![CDATA[Tutti gli stili di cerchi BMW]]></category>
		<category><![CDATA[E89]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/cerchi-bmw-style-514/</guid>

					<description><![CDATA[<p>Il cerchi BMW stile 514 fa parte della gamma di cerchi originali BMW. Scopri di più sui cerchi BMW stile 514, che è standard per la BMW Z4 E89 ma potrebbe adattarsi ad altri modelli.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/it/cerchi-bmw-style-514/" aria-label="Cerchi BMW Style 514">Continua a leggere</a></p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-514/">Cerchi BMW Style 514</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Il cerchi BMW Style 514 è disponibile nei diametri di 17 pollici e sono ruote sfalsate. Questa ruota è Il stile della ruota originale per la serie BMW Z4 E89, tuttavia potrebbe adattarsi ad altri modelli dato che le specifiche corrispondono di seguito con le dimensioni della ruota sostitutiva.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-514.jpg" alt="Cerchi BMW Style 514" data-skip-lazy="" /></p>
<h3><strong>Cerchi BMW Style 514 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Codice articolo</td>
<td>Nome articolo</td>
<td>Particolari</td>
<td>Cerca parte</td>
</tr>
<tr>
<td>36116855527</td>
<td>Cerchio in lega leggera</td>
<td>8JX17 ET:29</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=36116855527 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116855528</td>
<td>Cerchio in lega leggera</td>
<td>8,5JX17 ET:40</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=36116855528 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Bullone ruota nero</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 Bullone ruota nero" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Coprimozzo con bordo cromato</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 Coprimozzo con bordo cromato" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Valvola a vite, 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 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valvola</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 Valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Tappi valvola</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 Tappi valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
</table>
<h5>Modelli BMW per i quali Cerchi BMW Style 514 si adatta: E89         </h5>
<h5> </h5>
<h5></h5>
<h3>Il Cerchi BMW Style 514 si adatterà alla tua BMW?</h3>
<p>Tieni presente che potrebbe essere pericoloso guidare la tua BMW con pneumatici o ruote che non sono progettati per adattarsi. Se non sei sicuro delle specifiche del tuo attuale cerchio, controlla il nostro <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">cerchio BMW tabella di montaggio e guida</a></p>
<p>&nbsp;</p>
<p>Inserisci le dimensioni delle ruote e dei pneumatici BMW esistenti e le dimensioni del Cerchi BMW Style 514 e il risultato verrà mostrato sul diagramma. Il puntone mostrato nello schema qui sotto è solo a scopo illustrativo.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">CONFIGURATION EXISTANTE</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Vous n'êtes pas sûr de votre taille de roue actuelle?  <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Vérifiez ici!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">NOUVELLE CONFIGURATION</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Modifiez les valeurs pour voir le réglage.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">RÉSULTATS</h5>
                      <p> sont automatiquement appliqués ci-dessous  </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> Le schéma est à afficher uniquement pour vous aider à visualiser le réglage de vos pneus et roues pour votre nouvelle configuration. </p>
                          <br>
                          <p> Largeur du pneu : la largeur de votre pneu en millimètres. <strong> 195 </strong> / 55ZR15 </p>
                          <p> Profil du pneu : le rapport entre la largeur de la paroi du pneu et la largeur du pneu. 195 / <strong> 55 </strong> ZR15 </p>
                          <p> Diamètre des pneus - Le diamètre des roues en pouces. 195 / 55ZR <strong> 15 </strong> </p>
                          <p> Decalage : la distance entre le centre de la roue et la face de montage en mm. ET <strong> 20 </strong> </p>
                          <p> Largeur de la jante : la largeur des jantes en pouces. <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">Pouce</th>
                        <th scope="col" class="tb_orgwheel">Roue d'origine</th>
                        <th scope="col" class="tb_newwheel">Nouvelle roue</th>
                        <th scope="col">Différence</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diamètre</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circonférence</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Paroi latérale</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Largeur</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Tours de roue</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>Qual è la pressione degli pneumatici consigliata per Cerchi BMW Style 514?</h3>
<p>La pressione dei pneumatici per Cerchi BMW Style 514 dipenderà dal tuo modello BMW. La maggior parte dei modelli BMW, come il Serie BMW Z4 e il , hanno una pressione dei pneumatici consigliata di 32 PSI (2,2 Bar). Tuttavia, dovresti sempre ricontrollare questo per il tuo modello BMW specifico. Puoi scoprire la pressione dei pneumatici consigliata per la tua BMW, controllando l&#8217;adesivo sul bordo interno della portiera del conducente o, controlla il manuale del proprietario se hai ancora lo stesso tipo di pneumatici forniti con il veicolo.</p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-514/">Cerchi BMW Style 514</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cerchi BMW Style 313</title>
		<link>https://www.bmwstylerims.com/it/cerchi-bmw-style-313/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 18 Mar 2023 18:48:29 +0000</pubDate>
				<category><![CDATA[Bmw Serie 1]]></category>
		<category><![CDATA[BMW Serie 1 E87+]]></category>
		<category><![CDATA[Bmw Serie 3]]></category>
		<category><![CDATA[BMW Serie 3 E90+]]></category>
		<category><![CDATA[BMW Z4 Serie E89]]></category>
		<category><![CDATA[Cerchi BMW serie M]]></category>
		<category><![CDATA[Serie BMW Z4]]></category>
		<category><![CDATA[Tutti gli stili di cerchi BMW]]></category>
		<category><![CDATA[E89]]></category>
		<category><![CDATA[E90]]></category>
		<category><![CDATA[Mi87+]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/cerchi-bmw-style-313/</guid>

					<description><![CDATA[<p>Il cerchi BMW stile 313 fa parte della gamma di cerchi originali BMW. Scopri di più sui cerchi BMW stile 313, che è standard per la BMW E87, E90 ed E89, ma potrebbe adattarsi ad altri modelli.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/it/cerchi-bmw-style-313/" aria-label="Cerchi BMW Style 313">Continua a leggere</a></p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-313/">Cerchi BMW Style 313</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Il cerchi di BMW stile 313 fa parte della gamma di stili di ruota originali di BMW. Il cerchi BMW Style 313 è disponibile nei diametri di 18&#8243; e 19&#8243; pollici, con uno schema dei bulIlni di 5&#215;120. Questo è Il stile di ruota originale per la serie BMW E87, E90 ed E89, tuttavia potrebbe adattarsi ad altri modelli dato che le specifiche corrispondono di seguito con la ruota sostitutiva. Il stile dato a questa ruota è meglio descritto come BMW Performance Rad.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-313.jpg" alt="Cerchi BMW Style 313" data-skip-lazy="" /></p>
<h3><strong>Cerchi BMW Style 313 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Codice articolo</td>
<td>Nome articolo</td>
<td>Particolari</td>
<td>Cerca parte</td>
</tr>
<tr>
<td>36116856666</td>
<td>cerchio in lega leggera</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=36116856666 cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116856667</td>
<td>cerchio in lega leggera</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=36116856667 cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Bullone ruota nero</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 Bullone ruota nero" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Coprimozzo con bordo cromato</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 Coprimozzo con bordo cromato" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valvola</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 Valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Tappi valvola</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 Tappi valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36112228660</td>
<td>stemma M</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=36112228660 stemma M" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116787645</td>
<td>Cerchio in lega leggera</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=36116787645 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116787646</td>
<td>Cerchio in lega leggera</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=36116787646 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116791998</td>
<td>cerchio in lega leggera</td>
<td>8JX18 ET:34</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=36116791998 cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116791999</td>
<td>cerchio in lega leggera</td>
<td>8,5JX18 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=36116791999 cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36117844343</td>
<td>cerchio in lega leggera</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=36117844343 cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36117844344</td>
<td>cerchio in lega leggera</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=36117844344 cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121178869</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116787647</td>
<td>Cerchio in lega leggera</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=36116787647 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116787648</td>
<td>Cerchio in lega leggera</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=36116787648 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116787655</td>
<td>Cerchio in lega leggera</td>
<td>8JX19 ET:29</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=36116787655 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116787656</td>
<td>Cerchio in lega leggera</td>
<td>9JX19 ET:40</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=36116787656 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Valvola a vite, 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 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36111095375</td>
<td>Valvola a vite, 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=36111095375 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146774590</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
</table>
<h5>Modelli BMW per i quali Cerchi BMW Style 313 si adatta: Mi87+ E90+ E89       </h5>
<h5> </h5>
<h5></h5>
<h3>Il Cerchi BMW Style 313 si adatterà alla tua BMW?</h3>
<p>Tieni presente che potrebbe essere pericoloso guidare la tua BMW con pneumatici o ruote che non sono progettati per adattarsi. Se non sei sicuro delle specifiche del tuo attuale cerchio, controlla il nostro <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">cerchio BMW tabella di montaggio e guida</a></p>
<p>&nbsp;</p>
<p>Inserisci le dimensioni delle ruote e dei pneumatici BMW esistenti e le dimensioni del Cerchi BMW Style 313 e il risultato verrà mostrato sul diagramma. Il puntone mostrato nello schema qui sotto è solo a scopo illustrativo.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">CONFIGURATION EXISTANTE</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Vous n'êtes pas sûr de votre taille de roue actuelle?  <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Vérifiez ici!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">NOUVELLE CONFIGURATION</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Modifiez les valeurs pour voir le réglage.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">RÉSULTATS</h5>
                      <p> sont automatiquement appliqués ci-dessous  </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> Le schéma est à afficher uniquement pour vous aider à visualiser le réglage de vos pneus et roues pour votre nouvelle configuration. </p>
                          <br>
                          <p> Largeur du pneu : la largeur de votre pneu en millimètres. <strong> 195 </strong> / 55ZR15 </p>
                          <p> Profil du pneu : le rapport entre la largeur de la paroi du pneu et la largeur du pneu. 195 / <strong> 55 </strong> ZR15 </p>
                          <p> Diamètre des pneus - Le diamètre des roues en pouces. 195 / 55ZR <strong> 15 </strong> </p>
                          <p> Decalage : la distance entre le centre de la roue et la face de montage en mm. ET <strong> 20 </strong> </p>
                          <p> Largeur de la jante : la largeur des jantes en pouces. <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">Pouce</th>
                        <th scope="col" class="tb_orgwheel">Roue d'origine</th>
                        <th scope="col" class="tb_newwheel">Nouvelle roue</th>
                        <th scope="col">Différence</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diamètre</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circonférence</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Paroi latérale</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Largeur</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Tours de roue</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>Qual è la pressione degli pneumatici consigliata per Cerchi BMW Style 313?</h3>
<p>La pressione dei pneumatici per Cerchi BMW Style 313 dipenderà dal tuo modello BMW. La maggior parte dei modelli BMW, come il Bmw Serie 1 e il Bmw Serie 3, hanno una pressione dei pneumatici consigliata di 32 PSI (2,2 Bar). Tuttavia, dovresti sempre ricontrollare questo per il tuo modello BMW specifico. Puoi scoprire la pressione dei pneumatici consigliata per la tua BMW, controllando l&#8217;adesivo sul bordo interno della portiera del conducente o, controlla il manuale del proprietario se hai ancora lo stesso tipo di pneumatici forniti con il veicolo.</p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-313/">Cerchi BMW Style 313</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cerchi BMW Style 296</title>
		<link>https://www.bmwstylerims.com/it/cerchi-bmw-style-296/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 18 Mar 2023 18:48:14 +0000</pubDate>
				<category><![CDATA[BMW Z4 Serie E89]]></category>
		<category><![CDATA[Serie BMW Z4]]></category>
		<category><![CDATA[Tutti gli stili di cerchi BMW]]></category>
		<category><![CDATA[E89]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/cerchi-bmw-style-296/</guid>

					<description><![CDATA[<p>Il cerchi BMW stile 296 fa parte della gamma di cerchi originali BMW. Scopri di più sui cerchi BMW stile 296, che è standard per la BMW E89, ma potrebbe adattarsi ad altri modelli.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/it/cerchi-bmw-style-296/" aria-label="Cerchi BMW Style 296">Continua a leggere</a></p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-296/">Cerchi BMW Style 296</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Il cerchi di BMW stile 296 fa parte della gamma di stili di ruota originali di BMW. La ruota BMW Style 296 è disponibile in diametri di 19 pollici, con un modelIl di bulIlne di 5&#215;120. Questo cerchi raro è Il stile originale della ruota per la serie BMW E89, tuttavia potrebbe adattarsi ad altri modelli dato che le specifiche corrispondono di seguito con la ruota sostitutiva .Il stile dato a questa ruota è meglio descritto come V Spoke.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-296.jpg" alt="Cerchi BMW Style 296" data-skip-lazy="" /></p>
<h3><strong>Cerchi BMW Style 296 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Codice articolo</td>
<td>Nome articolo</td>
<td>Particolari</td>
<td>Cerca parte</td>
</tr>
<tr>
<td>36116785256</td>
<td>Cerchio in lega leggera</td>
<td>8JX19 ET:29</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=36116785256 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116785257</td>
<td>Cerchio in lega leggera</td>
<td>9JX19 ET:40</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=36116785257 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Bullone ruota nero</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 Bullone ruota nero" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Coprimozzo con bordo cromato</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 Coprimozzo con bordo cromato" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Valvola a vite, 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 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valvola</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 Valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Tappi valvola</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 Tappi valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
</table>
<h5>Modelli BMW per i quali Cerchi BMW Style 296 si adatta: E89         </h5>
<h5> </h5>
<h5></h5>
<h3>Il Cerchi BMW Style 296 si adatterà alla tua BMW?</h3>
<p>Tieni presente che potrebbe essere pericoloso guidare la tua BMW con pneumatici o ruote che non sono progettati per adattarsi. Se non sei sicuro delle specifiche del tuo attuale cerchio, controlla il nostro <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">cerchio BMW tabella di montaggio e guida</a></p>
<p>&nbsp;</p>
<p>Inserisci le dimensioni delle ruote e dei pneumatici BMW esistenti e le dimensioni del Cerchi BMW Style 296 e il risultato verrà mostrato sul diagramma. Il puntone mostrato nello schema qui sotto è solo a scopo illustrativo.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">CONFIGURATION EXISTANTE</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Vous n'êtes pas sûr de votre taille de roue actuelle?  <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Vérifiez ici!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">NOUVELLE CONFIGURATION</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Modifiez les valeurs pour voir le réglage.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">RÉSULTATS</h5>
                      <p> sont automatiquement appliqués ci-dessous  </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> Le schéma est à afficher uniquement pour vous aider à visualiser le réglage de vos pneus et roues pour votre nouvelle configuration. </p>
                          <br>
                          <p> Largeur du pneu : la largeur de votre pneu en millimètres. <strong> 195 </strong> / 55ZR15 </p>
                          <p> Profil du pneu : le rapport entre la largeur de la paroi du pneu et la largeur du pneu. 195 / <strong> 55 </strong> ZR15 </p>
                          <p> Diamètre des pneus - Le diamètre des roues en pouces. 195 / 55ZR <strong> 15 </strong> </p>
                          <p> Decalage : la distance entre le centre de la roue et la face de montage en mm. ET <strong> 20 </strong> </p>
                          <p> Largeur de la jante : la largeur des jantes en pouces. <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">Pouce</th>
                        <th scope="col" class="tb_orgwheel">Roue d'origine</th>
                        <th scope="col" class="tb_newwheel">Nouvelle roue</th>
                        <th scope="col">Différence</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diamètre</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circonférence</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Paroi latérale</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Largeur</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Tours de roue</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>Qual è la pressione degli pneumatici consigliata per Cerchi BMW Style 296?</h3>
<p>La pressione dei pneumatici per Cerchi BMW Style 296 dipenderà dal tuo modello BMW. La maggior parte dei modelli BMW, come il Serie BMW Z4 e il , hanno una pressione dei pneumatici consigliata di 32 PSI (2,2 Bar). Tuttavia, dovresti sempre ricontrollare questo per il tuo modello BMW specifico. Puoi scoprire la pressione dei pneumatici consigliata per la tua BMW, controllando l&#8217;adesivo sul bordo interno della portiera del conducente o, controlla il manuale del proprietario se hai ancora lo stesso tipo di pneumatici forniti con il veicolo.</p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-296/">Cerchi BMW Style 296</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cerchi BMW Style 294</title>
		<link>https://www.bmwstylerims.com/it/cerchi-bmw-style-294/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 18 Mar 2023 18:48:14 +0000</pubDate>
				<category><![CDATA[BMW Z4 Serie E89]]></category>
		<category><![CDATA[Serie BMW Z4]]></category>
		<category><![CDATA[Tutti gli stili di cerchi BMW]]></category>
		<category><![CDATA[E89]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/cerchi-bmw-style-294/</guid>

					<description><![CDATA[<p>Il cerchi BMW stile 294 fa parte della gamma di cerchi originali BMW. Scopri di più sui cerchi BMW stile 294, che è standard per la BMW E89, ma potrebbe adattarsi ad altri modelli.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/it/cerchi-bmw-style-294/" aria-label="Cerchi BMW Style 294">Continua a leggere</a></p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-294/">Cerchi BMW Style 294</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Il cerchi di BMW stile 294 fa parte della gamma di stili di ruota originali di BMW. La ruota BMW Style 294 è disponibile in diametri di 18&#8243; pollici, con un modelIl di bulIlne di 5&#215;120. Questo cerchi raro è Il stile della ruota originale per la serie BMW E89, tuttavia potrebbe adattarsi ad altri modelli dato che le specifiche corrispondono di seguito con la ruota sostitutiva .Il stile dato a questa ruota è meglio descritto come V Spoke.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-294.jpg" alt="Cerchi BMW Style 294" data-skip-lazy="" /></p>
<h3><strong>Cerchi BMW Style 294 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Codice articolo</td>
<td>Nome articolo</td>
<td>Particolari</td>
<td>Cerca parte</td>
</tr>
<tr>
<td>36116785252</td>
<td>Due pezzi Cerchio in lega leggera</td>
<td>8JX18 ET:29</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=36116785252 Due pezzi Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116785253</td>
<td>Due pezzi Cerchio in lega leggera</td>
<td>81/2JX18 ET:40</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=36116785253 Due pezzi Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Bullone ruota nero</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 Bullone ruota nero" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Coprimozzo con bordo cromato</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 Coprimozzo con bordo cromato" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121182759</td>
<td>valvola di gomma</td>
<td>L=61,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=36121182759 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Valvola a vite, 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 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valvola</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 Valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Tappi valvola</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 Tappi valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
</table>
<h5>Modelli BMW per i quali Cerchi BMW Style 294 si adatta: E89         </h5>
<h5> </h5>
<h5></h5>
<h3>Il Cerchi BMW Style 294 si adatterà alla tua BMW?</h3>
<p>Tieni presente che potrebbe essere pericoloso guidare la tua BMW con pneumatici o ruote che non sono progettati per adattarsi. Se non sei sicuro delle specifiche del tuo attuale cerchio, controlla il nostro <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">cerchio BMW tabella di montaggio e guida</a></p>
<p>&nbsp;</p>
<p>Inserisci le dimensioni delle ruote e dei pneumatici BMW esistenti e le dimensioni del Cerchi BMW Style 294 e il risultato verrà mostrato sul diagramma. Il puntone mostrato nello schema qui sotto è solo a scopo illustrativo.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">CONFIGURATION EXISTANTE</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Vous n'êtes pas sûr de votre taille de roue actuelle?  <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Vérifiez ici!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">NOUVELLE CONFIGURATION</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Modifiez les valeurs pour voir le réglage.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">RÉSULTATS</h5>
                      <p> sont automatiquement appliqués ci-dessous  </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> Le schéma est à afficher uniquement pour vous aider à visualiser le réglage de vos pneus et roues pour votre nouvelle configuration. </p>
                          <br>
                          <p> Largeur du pneu : la largeur de votre pneu en millimètres. <strong> 195 </strong> / 55ZR15 </p>
                          <p> Profil du pneu : le rapport entre la largeur de la paroi du pneu et la largeur du pneu. 195 / <strong> 55 </strong> ZR15 </p>
                          <p> Diamètre des pneus - Le diamètre des roues en pouces. 195 / 55ZR <strong> 15 </strong> </p>
                          <p> Decalage : la distance entre le centre de la roue et la face de montage en mm. ET <strong> 20 </strong> </p>
                          <p> Largeur de la jante : la largeur des jantes en pouces. <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">Pouce</th>
                        <th scope="col" class="tb_orgwheel">Roue d'origine</th>
                        <th scope="col" class="tb_newwheel">Nouvelle roue</th>
                        <th scope="col">Différence</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diamètre</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circonférence</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Paroi latérale</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Largeur</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Tours de roue</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>Qual è la pressione degli pneumatici consigliata per Cerchi BMW Style 294?</h3>
<p>La pressione dei pneumatici per Cerchi BMW Style 294 dipenderà dal tuo modello BMW. La maggior parte dei modelli BMW, come il Serie BMW Z4 e il , hanno una pressione dei pneumatici consigliata di 32 PSI (2,2 Bar). Tuttavia, dovresti sempre ricontrollare questo per il tuo modello BMW specifico. Puoi scoprire la pressione dei pneumatici consigliata per la tua BMW, controllando l&#8217;adesivo sul bordo interno della portiera del conducente o, controlla il manuale del proprietario se hai ancora lo stesso tipo di pneumatici forniti con il veicolo.</p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-294/">Cerchi BMW Style 294</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cerchi BMW Style 295</title>
		<link>https://www.bmwstylerims.com/it/cerchi-bmw-style-295/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 18 Mar 2023 18:48:14 +0000</pubDate>
				<category><![CDATA[BMW Z4 Serie E89]]></category>
		<category><![CDATA[Serie BMW Z4]]></category>
		<category><![CDATA[Tutti gli stili di cerchi BMW]]></category>
		<category><![CDATA[E89]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/cerchi-bmw-style-295/</guid>

					<description><![CDATA[<p>Il cerchi BMW stile 295 fa parte della gamma di cerchi originali BMW. Scopri di più sui cerchi BMW stile 295, che è standard per la BMW E89, ma potrebbe adattarsi ad altri modelli.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/it/cerchi-bmw-style-295/" aria-label="Cerchi BMW Style 295">Continua a leggere</a></p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-295/">Cerchi BMW Style 295</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Il cerchi di BMW stile 295 fa parte della gamma di stili di ruota originali di BMW. La ruota BMW Style 295 è disponibile in diametri di 18&#8243; pollici, con un modelIl di bulIlne di 5&#215;120. Questo cerchi raro è Il stile della ruota originale per la serie BMW E89, tuttavia potrebbe adattarsi ad altri modelli dato che le specifiche corrispondono di seguito con la ruota sostitutiva .Il stile dato a questa ruota è meglio descritto come Star Spoke.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-295.jpg" alt="Cerchi BMW Style 295" data-skip-lazy="" /></p>
<h3><strong>Cerchi BMW Style 295 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Codice articolo</td>
<td>Nome articolo</td>
<td>Particolari</td>
<td>Cerca parte</td>
</tr>
<tr>
<td>36116785254</td>
<td>Cerchio in lega leggera</td>
<td>8JX18 ET:29</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=36116785254 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116785255</td>
<td>Cerchio in lega leggera</td>
<td>8,5JX18 ET:40</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=36116785255 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Bullone ruota nero</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 Bullone ruota nero" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Coprimozzo con bordo cromato</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 Coprimozzo con bordo cromato" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121178869</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Valvola a vite, 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 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valvola</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 Valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Tappi valvola</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 Tappi valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
</table>
<h5>Modelli BMW per i quali Cerchi BMW Style 295 si adatta: E89         </h5>
<h5> </h5>
<h5></h5>
<h3>Il Cerchi BMW Style 295 si adatterà alla tua BMW?</h3>
<p>Tieni presente che potrebbe essere pericoloso guidare la tua BMW con pneumatici o ruote che non sono progettati per adattarsi. Se non sei sicuro delle specifiche del tuo attuale cerchio, controlla il nostro <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">cerchio BMW tabella di montaggio e guida</a></p>
<p>&nbsp;</p>
<p>Inserisci le dimensioni delle ruote e dei pneumatici BMW esistenti e le dimensioni del Cerchi BMW Style 295 e il risultato verrà mostrato sul diagramma. Il puntone mostrato nello schema qui sotto è solo a scopo illustrativo.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">CONFIGURATION EXISTANTE</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Vous n'êtes pas sûr de votre taille de roue actuelle?  <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Vérifiez ici!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">NOUVELLE CONFIGURATION</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Modifiez les valeurs pour voir le réglage.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">RÉSULTATS</h5>
                      <p> sont automatiquement appliqués ci-dessous  </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> Le schéma est à afficher uniquement pour vous aider à visualiser le réglage de vos pneus et roues pour votre nouvelle configuration. </p>
                          <br>
                          <p> Largeur du pneu : la largeur de votre pneu en millimètres. <strong> 195 </strong> / 55ZR15 </p>
                          <p> Profil du pneu : le rapport entre la largeur de la paroi du pneu et la largeur du pneu. 195 / <strong> 55 </strong> ZR15 </p>
                          <p> Diamètre des pneus - Le diamètre des roues en pouces. 195 / 55ZR <strong> 15 </strong> </p>
                          <p> Decalage : la distance entre le centre de la roue et la face de montage en mm. ET <strong> 20 </strong> </p>
                          <p> Largeur de la jante : la largeur des jantes en pouces. <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">Pouce</th>
                        <th scope="col" class="tb_orgwheel">Roue d'origine</th>
                        <th scope="col" class="tb_newwheel">Nouvelle roue</th>
                        <th scope="col">Différence</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diamètre</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circonférence</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Paroi latérale</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Largeur</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Tours de roue</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>Qual è la pressione degli pneumatici consigliata per Cerchi BMW Style 295?</h3>
<p>La pressione dei pneumatici per Cerchi BMW Style 295 dipenderà dal tuo modello BMW. La maggior parte dei modelli BMW, come il Serie BMW Z4 e il , hanno una pressione dei pneumatici consigliata di 32 PSI (2,2 Bar). Tuttavia, dovresti sempre ricontrollare questo per il tuo modello BMW specifico. Puoi scoprire la pressione dei pneumatici consigliata per la tua BMW, controllando l&#8217;adesivo sul bordo interno della portiera del conducente o, controlla il manuale del proprietario se hai ancora lo stesso tipo di pneumatici forniti con il veicolo.</p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-295/">Cerchi BMW Style 295</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cerchi BMW Style 293</title>
		<link>https://www.bmwstylerims.com/it/cerchi-bmw-style-293/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 18 Mar 2023 18:48:14 +0000</pubDate>
				<category><![CDATA[BMW Z4 Serie E89]]></category>
		<category><![CDATA[Serie BMW Z4]]></category>
		<category><![CDATA[Tutti gli stili di cerchi BMW]]></category>
		<category><![CDATA[E89]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/cerchi-bmw-style-293/</guid>

					<description><![CDATA[<p>Il cerchi BMW stile 293 fa parte della gamma di cerchi originali BMW. Scopri di più sui cerchi BMW stile 293, che è standard per la BMW E89, ma potrebbe adattarsi ad altri modelli.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/it/cerchi-bmw-style-293/" aria-label="Cerchi BMW Style 293">Continua a leggere</a></p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-293/">Cerchi BMW Style 293</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Il cerchi di BMW stile 293 fa parte della gamma di stili di ruota originali di BMW. La ruota BMW Style 293 è disponibile in diametri di 18&#8243; pollici, con un modelIl di bulIlne di 5&#215;120. Questo cerchi raro è Il stile della ruota originale per la serie BMW E89, tuttavia potrebbe adattarsi ad altri modelli dato che le specifiche corrispondono di seguito con la ruota sostitutiva .Il stile dato a questa ruota è meglio descritto come Multi Spoke.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-293.jpg" alt="Cerchi BMW Style 293" data-skip-lazy="" /></p>
<h3><strong>Cerchi BMW Style 293 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Codice articolo</td>
<td>Nome articolo</td>
<td>Particolari</td>
<td>Cerca parte</td>
</tr>
<tr>
<td>36121120779</td>
<td>Tappi valvola</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 Tappi valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116785250</td>
<td>Cerchio in lega leggera</td>
<td>8JX18 ET:29</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=36116785250 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116785251</td>
<td>Cerchio in lega leggera</td>
<td>81/2JX18 ET:40</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=36116785251 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Bullone ruota nero</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 Bullone ruota nero" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Coprimozzo con bordo cromato</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 Coprimozzo con bordo cromato" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121178869</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146792830</td>
<td>Valvola a vite, 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 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valvola</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 Valvola" rel="noopener">Cerca parte</a></td>
</tr>
</table>
<h5>Modelli BMW per i quali Cerchi BMW Style 293 si adatta: E89         </h5>
<h5> </h5>
<h5></h5>
<h3>Il Cerchi BMW Style 293 si adatterà alla tua BMW?</h3>
<p>Tieni presente che potrebbe essere pericoloso guidare la tua BMW con pneumatici o ruote che non sono progettati per adattarsi. Se non sei sicuro delle specifiche del tuo attuale cerchio, controlla il nostro <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">cerchio BMW tabella di montaggio e guida</a></p>
<p>&nbsp;</p>
<p>Inserisci le dimensioni delle ruote e dei pneumatici BMW esistenti e le dimensioni del Cerchi BMW Style 293 e il risultato verrà mostrato sul diagramma. Il puntone mostrato nello schema qui sotto è solo a scopo illustrativo.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">CONFIGURATION EXISTANTE</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Vous n'êtes pas sûr de votre taille de roue actuelle?  <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Vérifiez ici!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">NOUVELLE CONFIGURATION</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Modifiez les valeurs pour voir le réglage.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">RÉSULTATS</h5>
                      <p> sont automatiquement appliqués ci-dessous  </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> Le schéma est à afficher uniquement pour vous aider à visualiser le réglage de vos pneus et roues pour votre nouvelle configuration. </p>
                          <br>
                          <p> Largeur du pneu : la largeur de votre pneu en millimètres. <strong> 195 </strong> / 55ZR15 </p>
                          <p> Profil du pneu : le rapport entre la largeur de la paroi du pneu et la largeur du pneu. 195 / <strong> 55 </strong> ZR15 </p>
                          <p> Diamètre des pneus - Le diamètre des roues en pouces. 195 / 55ZR <strong> 15 </strong> </p>
                          <p> Decalage : la distance entre le centre de la roue et la face de montage en mm. ET <strong> 20 </strong> </p>
                          <p> Largeur de la jante : la largeur des jantes en pouces. <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">Pouce</th>
                        <th scope="col" class="tb_orgwheel">Roue d'origine</th>
                        <th scope="col" class="tb_newwheel">Nouvelle roue</th>
                        <th scope="col">Différence</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diamètre</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circonférence</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Paroi latérale</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Largeur</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Tours de roue</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>Qual è la pressione degli pneumatici consigliata per Cerchi BMW Style 293?</h3>
<p>La pressione dei pneumatici per Cerchi BMW Style 293 dipenderà dal tuo modello BMW. La maggior parte dei modelli BMW, come il Serie BMW Z4 e il , hanno una pressione dei pneumatici consigliata di 32 PSI (2,2 Bar). Tuttavia, dovresti sempre ricontrollare questo per il tuo modello BMW specifico. Puoi scoprire la pressione dei pneumatici consigliata per la tua BMW, controllando l&#8217;adesivo sul bordo interno della portiera del conducente o, controlla il manuale del proprietario se hai ancora lo stesso tipo di pneumatici forniti con il veicolo.</p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-293/">Cerchi BMW Style 293</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cerchi BMW Style 290</title>
		<link>https://www.bmwstylerims.com/it/cerchi-bmw-style-290/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 18 Mar 2023 18:48:14 +0000</pubDate>
				<category><![CDATA[BMW Z4 Serie E89]]></category>
		<category><![CDATA[Serie BMW Z4]]></category>
		<category><![CDATA[Tutti gli stili di cerchi BMW]]></category>
		<category><![CDATA[E89]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/cerchi-bmw-style-290/</guid>

					<description><![CDATA[<p>Il cerchi BMW stile 290 fa parte della gamma di cerchi originali BMW. Scopri di più sui cerchi BMW stile 290, che è standard per la BMW E89, ma potrebbe adattarsi ad altri modelli.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/it/cerchi-bmw-style-290/" aria-label="Cerchi BMW Style 290">Continua a leggere</a></p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-290/">Cerchi BMW Style 290</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Il cerchi di BMW stile 290 fa parte della gamma di stili di ruota originali di BMW. La ruota BMW Style 290 è disponibile in diametri di 17&#8243; pollici, con un modelIl di bulIlne di 5&#215;120. Questo cerchi raro è Il stile della ruota originale per la serie BMW E89, tuttavia potrebbe adattarsi ad altri modelli dato che le specifiche corrispondono di seguito con la ruota sostitutiva .Il stile dato a questa ruota è meglio descritto come Star Spoke.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-290.jpg" alt="Cerchi BMW Style 290" data-skip-lazy="" /></p>
<h3><strong>Cerchi BMW Style 290 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Codice articolo</td>
<td>Nome articolo</td>
<td>Particolari</td>
<td>Cerca parte</td>
</tr>
<tr>
<td>36116785240</td>
<td>Cerchio in lega leggera</td>
<td>8JX17 ET:29</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=36116785240 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Bullone ruota nero</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 Bullone ruota nero" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Coprimozzo con bordo cromato</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 Coprimozzo con bordo cromato" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Valvola a vite, 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 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valvola</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 Valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Tappi valvola</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 Tappi valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
</table>
<h5>Modelli BMW per i quali Cerchi BMW Style 290 si adatta: E89         </h5>
<h5> </h5>
<h5></h5>
<h3>Il Cerchi BMW Style 290 si adatterà alla tua BMW?</h3>
<p>Tieni presente che potrebbe essere pericoloso guidare la tua BMW con pneumatici o ruote che non sono progettati per adattarsi. Se non sei sicuro delle specifiche del tuo attuale cerchio, controlla il nostro <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">cerchio BMW tabella di montaggio e guida</a></p>
<p>&nbsp;</p>
<p>Inserisci le dimensioni delle ruote e dei pneumatici BMW esistenti e le dimensioni del Cerchi BMW Style 290 e il risultato verrà mostrato sul diagramma. Il puntone mostrato nello schema qui sotto è solo a scopo illustrativo.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">CONFIGURATION EXISTANTE</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Vous n'êtes pas sûr de votre taille de roue actuelle?  <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Vérifiez ici!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">NOUVELLE CONFIGURATION</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Modifiez les valeurs pour voir le réglage.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">RÉSULTATS</h5>
                      <p> sont automatiquement appliqués ci-dessous  </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> Le schéma est à afficher uniquement pour vous aider à visualiser le réglage de vos pneus et roues pour votre nouvelle configuration. </p>
                          <br>
                          <p> Largeur du pneu : la largeur de votre pneu en millimètres. <strong> 195 </strong> / 55ZR15 </p>
                          <p> Profil du pneu : le rapport entre la largeur de la paroi du pneu et la largeur du pneu. 195 / <strong> 55 </strong> ZR15 </p>
                          <p> Diamètre des pneus - Le diamètre des roues en pouces. 195 / 55ZR <strong> 15 </strong> </p>
                          <p> Decalage : la distance entre le centre de la roue et la face de montage en mm. ET <strong> 20 </strong> </p>
                          <p> Largeur de la jante : la largeur des jantes en pouces. <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">Pouce</th>
                        <th scope="col" class="tb_orgwheel">Roue d'origine</th>
                        <th scope="col" class="tb_newwheel">Nouvelle roue</th>
                        <th scope="col">Différence</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diamètre</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circonférence</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Paroi latérale</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Largeur</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Tours de roue</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>Qual è la pressione degli pneumatici consigliata per Cerchi BMW Style 290?</h3>
<p>La pressione dei pneumatici per Cerchi BMW Style 290 dipenderà dal tuo modello BMW. La maggior parte dei modelli BMW, come il Serie BMW Z4 e il , hanno una pressione dei pneumatici consigliata di 32 PSI (2,2 Bar). Tuttavia, dovresti sempre ricontrollare questo per il tuo modello BMW specifico. Puoi scoprire la pressione dei pneumatici consigliata per la tua BMW, controllando l&#8217;adesivo sul bordo interno della portiera del conducente o, controlla il manuale del proprietario se hai ancora lo stesso tipo di pneumatici forniti con il veicolo.</p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-290/">Cerchi BMW Style 290</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cerchi BMW Style 292</title>
		<link>https://www.bmwstylerims.com/it/cerchi-bmw-style-292/</link>
		
		<dc:creator><![CDATA[bmwstylerims.com]]></dc:creator>
		<pubDate>Sat, 18 Mar 2023 18:48:14 +0000</pubDate>
				<category><![CDATA[BMW Z4 Serie E89]]></category>
		<category><![CDATA[Serie BMW Z4]]></category>
		<category><![CDATA[Tutti gli stili di cerchi BMW]]></category>
		<category><![CDATA[E89]]></category>
		<guid isPermaLink="false">https://www.bmwstylerims.com/cerchi-bmw-style-292/</guid>

					<description><![CDATA[<p>Il cerchi BMW stile 292 fa parte della gamma di cerchi originali BMW. Scopri di più sui cerchi BMW stile 292, che è standard per la BMW E89, ma potrebbe adattarsi ad altri modelli.&#8230; <a class="kt-excerpt-readmore" href="https://www.bmwstylerims.com/it/cerchi-bmw-style-292/" aria-label="Cerchi BMW Style 292">Continua a leggere</a></p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-292/">Cerchi BMW Style 292</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Il cerchi di BMW stile 292 fa parte della gamma di stili di ruota originali di BMW. La ruota BMW Style 292 è disponibile in diametri di 17&#8243; pollici, con un modelIl di bulIlne di 5&#215;120. Questo cerchi raro è Il stile della ruota originale per la serie BMW E89, tuttavia potrebbe adattarsi ad altri modelli dato che le specifiche corrispondono di seguito con la ruota sostitutiva Il stile dato a questa ruota è meglio descritto come Turbine Styling.</p>
<p><img decoding="async" class="centerimg" src="https://www.bmwstylerims.com/wp-content/uploads/2021/04/BMW-wheel-style-292.jpg" alt="Cerchi BMW Style 292" data-skip-lazy="" /></p>
<h3><strong>Cerchi BMW Style 292 </strong><strong>Technical Specifications &amp; Parts  </strong></h3>
<p><Table></p>
<td>Codice articolo</td>
<td>Nome articolo</td>
<td>Particolari</td>
<td>Cerca parte</td>
</tr>
<tr>
<td>36116785248</td>
<td>Cerchio in lega leggera</td>
<td>8JX17 ET:29</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=36116785248 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36116785249</td>
<td>Cerchio in lega leggera</td>
<td>81/2JX17 ET:40</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=36116785249 Cerchio in lega leggera" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136781150</td>
<td>Bullone ruota nero</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 Bullone ruota nero" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36136783536</td>
<td>Coprimozzo con bordo cromato</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 Coprimozzo con bordo cromato" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121178869</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121116326</td>
<td>valvola di gomma</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 valvola di gomma" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36146792829</td>
<td>Valvola a vite, 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 Valvola a vite, RDC" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36141095389</td>
<td>Valvola</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 Valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36121120779</td>
<td>Tappi valvola</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 Tappi valvola" rel="noopener">Cerca parte</a></td>
</tr>
<tr>
<td>36111095436</td>
<td>Tappi valvola 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 Tappi valvola RDC" rel="noopener">Cerca parte</a></td>
</tr>
</table>
<h5>Modelli BMW per i quali Cerchi BMW Style 292 si adatta: E89         </h5>
<h5> </h5>
<h5></h5>
<h3>Il Cerchi BMW Style 292 si adatterà alla tua BMW?</h3>
<p>Tieni presente che potrebbe essere pericoloso guidare la tua BMW con pneumatici o ruote che non sono progettati per adattarsi. Se non sei sicuro delle specifiche del tuo attuale cerchio, controlla il nostro <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/" target="_blank" rel="noopener">cerchio BMW tabella di montaggio e guida</a></p>
<p>&nbsp;</p>
<p>Inserisci le dimensioni delle ruote e dei pneumatici BMW esistenti e le dimensioni del Cerchi BMW Style 292 e il risultato verrà mostrato sul diagramma. Il puntone mostrato nello schema qui sotto è solo a scopo illustrativo.</p>
<body>
<div class="tirecomparison-calculator">   
    <div class="form_holder_cal"> 
                    <div class="form_one_container">
                        <div class="setup_old">
                            <h5 class="hclass">CONFIGURATION EXISTANTE</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                <input id="width" oninput="tireFunction()" value="6.5" type="number" min="0" max="99">
                            </div>
                           </div>
                        </form>
                        <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Vous n'êtes pas sûr de votre taille de roue actuelle?  <a href="https://www.bmwstylerims.com/bmw-wheel-fitting-chart/">Vérifiez ici!</a> </p>
                    </div>
                    <div class="form_two_container">
                          <div class="setup_new">
                          <h5 class="hclass">NOUVELLE CONFIGURATION</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">Largeur (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">Profil</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">Diamètre (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">Déplacement (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">Largeur (in)</label>
                                          <input id="twoWidth" class="ms" value="7.5" oninput="twoTireFunction()" type="number" min="-99" max="99">
                                      </div>                          
                                </div>
                         </form>
                      <p class="psmall">Les valeurs ci-dessus ne sont que des exemples ! Modifiez les valeurs pour voir le réglage.</p>
                    </div>
     
      
                    <div class="results_header">   
                     <h5 class="hclass">RÉSULTATS</h5>
                      <p> sont automatiquement appliqués ci-dessous  </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> Le schéma est à afficher uniquement pour vous aider à visualiser le réglage de vos pneus et roues pour votre nouvelle configuration. </p>
                          <br>
                          <p> Largeur du pneu : la largeur de votre pneu en millimètres. <strong> 195 </strong> / 55ZR15 </p>
                          <p> Profil du pneu : le rapport entre la largeur de la paroi du pneu et la largeur du pneu. 195 / <strong> 55 </strong> ZR15 </p>
                          <p> Diamètre des pneus - Le diamètre des roues en pouces. 195 / 55ZR <strong> 15 </strong> </p>
                          <p> Decalage : la distance entre le centre de la roue et la face de montage en mm. ET <strong> 20 </strong> </p>
                          <p> Largeur de la jante : la largeur des jantes en pouces. <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">Pouce</th>
                        <th scope="col" class="tb_orgwheel">Roue d'origine</th>
                        <th scope="col" class="tb_newwheel">Nouvelle roue</th>
                        <th scope="col">Différence</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <th scope="row">Diamètre</th>
                        <td id="diameterOne"></td>
                        <td id="diameterTwo"></td>
                        <td id="diameterPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Circonférence</th>
                        <td id="circumferenceOne"></td>
                        <td id="circumferenceTwo"></td>
                        <td id="circumferencePercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Paroi latérale</th>
                        <td id="sidewallOne"></td>
                        <td id="sidewallTwo"></td>
                        <td id="sidewallPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Largeur</th>
                        <td id="widthOne"></td>
                        <td id="widthTwo"></td>
                        <td id="widthPercentage">%</td>
                    </tr>
                    <tr>
                        <th scope="row">Tours de roue</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>Qual è la pressione degli pneumatici consigliata per Cerchi BMW Style 292?</h3>
<p>La pressione dei pneumatici per Cerchi BMW Style 292 dipenderà dal tuo modello BMW. La maggior parte dei modelli BMW, come il Serie BMW Z4 e il , hanno una pressione dei pneumatici consigliata di 32 PSI (2,2 Bar). Tuttavia, dovresti sempre ricontrollare questo per il tuo modello BMW specifico. Puoi scoprire la pressione dei pneumatici consigliata per la tua BMW, controllando l&#8217;adesivo sul bordo interno della portiera del conducente o, controlla il manuale del proprietario se hai ancora lo stesso tipo di pneumatici forniti con il veicolo.</p>
<p>The post <a href="https://www.bmwstylerims.com/it/cerchi-bmw-style-292/">Cerchi BMW Style 292</a> appeared first on <a href="https://www.bmwstylerims.com/it">BmwStyleRims.com</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
