JSFiddle - React, Tailwind, and code Playground

HTML

<!DOCTYPE HTML>
<html>
<head>
<title>Editor</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v4.3.1.min.js"></script>
</head>

<body>
<div id="canvas"></div>
    </body>
</html>

JavaScript

/* Canvas */

var cns   = new Kinetic.Stage({
    container: 'canvas',
    width: 600,
    height: 450
}); 
var layer = new Kinetic.Layer();

/* Settings */

var car = {
    x: 100,
    y: 200,
    direction: -1.46,
    speed: 0,
    speedStep: .5,
    speedLimit: 7,
    degrees: 0.1
}

var po = {
    x: 500,
    y: 400
}

/* Create car */

var vishe = new Kinetic.Circle({
    id:'car',
    x: car.x,
    y: car.y,
    radius: 50,
    opacity: 0.3,
    fill: 'red',
});


layer.add(vishe);

var point = new Kinetic.Circle({
    id:'car',
    x: po.x,
    y: po.y,
    radius: 3,
    opacity: 1,
    fill: 'red',
});

var pointR = new Kinetic.Circle({
    x: car.x - 30,
    y: car.y,
    radius: 3,
    opacity: 1,
    fill: 'red',
    //offset:[30,0]
});

layer.add(point);
layer.add(pointR);

function ToD(x,y,x2,y2){
    return Math.sqrt(Math.pow(x-x2,2) + Math.pow(y-y2,2))
}

/* All Function */
function moveCar(){
    var degre = direct = {}, d = ToD(car.x,car.y,po.x,po.y);
    
    var dc = car.speed * 12;
    
    // speed
	if(d < dc) {
		car.speed += (car.speed < 0) ? car.speedStep : (car.speed > 0) ? -car.speedStep : 0;
	}
    else car.speed += car.speed < car.speedLimit ? car.speedStep : 0;
    
    if(d < 2) return;
    
    degre['p'] = Math.atan2(po.y - car.y,po.x - car.x); 
    degre['c'] = car.direction - degre.p; 
    
    // выравниваем на -Pi +Pi
    if(degre['c']>Math.PI)degre['c']-=2*Math.PI;
    if(degre['c']<-Math.PI)degre['c']+=2*Math.PI;
    
    if(degre.c>car.degrees){
        degre['g']=+car.degrees
    } else if(degre.c<-car.degrees) {
        degre['g']=-car.degrees
    } else {
        degre['g']=car.direction -degre.p;
    }
    degre['d'] = car.direction - degre.g ; 
    
    var speedX = car.speed * Math.cos(degre.d);
	var speedY = car.speed * Math.sin(degre.d);
    
    
    car.x += speedX;
    car.y += speedY; 
    

    car.direction = degre.d;
    
    vishe.setPosition(car.x,car.y);
    
    pointR.setAttrs({
        x: car.x + 30 *...