Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
ещё усилие нажатия на бумагу имеет значение
А есть ли у этой красоты хоть какое-нибудь практическое применение?
this.O=[(this.Q[0]+this.R[0])/2,(this.Q[1]+this.R[1])/2];
var PO=Math.sqrt(Math.pow(this.O[0]-this.P[0],2)+Math.pow(this.O[1]-this.P[1],2));
var rb=0.6*a;
var OT=Math.sqrt(rb*rb-PO*PO);
var vertical=[this.S[1]-this.P[1],-this.S[0]+this.P[0]]
var verticalLength=Math.sqrt(vertical[0]*vertical[0]+vertical[1]*vertical[1]);
var eVertical=[vertical[0]/verticalLength,vertical[1]/verticalLength];
this.T=[this.O[0]+eVertical[0]*OT,this.O[1]+eVertical[1]*OT];
this.T=[this.O[0]+eVertical[0]*OT,this.O[1]+eVertical[1]*O;


Признаться, я потратил много сил на оптимизацию, чтобы ничего не тормозило на слабых компах, но, скажу честно, особых успехов не достиг.

Подделываем вашу подпись при помощи шарнирного механизма. Теорема Кемпе