Method IsOk() of wx.EmptyBitmap returns False

Hi,

I'm trying to generate some wx.EmptyBitmap and for some reason the
method IsOk () returns False. Could someone help me to discover what
is happening?

Here there is an example and the results

import wx
def main():
    temp= []
    for i in xrange(100):
        eb = wx.EmptyBitmap(5000,5000)

        print i, eb, eb.IsOk()
        if not eb.IsOk(): return
        temp.append( eb )
        del eb

if __name__ == '__main__':
    app = wx.App(False)
    main()

this script produced:

0 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3328> > True
1 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3338> > True
2 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3358> > True
3 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3368> > True
4 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3378> > True
5 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3348> > True
6 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3398> > True
7 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3388> > True
8 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa33b8> > True
9 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa33a8> > True
10 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa33d8> > True
11 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa33e8> > True
12 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa33c8> > True
13 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3408> > True
14 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa33f8> > True
15 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3428> > True
16 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3418> > True
17 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3448> > True
18 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3458> > True
19 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3468> > True
20 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3438> > True
21 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3478> > True
22 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3498> > True
23 <wx._gdi.Bitmap; proxy of <Swig Object of type 'wxBitmap *' at
0x2aa3488> > False

Why after some iterations IsOk() is "False"?

Thanks a lot

Hi,

I'm trying to generate some wx.EmptyBitmap and for some reason the
method IsOk () returns False. Could someone help me to discover what
is happening?

Here there is an example and the results

import wx
def main():
     temp=
     for i in xrange(100):
         eb = wx.EmptyBitmap(5000,5000)

         print i, eb, eb.IsOk()
         if not eb.IsOk(): return
         temp.append( eb )
         del eb

if __name__ == '__main__':
     app = wx.App(False)
     main()

this script produced:

...

21<wx._gdi.Bitmap; proxy of<Swig Object of type 'wxBitmap *' at
0x2aa3478> > True
22<wx._gdi.Bitmap; proxy of<Swig Object of type 'wxBitmap *' at
0x2aa3498> > True
23<wx._gdi.Bitmap; proxy of<Swig Object of type 'wxBitmap *' at
0x2aa3488> > False

Why after some iterations IsOk() is "False"?

Probably because you are using too much memory, or exceeeding some other per-process limit set by the OS. A 5000x5000 bitmap is going to take around 100M, 22 of them are going to take around 2G.

···

On 4/25/12 2:09 PM, Hernan Burgues wrote:

--
Robin Dunn
Software Craftsman