Fahrenheit.value .................. 1
Celsius.value ... 0.03777777777777778
FLabel.textString ............... 100
CLabel.textString ................ 38
Disable Value Tracking
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var f = this.get('Fahrenheit'),
    c = this.get('Celsius'),
    ft = this.get('FLabel'),
    ct = this.get('CLabel');
    always: {
        solver: this.cassowary;
        priority: "strong"
        (f.getValue() * 100) - 32 == (c.getValue() * 100) * 18 &&
        f.getValue() >= 0 && c.getValue() >= 0 &&
        f.getValue() <= 1 && c.getValue() <= 1
    } 
    always: {
        solver: this.deltablue;
        ft.getTextString() == Math.round(f.getValue() * 100) + "" &&
        f.getValue() == parseFloat(ft.getTextString()) / 100
    }
    always: {
        solver: this.deltablue;
        ct.getTextString() == Math.round(c.getValue() * 1000) + "" &&
        c.getValue() == parseFloat(ct.getTextString()) / 1000
    }
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
TemperatureScale
Layouting
Circuit
Gray Value
+
100
38
0 100
Celsius:
Fahrenheit:
This is a playground. Look at the tabs to change the example, enable and disable value tracking to see the values change as you interact with the examples, hover over the code to see features such as number scrubbing, select-boxes for constraints and priorities, and checkboxes to enable/disable constraints. The code pane is automatically re-evaluated when you change it and accept the code with Ctrl+S