Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
hyperPad

hyperPad Forum

  1. Home
  2. Help and Support
  3. Store and Modify a Colour with Code: Possible? How?

Store and Modify a Colour with Code: Possible? How?

Scheduled Pinned Locked Moved Help and Support
31 Posts 5 Posters 6.3k Views 3 Watching
  • 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.
  • Aidan_FireA Aidan_Fire

    @Thecheater887 Tried what? What went wrong?

    T Offline
    T Offline
    Thecheater887
    wrote on last edited by
    #6

    @Aidan-Oxley Forming and using a color.

    I start with “#” stored in a box container.

    I then generate 6 random numbers and append them to the box container, so it should read like “#1F390C” thus far. I then append FF for 100% opacity.

    Output that to a change color, and my logic all the sudden doesn’t run by it, when with a standard-typed #FFFFFFFF or anything else functions normally.

    Michael KhalfinG Jack de WildeJ 2 Replies Last reply
    1
    • T Thecheater887

      @Aidan-Oxley Forming and using a color.

      I start with “#” stored in a box container.

      I then generate 6 random numbers and append them to the box container, so it should read like “#1F390C” thus far. I then append FF for 100% opacity.

      Output that to a change color, and my logic all the sudden doesn’t run by it, when with a standard-typed #FFFFFFFF or anything else functions normally.

      Michael KhalfinG Offline
      Michael KhalfinG Offline
      Michael Khalfin
      wrote on last edited by
      #7

      @Thecheater887 Can you please provide a link?

      Otherwise, try debugging. Make a label, and after each behavior make sure the hex code is proper. Also make sure each behavior is being triggered.

      D 1 Reply Last reply
      0
      • Michael KhalfinG Michael Khalfin

        @Thecheater887 Can you please provide a link?

        Otherwise, try debugging. Make a label, and after each behavior make sure the hex code is proper. Also make sure each behavior is being triggered.

        D Offline
        D Offline
        Deeeds
        wrote on last edited by
        #8

        @GameCRAZY

        Read this sentence more carefully:

        Output that to a change color, and my logic all the sudden doesn’t run by it, when with a standard-typed #FFFFFFFF or anything else functions normally.

        He's already debugged it and isolated the problem to the conversion of a Box Container's storage to a Set Colour's capacity to receive what's stored. This is, most likely, due to mismatched data types. The Box Container has probably stored a String (almost certainly) from his modifications (appends are probably defaulting to being done as strings) whilst the Set Colour is imagining it's going to receive a hexadecimal data type.

        For some reason, Box Containers seem to be storing a hexadecimal when manually entering #FFFFFFFF. That's why this weird. This has been partially considered. But not wholly. Features that could/should have been there include dynamic RGB/HSL entry/modifications possible in code, too, and an easy way to alter opacity levels dynamically, too, in isolation from all other aspects of a colour. Hue shifting would be enormously assistive, in its own right, for all manner of effects and level articulation.

        Michael KhalfinG 1 Reply Last reply
        0
        • Aidan_FireA Offline
          Aidan_FireA Offline
          Aidan_Fire
          wrote on last edited by
          #9

          Look through Jack8680’s Hub projects, he has a working colour manipulator.

          D 1 Reply Last reply
          0
          • Aidan_FireA Aidan_Fire

            Look through Jack8680’s Hub projects, he has a working colour manipulator.

            D Offline
            D Offline
            Deeeds
            wrote on last edited by Deeeds
            #10

            @Aidan-Oxley Which doesn't address the problem.

            There is no simple, elegant and/or nicely abstracted way to store, edit and utilise dynamic colours.

            In a 2D game engine...

            ...without Sprite Animations, Sprite Sequences, Bitmap fonts or other forms of frame based animation.

            Aidan_FireA 1 Reply Last reply
            0
            • D Deeeds

              @Aidan-Oxley Which doesn't address the problem.

              There is no simple, elegant and/or nicely abstracted way to store, edit and utilise dynamic colours.

              In a 2D game engine...

              ...without Sprite Animations, Sprite Sequences, Bitmap fonts or other forms of frame based animation.

              Aidan_FireA Offline
              Aidan_FireA Offline
              Aidan_Fire
              wrote on last edited by Aidan_Fire
              #11

              @Deeeds Jack’s project converts a bunch of percentages into hexadecimal code and then sets an object (the entire background) to that colour. Unless hyperPad released an update that broke this, it proves you can store and manipulate colour codes and then set an object to the colour you want. EDIT: Oh, you meant simple and elegant (missed a few words read too fast), yeah not too simple needs a bunch of maths I think.

              D 1 Reply Last reply
              0
              • Aidan_FireA Aidan_Fire

                @Deeeds Jack’s project converts a bunch of percentages into hexadecimal code and then sets an object (the entire background) to that colour. Unless hyperPad released an update that broke this, it proves you can store and manipulate colour codes and then set an object to the colour you want. EDIT: Oh, you meant simple and elegant (missed a few words read too fast), yeah not too simple needs a bunch of maths I think.

                D Offline
                D Offline
                Deeeds
                wrote on last edited by
                #12

                @Aidan-Oxley fixed... see above ^

                Aidan_FireA 1 Reply Last reply
                0
                • D Deeeds

                  @Aidan-Oxley fixed... see above ^

                  Aidan_FireA Offline
                  Aidan_FireA Offline
                  Aidan_Fire
                  wrote on last edited by
                  #13

                  @Deeeds So what you really want then is hyperPad to be able to do maths in hexadecimal then? And convert bases?

                  D 1 Reply Last reply
                  0
                  • Aidan_FireA Aidan_Fire

                    @Deeeds So what you really want then is hyperPad to be able to do maths in hexadecimal then? And convert bases?

                    D Offline
                    D Offline
                    Deeeds
                    wrote on last edited by
                    #14

                    @Aidan-Oxley

                    No.

                    I want an easy, elegant, simple and nicely abstracted way to dynamically adjust colours and alpha.

                    Saturation, Hue, Brightness and Alpha should be separable and operable upon independently. That's part of being NICE and abstracted. etc...

                    1 Reply Last reply
                    0
                    • D Deeeds

                      @GameCRAZY

                      Read this sentence more carefully:

                      Output that to a change color, and my logic all the sudden doesn’t run by it, when with a standard-typed #FFFFFFFF or anything else functions normally.

                      He's already debugged it and isolated the problem to the conversion of a Box Container's storage to a Set Colour's capacity to receive what's stored. This is, most likely, due to mismatched data types. The Box Container has probably stored a String (almost certainly) from his modifications (appends are probably defaulting to being done as strings) whilst the Set Colour is imagining it's going to receive a hexadecimal data type.

                      For some reason, Box Containers seem to be storing a hexadecimal when manually entering #FFFFFFFF. That's why this weird. This has been partially considered. But not wholly. Features that could/should have been there include dynamic RGB/HSL entry/modifications possible in code, too, and an easy way to alter opacity levels dynamically, too, in isolation from all other aspects of a colour. Hue shifting would be enormously assistive, in its own right, for all manner of effects and level articulation.

                      Michael KhalfinG Offline
                      Michael KhalfinG Offline
                      Michael Khalfin
                      wrote on last edited by
                      #15

                      @Deeeds You can still output that string to a label!

                      D 1 Reply Last reply
                      0
                      • Michael KhalfinG Michael Khalfin

                        @Deeeds You can still output that string to a label!

                        D Offline
                        D Offline
                        Deeeds
                        wrote on last edited by
                        #16

                        @GameCRAZY Labels aren't much use to the process of modifying a colour.

                        Michael KhalfinG 1 Reply Last reply
                        0
                        • D Deeeds

                          @GameCRAZY Labels aren't much use to the process of modifying a colour.

                          Michael KhalfinG Offline
                          Michael KhalfinG Offline
                          Michael Khalfin
                          wrote on last edited by
                          #17

                          @Deeeds Just check WHAT the string is, and work with that information!

                          D 1 Reply Last reply
                          0
                          • Michael KhalfinG Michael Khalfin

                            @Deeeds Just check WHAT the string is, and work with that information!

                            D Offline
                            D Offline
                            Deeeds
                            wrote on last edited by
                            #18

                            @GameCRAZY IT IS A STRING!!!

                            That IS the problem.

                            D 1 Reply Last reply
                            0
                            • D Deeeds

                              @GameCRAZY IT IS A STRING!!!

                              That IS the problem.

                              D Offline
                              D Offline
                              Deeeds
                              wrote on last edited by
                              #19

                              @GameCRAZY do you know what I mean if I say "different data types?"

                              Michael KhalfinG 1 Reply Last reply
                              0
                              • D Deeeds

                                @GameCRAZY do you know what I mean if I say "different data types?"

                                Michael KhalfinG Offline
                                Michael KhalfinG Offline
                                Michael Khalfin
                                wrote on last edited by
                                #20

                                @Deeeds Yes, but you can still work with strings. I do know some Swift.

                                D 1 Reply Last reply
                                0
                                • Michael KhalfinG Michael Khalfin

                                  @Deeeds Yes, but you can still work with strings. I do know some Swift.

                                  D Offline
                                  D Offline
                                  Deeeds
                                  wrote on last edited by
                                  #21

                                  @GameCRAZY If you don't have access to type casting, nor can you set a type, then once data has had its type changed by the system (hyperPad) and it's no longer compatible with the data required of colouring something (what we're speculating is happening here) then that is the problem.

                                  So labels of no use.

                                  Michael KhalfinG 1 Reply Last reply
                                  0
                                  • D Deeeds

                                    @GameCRAZY If you don't have access to type casting, nor can you set a type, then once data has had its type changed by the system (hyperPad) and it's no longer compatible with the data required of colouring something (what we're speculating is happening here) then that is the problem.

                                    So labels of no use.

                                    Michael KhalfinG Offline
                                    Michael KhalfinG Offline
                                    Michael Khalfin
                                    wrote on last edited by
                                    #22

                                    @Deeeds The label is only checking whether it's actually a string.

                                    T D 3 Replies Last reply
                                    0
                                    • Michael KhalfinG Michael Khalfin

                                      @Deeeds The label is only checking whether it's actually a string.

                                      T Offline
                                      T Offline
                                      Thecheater887
                                      wrote on last edited by
                                      #23

                                      @GameCRAZY hyperPad implicitly converts everything to the needed data type at runtime.

                                      1 Reply Last reply
                                      0
                                      • Michael KhalfinG Michael Khalfin

                                        @Deeeds The label is only checking whether it's actually a string.

                                        D Offline
                                        D Offline
                                        Deeeds
                                        wrote on last edited by Deeeds
                                        #24

                                        @GameCRAZY No, the label makes a best effort to show what it can. It's not a type checking mechanism, it's a type handling mechanism.

                                        And your contention, from the beginning, that both debugging by a label and that a label are somehow necessary are both wrongheaded. And you've continued to try to back that. That's why you're in a loop.

                                        Just let that idea go. Labels cannot help, in this situation, and theCheater has already isolated anything a label could tell us.

                                        1 Reply Last reply
                                        0
                                        • Michael KhalfinG Michael Khalfin

                                          @Deeeds The label is only checking whether it's actually a string.

                                          D Offline
                                          D Offline
                                          Deeeds
                                          wrote on last edited by Deeeds
                                          #25

                                          @GameCRAZY Let me try to explain why your claim that a label will help is wrong, so you can see why it is that I'm telling you it's wrong, and you might understand why you feel the way you currently do.

                                          You said you know a little Swift, that will help understand this.

                                          Swift is an incredibly type strict language, for reasons Chris Lattner had in mind for the future that will now never be: Namely, that Swift should be the next language used to make the next operating system. But Swift still has convenience handlers, like printing a line to the console.

                                          If you print something to the console, with Swift, looking at the output, you can't tell what type it is. It doesn't show. Just the content does (in most cases).

                                          So an Int, Int64, Vector, String, Hex number, they all look the same.

                                          If you show a label of a Hex number it's going to look EXACTLY the same as a label of the same figures as a string. The label doesn't help you know what type something is because it just makes a best effort to output something.

                                          AND, @Thecheater887 had already isolated anything else the label could tell us as not being useful... he'd already done a round test to find where exactly his "code" was failing.

                                          When you continued to press for your claim that a label would help, in the face of it being wrong twice, I pushed back.

                                          If you feel hurt, or anything else, that's a result of pushing on something that is probably wrong.

                                          Michael KhalfinG 1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Search