Naja, für die Zahlenräume 0 bis 1 hätte ich denke ich was. Es funktioniert aber eben nur damit und ist keine engine Funktion.
Denn wenn 0 bis 1 gebraucht werden würde müsste man es mit if machen
var a = 0 ;//variable die hochgezählt wird
var b = 1;//variable die das ergebnis bekommt
while(1)
{
a += 0.6;
if( fraction(a) < 5 ){b = fraction(a)}//Falls Nachkommastelle unter 5 ist bekommt b einfach den wert
if( fraction(a) >= 5 ){b = 1 - fraction(a)}//andernfalls wird 1 von der nachkommastelle abgezogen
}
Es würde das Ergebnis deines Beispieles bringen (wenn ich grad keinen Knick in der Logik habe). Aber passt eben nur für 0 bis 1
Sorry weiß grade nit mehr.