August'24: Kamaelia is in maintenance mode and will recieve periodic updates, about twice a year, primarily targeted around Python 3 and ecosystem compatibility. PRs are always welcome. Latest Release: 1.14.32 (2024/3/24)
Component for displaying an image on a pygame display. Uses the Pygame Display service component.
The image can be changed at any time.
Display that rotates rapidly through a set of images:
imagefiles = [ "imagefile1", "imagefile2", ... ]
class ChangeImage(Axon.Component.component):
def __init__(self, images):
super(ChangeImage,self).__init__()
self.images = images
def main(self):
while 1:
for image in self.images:
self.send( image, "outbox")
print "boing",image
for i in range(0,100):
yield 1
image = Image(image=None, bgcolour=(0,192,0))
ic = ChangeImage(imagefiles)
Pipeline(ic, image).run()
This component requests a display surface from the Pygame Display service component and renders the specified image to it.
The image, and other properties can be changed later by sending messages to its "inbox", "bgcolour" and "alphacontrol" inboxes.
Note that the size of display area is fixed after initialisation. If an initial size, or image is specified then the size is set to that, otherwise a default value is used.
Change the image at any time by sending a new filename to the "inbox" inbox. If the image is larger than the 'size', then it will appear cropped. If it is smaller, then the Image component's 'background colour' will show through behind it. The image is always rendered aligned to the top left corner.
If this component receives a shutdownMicroprocess or producerFinished message on its "control" inbox, then this will be forwarded out of its "signal" outbox and the component will then terminate.
Image([image][,position][,bgcolour][,size][,displayExtra][,maxpect]) -> new Image component
Pygame image display component. Image, and other properties can be changed at runtime.
Keyword arguments:
Warning!
You should be using the inbox/outbox interface, not these methods (except construction). This documentation is designed as a roadmap as to their functionalilty for maintainers and new component developers.
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
Blits the background colour and image file to the surface
Load image from specified filename.
self.size is set to image dimensions if self.size is None.
Image is scaled by self.maxpect if self.maxpect evaluates to True.
Main loop.
Generator. yield's 1 until data is ready on the named inbox.
Got a problem with the documentation? Something unclear that could be clearer? Want to help improve it? Constructive criticism is very welcome - especially if you can suggest a better rewording!
Please leave you feedback here in reply to the documentation thread in the Kamaelia blog.
-- Automatic documentation generator, 05 Jun 2009 at 03:01:38 UTC/GMT