HISE Logo Forum
    • Categories
    • Register
    • Login

    Setting the alpha of a color individually?

    Scheduled Pinned Locked Moved General Questions
    16 Posts 2 Posters 912 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 @CatABC
      last edited by

      @CatABC The alpha value of what?

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

      CatABCC 1 Reply Last reply Reply Quote 0
      • CatABCC
        CatABC @d.healey
        last edited by

        @d-healey The whole thing is this, I set different keyboard colors for different samplemaps, and after I used the button to change the keyboard key color, when I switched to another samplemap, the keyboard color of the previous samplemap was not overwritten, so I wanted to set the alpha value separately to avoid the problem of color not changing.

        inline function onbtnEnsC1Control(component, value)
        {	
        	if (value){
        		eventId = Synth.playNote(24, 100);
        		Engine.setKeyColour(24, 0x800000FF);
        	}		
        	else
        		Engine.setKeyColour(24, 0x500000FF);
        };
        Content.getComponent("btnEnsC1").setControlCallback(onbtnEnsC1Control);
        

        samplemap1
        73b05393-843c-4497-b812-7e4d218f4291-image.png
        samplemap2
        2bf101f6-f14a-48c5-9f49-9de18375b503-image.png

        In the above two pictures, C0 and G0 of samplemap2 should have no color, and C#3-G#3 should be blue, but they are not changed.

        	if (value == 1){
                local Ens = [24, 25, 26, 27, 28, 29, 31, 36, 37, 38, 39, 40, 43, 44, 45, 46, 47, 86];			   	
        		for (i = 0; i < Ens.length; i++)
        			{
        				Engine.setKeyColour(Ens[i], 0x500000FF);
        			};
        		local solo = [48, 50, 52, 55, 60, 61, 62, 63, 65, 66, 67, 68, 84];			   	
        		for (i = 0; i < solo.length; i++)
        			{
        				Engine.setKeyColour(solo[i], 0x5000FF00);
        			};
                }
        	if (value == 2){
                local Ens2 = [36, 38, 40, 43, 48, 50, 52, 55, 60, 62, 64, 67, 84];		   	
                		for (i = 0; i < Ens2.length; i++)
                			{
                				Engine.setKeyColour(Ens2[i], Colours.withAlpha(Colours.blue, 0.3));
                			};
                 }
        

        //I am a new student at HISE._
        //Windows11 & MacOS Ventura 13.6.7_

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

          @CatABC

          You need to "reset" your keyboard before assigning the new colours. You can do that like this

          for (i = 0; i < 128; i++)
              Engine.setKeyColour(i, 0x0);
          

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

          CatABCC 1 Reply Last reply Reply Quote 0
          • CatABCC
            CatABC @d.healey
            last edited by

            @d-healey
            This doesn't seem to work, am I doing something wrong?

            if (value == 2){
                for (i = 0; i < 128; i++)
                      {
                		Engine.setKeyColour(i, 0x0);
                	   }
            
                 local Ens2 = [36, 38, 40, 43, 48, 50, 52, 55, 60, 62, 64, 67, 84];		   	
                       for (i = 0; i < Ens2.length; i++)
                    	{
                    		Engine.setKeyColour(Ens2[i], Colours.withAlpha(Colours.blue, 0.3));
                    	};
                     }
            

            5096f792-7d50-440a-b3d2-8897f2fb614a-image.png

            //I am a new student at HISE._
            //Windows11 & MacOS Ventura 13.6.7_

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

              @CatABC You don't need to put the reset within the if statement, it can go before all of your keyboard colouring code.

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

              CatABCC 1 Reply Last reply Reply Quote 0
              • CatABCC
                CatABC @d.healey
                last edited by CatABC

                @d-healey Unfortunately, he still has the same result. My guess is that because I used a button to trigger the color change, when the button value does not change, it will continue to keep the button callback result.
                What should I write in the else of the button to make it return to the color before it changed?

                //I am a new student at HISE._
                //Windows11 & MacOS Ventura 13.6.7_

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

                  @CatABC can you make a minimal snippet that shows the problem?

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

                  CatABCC 2 Replies Last reply Reply Quote 0
                  • CatABCC
                    CatABC @d.healey
                    last edited by

                    @d-healey ChangeColor.zip
                    The code snippet didn't seem to show the problem, so I uploaded a project, and along the way I found the source of the problem. When the button is in a Panel, it causes the problem.

                    //I am a new student at HISE._
                    //Windows11 & MacOS Ventura 13.6.7_

                    1 Reply Last reply Reply Quote 0
                    • CatABCC
                      CatABC @d.healey
                      last edited by

                      @d-healey There is no problem switching with Combobox, but there is a problem with switching with preset browsers

                      //I am a new student at HISE._
                      //Windows11 & MacOS Ventura 13.6.7_

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

                        @CatABC This is what I see in your project, looks like it's working?

                        Peek 2025-01-14 15-09.gif

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

                        CatABCC 1 Reply Last reply Reply Quote 0
                        • CatABCC
                          CatABC @d.healey
                          last edited by

                          @d-healey Oh, sorry, I forgot to save the latest data when I was testing the code snippet,
                          ChangeColor2.zip
                          1.gif

                          //I am a new student at HISE._
                          //Windows11 & MacOS Ventura 13.6.7_

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

                            @CatABC Turn off saveInPreset for your button.

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

                            CatABCC 1 Reply Last reply Reply Quote 0
                            • CatABCC
                              CatABC @d.healey
                              last edited by

                              @d-healey Ahaha,god,It's so simple
                              Feeling mine so stupid。,Thanks very much David, you solved my problem again.😙 😙 😙

                              //I am a new student at HISE._
                              //Windows11 & MacOS Ventura 13.6.7_

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

                              30

                              Online

                              1.8k

                              Users

                              12.1k

                              Topics

                              105.5k

                              Posts