Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 20e1042d authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "[MM] Nudge spring only if there was a jump (discontinuity)" into main

parents 9a1b9bbb e1c1d5c8
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -435,6 +435,7 @@ internal abstract class Computations : CurrentFrameInput, LastFrameState, Static
                    var guaranteeState = lastGuaranteeState
                    var springState = lastSpringState
                    var springParameters = lastAnimation.springParameters
                    var hasJumped = false

                    var segmentIndex = sourceIndex
                    while (segmentIndex != targetIndex) {
@@ -504,6 +505,7 @@ internal abstract class Computations : CurrentFrameInput, LastFrameState, Static
                                    "  after: $afterBreakpoint (mapping: $mappingAfter)",
                            )
                        }
                        hasJumped = hasJumped || delta != 0f

                        if (deltaIsFinite) {
                            springState = springState.nudge(displacementDelta = -delta)
@@ -528,7 +530,7 @@ internal abstract class Computations : CurrentFrameInput, LastFrameState, Static
                            }
                    }

                    if (springState.displacement != 0f) {
                    if (hasJumped) {
                        springState = springState.nudge(velocityDelta = directMappedVelocity)
                    }

+16 −26
Original line number Diff line number Diff line
@@ -34,8 +34,7 @@
    496,
    512,
    528,
    544,
    560
    544
  ],
  "features": [
    {
@@ -76,7 +75,6 @@
        0,
        0,
        0,
        0,
        0
      ]
    },
@@ -118,7 +116,6 @@
        "Min",
        "Min",
        "Min",
        "Min",
        "Min"
      ]
    },
@@ -145,22 +142,21 @@
        17.074236,
        14.475905,
        12.440355,
        6.0429263,
        0.2618156,
        -0.13511403,
        -0.30368266,
        -0.34483594,
        -0.32143384,
        -0.27079266,
        -0.21369539,
        -0.16064009,
        -0.116027184,
        -0.080867365,
        -0.054464284,
        -0.035410874,
        -0.022142237,
        -0.013213158,
        -0.0074128704,
        6.552413,
        0.9461464,
        0.54626375,
        0.29212147,
        0.13740596,
        0.048214816,
        0.0006277391,
        -0.021660766,
        -0.02938723,
        -0.029362231,
        -0.02572238,
        -0.020845085,
        -0.015992891,
        -0.01175198,
        -0.008320414,
        0
      ]
    },
@@ -202,7 +198,6 @@
        0,
        0,
        0,
        0,
        0
      ]
    },
@@ -346,10 +341,6 @@
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
@@ -394,7 +385,6 @@
        false,
        false,
        false,
        false,
        true
      ]
    }
+19 −19
Original line number Diff line number Diff line
@@ -106,25 +106,25 @@
        14.22027,
        20.881996,
        27.33559,
        33.145477,
        36.971085,
        39.13093,
        40.246414,
        40.736607,
        40.874382,
        40.830643,
        40.70759,
        40.56272,
        40.42557,
        40.30897,
        40.21637,
        40.14641,
        40.09567,
        40.060165,
        40.03616,
        40.020485,
        40.01064,
        40.00473,
        32.265293,
        34.588463,
        36.34147,
        37.611744,
        38.499744,
        39.099594,
        39.49083,
        39.73635,
        39.883526,
        39.96661,
        40.009514,
        40.028366,
        40.033657,
        40.03197,
        40.027233,
        40.021656,
        40.016376,
        40.01189,
        40.008324,
        40
      ]
    },
+372 −0
Original line number Diff line number Diff line
{
  "frame_ids": [
    0,
    16,
    32,
    48,
    64,
    80,
    96,
    112,
    128,
    144,
    160,
    176,
    192,
    208,
    224,
    240,
    256,
    272,
    288,
    304,
    320,
    336,
    352,
    368,
    384,
    400,
    416,
    432,
    448,
    464,
    480,
    496,
    512
  ],
  "features": [
    {
      "name": "input",
      "type": "float",
      "data_points": [
        0,
        3,
        6,
        9,
        12,
        15,
        18,
        21,
        24,
        27,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30
      ]
    },
    {
      "name": "gestureDirection",
      "type": "string",
      "data_points": [
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max"
      ]
    },
    {
      "name": "output",
      "type": "float",
      "data_points": [
        0,
        3,
        6,
        9,
        21.715681,
        38.426617,
        54.4196,
        69.30995,
        76.55414,
        77.88977,
        76.3026,
        73.54735,
        70.58736,
        67.89756,
        65.666245,
        63.924633,
        62.626797,
        61.696457,
        61.052605,
        60.62202,
        60.344193,
        60.171986,
        60.07036,
        60.01423,
        59.986275,
        59.974922,
        59.97272,
        59.975067,
        59.97924,
        59.983753,
        59.98787,
        59.991287,
        60
      ]
    },
    {
      "name": "outputTarget",
      "type": "float",
      "data_points": [
        0,
        3,
        6,
        9,
        25,
        40,
        55,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60,
        60
      ]
    },
    {
      "name": "outputSpring",
      "type": "springParameters",
      "data_points": [
        {
          "stiffness": 100000,
          "dampingRatio": 1
        },
        {
          "stiffness": 100000,
          "dampingRatio": 1
        },
        {
          "stiffness": 100000,
          "dampingRatio": 1
        },
        {
          "stiffness": 100000,
          "dampingRatio": 1
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        }
      ]
    },
    {
      "name": "isStable",
      "type": "boolean",
      "data_points": [
        true,
        true,
        true,
        true,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        true
      ]
    }
  ]
}
 No newline at end of file
+262 −0
Original line number Diff line number Diff line
{
  "frame_ids": [
    0,
    16,
    32,
    48,
    64,
    80,
    96,
    112,
    128,
    144,
    160,
    176,
    192,
    208,
    224,
    240,
    256,
    272,
    288,
    304,
    320,
    336
  ],
  "features": [
    {
      "name": "input",
      "type": "float",
      "data_points": [
        0,
        3,
        6,
        9,
        12,
        15,
        18,
        21,
        24,
        27,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30,
        30
      ]
    },
    {
      "name": "gestureDirection",
      "type": "string",
      "data_points": [
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max",
        "Max"
      ]
    },
    {
      "name": "output",
      "type": "float",
      "data_points": [
        0,
        3,
        6,
        9,
        21.715681,
        38.426617,
        54.4196,
        64.95479,
        65.21017,
        65.3034,
        65.30942,
        65.274,
        65.22361,
        65.172455,
        65.12727,
        65.09046,
        65.062096,
        65.04118,
        65.02634,
        65.01615,
        65.0094,
        65
      ]
    },
    {
      "name": "outputTarget",
      "type": "float",
      "data_points": [
        0,
        3,
        6,
        9,
        25,
        40,
        55,
        65,
        65,
        65,
        65,
        65,
        65,
        65,
        65,
        65,
        65,
        65,
        65,
        65,
        65,
        65
      ]
    },
    {
      "name": "outputSpring",
      "type": "springParameters",
      "data_points": [
        {
          "stiffness": 100000,
          "dampingRatio": 1
        },
        {
          "stiffness": 100000,
          "dampingRatio": 1
        },
        {
          "stiffness": 100000,
          "dampingRatio": 1
        },
        {
          "stiffness": 100000,
          "dampingRatio": 1
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        },
        {
          "stiffness": 700,
          "dampingRatio": 0.9
        }
      ]
    },
    {
      "name": "isStable",
      "type": "boolean",
      "data_points": [
        true,
        true,
        true,
        true,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        false,
        true
      ]
    }
  ]
}
 No newline at end of file
Loading