HISE Logo Forum
    • Categories
    • Register
    • Login

    How can I improve the tracking when using LAF on a slider?

    Scheduled Pinned Locked Moved General Questions
    11 Posts 3 Posters 137 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • d.healeyD
      d.healey @VirtualVirgin
      last edited by d.healey

      @VirtualVirgin I'm not 100% sure what you're asking but I think adjusting the mouse sensitivity of the knob might be the answer.

      4da893ba-ddb1-488f-8b60-f4ddfdbcf6c4-image.png

      Libre Wave - Freedom respecting instruments and effects
      My Patreon - HISE tutorials
      YouTube Channel - Public HISE tutorials

      VirtualVirginV 1 Reply Last reply Reply Quote 0
      • VirtualVirginV
        VirtualVirgin @d.healey
        last edited by VirtualVirgin

        @d-healey

        I've never gotten the scaleFactor or mouseSensitivity to do anything.

        The tracking I am talking about here is the difference in space between the actual slider width and the LAF represented width. The distance traveled from min to max value on the LAF graphic is less than that of the actual slider, given that the knob has to have a margin to fit inside the slider graphic area (otherwise it will get cut off at min and max):

        Screenshot 2024-12-10 at 6.57.41 PM.png

        So that means the mouse is traveling a larger span than the knob is, so at min value the mouse cursor has to be all the way to the left of the knob, and at the max all the way to the right.

        It's actually not a big deal when the sliders are small, but it is one of those details that will bug me.

        You can listen to my orchestral mockups here:
        https://www.virtualvirgin.net/

        d.healeyD 1 Reply Last reply Reply Quote 0
        • d.healeyD
          d.healey @VirtualVirgin
          last edited by

          @VirtualVirgin said in How can I improve the tracking when using LAF on a slider?:

          actual slider width and the LAF represented width

          Can you share your LAF?

          Libre Wave - Freedom respecting instruments and effects
          My Patreon - HISE tutorials
          YouTube Channel - Public HISE tutorials

          VirtualVirginV 1 Reply Last reply Reply Quote 0
          • VirtualVirginV
            VirtualVirgin @d.healey
            last edited by

            @d-healey said in How can I improve the tracking when using LAF on a slider?:

            @VirtualVirgin said in How can I improve the tracking when using LAF on a slider?:

            actual slider width and the LAF represented width

            Can you share your LAF?

            // Local LAF for horizontal sliders
            const var horizontalSlider = Content.createLocalLookAndFeel();
            	
            // LAF horizontal slider
            horizontalSlider.registerFunction("drawLinearSlider", function(g, obj)
            {
            	var a = obj.area;
            	var thickness = a[3] * 2/20;
            	var knobSize = a[3] * 5/10;
            		
            	g.setColour(obj.bgColour);
            	g.fillRoundedRectangle([knobSize/2, a[3]/2 - thickness/2, a[2]-knobSize, thickness], 2);
            		
            	g.setColour(obj.itemColour2);
            	g.fillRoundedRectangle([knobSize/2, a[3]/2 - thickness/2, (a[2]-knobSize) * obj.valueNormalized, thickness], 2);
            		
            	g.setColour(obj.itemColour1);
            	g.fillEllipse(
            			[(a[2] - knobSize) * obj.valueNormalized, 
            			a[3] /2 - knobSize/2, 
            			knobSize, 
            			knobSize]);
            }); 
            

            You can listen to my orchestral mockups here:
            https://www.virtualvirgin.net/

            d.healeyD ustkU 2 Replies Last reply Reply Quote 0
            • d.healeyD
              d.healey @VirtualVirgin
              last edited by

              @VirtualVirgin Looks like the circle goes all the way to the edge, so I don't see anything wrong with it.

              65c08e56-271a-4e6a-9f00-9c9e1a0edc1d-image.png

              a06e5929-a0ec-4359-9206-79656f08442a-image.png

              Libre Wave - Freedom respecting instruments and effects
              My Patreon - HISE tutorials
              YouTube Channel - Public HISE tutorials

              ustkU 2 Replies Last reply Reply Quote 0
              • ustkU
                ustk @d.healey
                last edited by

                @d-healey it's wrong in the way that the potential movement is restricted to width - ellipse's radius which create that mouse tracking issue.
                So yes, mouse sensitivity is the way to go
                Another option would be to draw in a panel and use a shorter slider on the top, but that would be two components...

                Can't help pressing F5 in the forum...

                1 Reply Last reply Reply Quote 0
                • ustkU
                  ustk @d.healey
                  last edited by

                  Forgot to mention that mouseSensitivity is working only for rotary sliders, so just change that and the LAF function and it'll work

                  Can't help pressing F5 in the forum...

                  d.healeyD VirtualVirginV 2 Replies Last reply Reply Quote 2
                  • d.healeyD
                    d.healey @ustk
                    last edited by

                    @ustk said in How can I improve the tracking when using LAF on a slider?:

                    Forgot to mention that mouseSensitivity is working only for rotary sliders

                    Aha that's the secret sauce!

                    Libre Wave - Freedom respecting instruments and effects
                    My Patreon - HISE tutorials
                    YouTube Channel - Public HISE tutorials

                    1 Reply Last reply Reply Quote 0
                    • ustkU
                      ustk @VirtualVirgin
                      last edited by ustk

                      @VirtualVirgin @d-healey Another secret, the mouse sensitivity is calculated on a basis of 250px, so a little trick allows us to automatically predict the sensitivity based on the potential mouvement we need:

                      HiseSnippet 2389.3ocyY07aaibEensoyJkrKR.1BzBTDLPGBn201RhxwIowNwN1VaD1XG0HGuYQPfwXxQRSLEGVxQ1VYQNVf9+Qu2y6+IEn21yEEnG5odnsu2PRQJKE+01lFGDINy6qeyady68FJ9IJtuK2c+HeQP.WQHFS2LT5vihjgDih6NHfSLtgYqA9ptazkI7IM1jX7qLasyVuZ+s.oC8YdaxTrcYG3wiHOYP.KJh6RLLl9aP1MJLCQ+2e+wOg4w7c3YSQH6IEN7mI5ITYy1bsuU34Um4x2UzKG2KsVCGo+FROYe.ZSaVgDvbNj0guCCYaJSxSYQcIFekYk6tLmeuZsccY0p4t7xK+f6+fkdPUV6JKwNn5xOXI6ktm88uWahwra4JTxvVJlB.uwLOQ5NnUW4w9wFXOQj.VV3fpjVfkimttzyEWh3rjM5J7bG5yh.O3L47fSG6A+RysEthgym4Iuol.MSh7NPioFEdSOB7plGdUxAuI.IibPZlXHcKyVNgh.UFEDOW2rgOro1lA6S4gRLujorm0bCIvguZwdrC40CgACkvZ4JUlmBeL2CKVD1qhTziXgzu0WdPU5pzTA6vUaH6EH8gAVkzTKARLp.1mo.1iKPsyTfZn.vekKSelzg4Qe150oskgztxPw6.wfoh7Dt7vnb5MiXKMsblvIjCaJZc8Lo7v08cqy4dVfUzKnEi3pwHdZ0kvr8kg4ZWTl0KUXQN1Br3oYdwPdGQDrGVuuuiRH8sJ4FxN9EREKbPLKklm1NkXm4oxCd6bE+ghEPeDCbJv3EYfC4gwSo5JbNzGBp.RrWW6MzuhZW1tRB0CgUQKw63YDua4pHwBEKzAWcwGwsPkdPm3Av5An0FxK7BYeLg0K3NJleGOt0qS0WY640JrrMcgLHDOq8aVHks4yn8l4o1yMYCKT7dwCs+4YaqQL9bvpEU+QLu97cjg8XdvrtWVLUMCSa44IBh3VfDEds1X.BNWygbqc9Z.meUfTxbU4G8FvnuetGRSNF0S1Oh2h6GIThiDpATQD8.FjtfJ8gfBHe.j4hJaCC45SZ12sRvInjQR5wbJy8s8giYvBGja.UwNT32gJ7URJywA7zHMNsTfDOuIfv2PFD+gZrm7HdOXxRTqt7PdRbM0i62Q0EVO1UnVUAiQ6wB6H7oblSWZDvybykc5zpzoWAPPd0EqPKSs.nF+PL2P5juS3p5ZM2B1.g4lK+A2Krdr+f5o1kRO0lndJld9D726.trm6aoOhV78EomlT61SjFlZKT54wCmHYrZb3YInke+dGvCmmpC2FxHTwYzxXle3xX4qx5DmoMGiR+F9B0yC39enZujjzyXeLInBdRoK38EIE7hynQDPcsqYp2fIZ.muUExEVX6SKbBHtPBWaBV9kMv1ovZ1IqEX8EvCUBz0YrI+Hnio3J3EL2jGcnRFnWrIk6HFe14tbOIyftqMHav2u1wXXErCY7Oggc4hNcU3HKjyPVmMEgb8lN1S3SGVFgb5HWTk+tUK9m+iA+MzUdgglcNns1ayCM2TnkRc+094Aue5ce4e5a9o+xkBd0x64dTN3AXcnm6eXj2yc6q.z9wa+6+q+1e7e8Xx3MsAsKJc66wTi1CI1ocBAzD4abCaNC09f7AY+WqwxKJDukYSgxo6jw3TS.iP7++KvXR63et4VsaC6GY.bFy5u5iPu2yFa+hIQXfMQieijgz5up5HfXm98RtWEDJMMrTfIhiJaBW8QOKDsQRZN23OXlkUNHjG.sjsqroGafUDqWfG+EvRYd5AdRmC0cGLVp7fXj9DjCKmtLeetWzUIi+rWXmW0yduCZ4RA8ErMSEJfCelnC.Z.xguQB5PevTXN23wUvwX3CblxUO3eC+kPr5PGFPrZJwrZFjc3pikgGp20RdFN6GuEEocx629D.9vsDzGkulIT9cwJj087jGiIRDIQ2vdmdtlRuAAck9BGbpXNRg958vlbRwOb20cYBO73Pq9QPIN2m62BXVegYHbzXGoK7zr008UMnICy1bKSrHIDCCMw6LLVdDrlENgd33qJOBCndSuTcrqCfYOc9P3J0PLHPWeq1D.fV3yMcvvx8U3mjQfzuPCIH1Xw7rLITLpRNGXLC5673mjVaL4XQ5Sv2MfVyOIINpIKDLAbil3yeoi.0rsveu3Rtl3dGYa1ICGCMao8eWyLdpQXjjqLLgjkHaWnEStBmKm+4Kxuzp9olCp5mXNH6O0bP1++2AccyHe9I66iyLh24lf2IjuXF0I4XhkFU24d9dl7nRWqBGAUhmBgQAyM7.s2vMcobyLbsOjZWo0VN2p4P25zIt0oRbqyXtPUxVP4BW3JzZtQ6SNEWXz44xzGPU4qLRHq22UHqKzfg.eGuWR1TDE.UDeRenAf3tCxuSOUtc5YuH6zW2LShQXtkhGfEYGN9P9wwajohStr15FY1x9RarIEukeoSNy3faX1HZOjpCzyZhogxVWk6p7QojdOlSnb+j7H3B5yzy.wW95CHEL2FGSqN9s25IbE663LppFSP6qpf0tpBtzUUv6dUEb4qpf26pJ38OeAwWW958UxdwMZAA1M2JNEfwV9XZBciyDdR1g3Viw36gy.4uRRKXLUagNuB9ULR90Y42JOZltE6l9FIHS8Km1TwgzdP2szUD9J5N68HZjJruihNpTXKw5eqjcd9laYMJM7k3g+qbYJ9dMDLOQDW+RuR5CGegXPqfNQT70bUrvQRgaZi8VMi+tkld.zkdgeP+VCeehJeAOhqNs1BDAbOncw7JLDYzZL4SZCWqgHQGelWhPYqb75xnaKkW8uCDL2inIHUOq0ondGpK7Th8vWLnE5AEqV4gTwJ1vGe8WCD0TiIyfs66Pi9MZ4ds3MH0XxEvO..i++LvMKh1FyzM1B.M7Fih15HiVQAL+UZ6IYp4AFxi3IYlsarYCJ+HHzXjcJHCkqG+ovl5VHMqgOcGJeL28K0a8hnraYojTXioef1D7jepMMRRzOPM+u.mU7uaQ9o.fOOU6cwBmiYyVoAHCqCLQOTyDODXugULrbk8gCazixoz2+vhDxXmnt8G9D0I87xNSsmg4JOFlgdT7sqVsDT2pDEt.jzEBcWszK2s9B2uzieTwhqjU35QEozrgzzxnqVpBJbZUzDckVlLgZVUxX5fpx8WiMWszPEWhlWsaxay56oxMU4OR3v9B.jUJm28PH+G.1whlvB
                      

                      Can't help pressing F5 in the forum...

                      1 Reply Last reply Reply Quote 1
                      • VirtualVirginV
                        VirtualVirgin @ustk
                        last edited by

                        @ustk said in How can I improve the tracking when using LAF on a slider?:

                        Forgot to mention that mouseSensitivity is working only for rotary sliders, so just change that and the LAF function and it'll work

                        Thanks :)
                        I changed the LAF and the component over to rotary/knob and now the mouseSensitivity does work.
                        Setting it to 0.35 seems to do the job.

                        You can listen to my orchestral mockups here:
                        https://www.virtualvirgin.net/

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        8

                        Online

                        1.7k

                        Users

                        11.8k

                        Topics

                        103.1k

                        Posts