Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. Canvas issue
Qt 6.11 is out! See what's new in the release blog

Canvas issue

Scheduled Pinned Locked Moved Solved QML and Qt Quick
15 Posts 2 Posters 4.7k Views 1 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.
  • P Offline
    P Offline
    peteritv
    wrote on last edited by
    #6

    After reading some docs, I am sure you are not telling something.

    You want to draw on something that is white, correct?
    So your canvas must be a child of something that is white.

    For instance:
    Rectangle { color: white; Canvas { ... } }

    Is that the case here?

    T 1 Reply Last reply
    0
    • P peteritv

      After reading some docs, I am sure you are not telling something.

      You want to draw on something that is white, correct?
      So your canvas must be a child of something that is white.

      For instance:
      Rectangle { color: white; Canvas { ... } }

      Is that the case here?

      T Offline
      T Offline
      Tikani
      wrote on last edited by
      #7

      @peteritv Yes, you are correct. In my case I set Canvas as a child of a white Window, but Context2D shows me, suddenly, that the canvas is the child of the black Window. Though it is displayed as white.

      1 Reply Last reply
      0
      • P Offline
        P Offline
        peteritv
        wrote on last edited by
        #8

        OK, I just run your example, and it seems to work.

        I have a white background on which I can draw.
        When I draw I see the traces of my mouse with a big "point" size.
        Draw color is blue.

        Everything seems to work.

        Now, since I don't have your "Neuro" file, THAT may be your problem...

        1 Reply Last reply
        0
        • P Offline
          P Offline
          peteritv
          wrote on last edited by
          #9

          We have a synchronisation issue here to :)

          So when you run your program, you are drawing on a black thing?

          1 Reply Last reply
          0
          • P Offline
            P Offline
            peteritv
            wrote on last edited by
            #10

            Where/How do you use Context2D?

            1 Reply Last reply
            0
            • P Offline
              P Offline
              peteritv
              wrote on last edited by
              #11

              Ahhhh! I understand now! (I think)

              You think that what ever background you choose, it will be part of your canvas?
              That is NOT the case!

              The canvas just is a container for some points being drawn!

              For instance, you can take the canvas, and put it on something else like a red Rectangle.
              It will still have the same points, but now on a red background.

              In other words, the canvas does NOT hold any information at all about the background. It just knows about some pixels.

              1 Reply Last reply
              1
              • P Offline
                P Offline
                peteritv
                wrote on last edited by
                #12

                So in your case, you need to fill your Canvas with white pixels itself.

                So with ur ctx functions, draw a white rectangle first, which will be the base of your canvas for drawing on.

                1 Reply Last reply
                1
                • P Offline
                  P Offline
                  peteritv
                  wrote on last edited by
                  #13

                  So, instead of making your parent white:

                  Within your canvas, draw a white rectangle on start,
                  and then start drawing on that

                  1 Reply Last reply
                  1
                  • P Offline
                    P Offline
                    peteritv
                    wrote on last edited by
                    #14

                    But that explaines why you see "black" instead of "white" on your Context2D

                    I am assuming you are just interested in the points, and not the background, for further processing.
                    So forget about the canvas background, ok?

                    T 1 Reply Last reply
                    1
                    • P peteritv

                      But that explaines why you see "black" instead of "white" on your Context2D

                      I am assuming you are just interested in the points, and not the background, for further processing.
                      So forget about the canvas background, ok?

                      T Offline
                      T Offline
                      Tikani
                      wrote on last edited by Tikani
                      #15

                      @peteritv Huge thanks, I finnally got what's going on! A visible background of working application is just a result of visual compositing the Canvas with it's parent and these two does not share any properties between each other. Thanks a lot again, I think it is very important to know such nuances.

                      1 Reply Last reply
                      0

                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • Users
                      • Groups
                      • Search
                      • Get Qt Extensions
                      • Unsolved