>When assigning images to members from the memory buffer, Director
>automatically creates a duplicate of the image.

Ok, I've verified that:
new(#bitmap)
imgA = image(320, 240, 32)
put imgA
-- <image:4fb12c>
put member(1).image
-- <image:0>
member(1).image = imgA
put member(1).image
-- <image:4fb168>

>  However, when reversing the
>process, i.e. if you assign the image of a member to an image object, thats
>when a pointer is used.

Ok, that makes sense.

It still doesn't solve my bug, though. I'm still getting a duplicate fill 
at the top left of the stage.

Once again, here is the code:

   pDotSprite.member.image = kSaveDotImage -- single-pixel saved image
   if objectP(pHiliteImage) then pHiliteImage = void
   hiliteImage = image(266, 42, 16)
   startRect = rect(155, 0, 266, 20)
   endRect = rect(0, 16, 167, 40)
    hiliteImage.fill (startRect , pHiliteColor)
    hiliteImage.fill (endRect , pHiliteColor)
    pDotSprite.member.image = hiliteImage -- <-- Here's where the problem 
occurs
    pDotSprite.rect = rect(201, 240, 468, 282)

The code is somewhat simplified--I've taken out all the calculations to get 
those rects, for example, but all the imaging Lingo is here.

I've tried it with the variation you used--creating the image, assigning it 
to the member, then drawing into the member's image. Same result.

Same question. Why is Director doing duplicate fills? I'm filling two 
rects, but Director is drawing 4 on the screen.

Cordially,

Kerry Thompson


[To remove yourself from this list, or to change to digest mode, go to
http://www.penworks.com/LUJ/lingo-l.cgi  To post messages to the list,
email [EMAIL PROTECTED]  (Problems, email [EMAIL PROTECTED])
Lingo-L is for learning and helping with programming Lingo.  Thanks!]

Reply via email to