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)

Kamaelia.UI.OpenGL.SimpleTranslationInteractor

Simple Translation Interactor

A simple interactor for moving OpenGLComponents along th X,Y plane.

SimpleTranslationInteractor is a subclass of Interactor.

Example Usage

The following example shows four SimpleCubes which can be moved by dragging your mouse over them:

o1 = SimpleCube(position=(6, 0,-30), size=(1,1,1)).activate()
i1 = SimpleTranslationInteractor(target=o1).activate()

o2 = SimpleCube(position=(0, 0,-20), size=(1,1,1)).activate()
i2 = SimpleTranslationInteractor(target=o2).activate()

o3 = SimpleCube(position=(-3, 0,-10), size=(1,1,1)).activate()
i3 = SimpleTranslationInteractor(target=o3).activate()

o4 = SimpleCube(position=(15, 0,-40), size=(1,1,1)).activate()
i4 = SimpleTranslationInteractor(target=o4).activate()

Axon.Scheduler.scheduler.run.runThreads()

How does it work?

SimpleTranslationInteractor is a subclass of Interactor (for Interactor functionality see its documentation). It overrides the __init__(), setup() and handleEvents() methods.

The amount of movement is determined using the relative 2d movement which is included in every mouse event and multiplying it by a factor. This factor must be specified on creation of the component.


Kamaelia.UI.OpenGL.SimpleTranslationInteractor.SimpleTranslationInteractor

class SimpleTranslationInteractor(Interactor)

SimpleTranslationInteractor(...) -> A new SimpleTranslationInteractor component.

A simple interactor for moving OpenGLComponents along th X,Y plane.

Keyword arguments:

  • translationfactor -- factor to translate between 2d and 3d movement (default=10.0)

Inboxes

Outboxes

Methods defined here

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.

__init__(self, **argd)

x.__init__(...) initializes x; see x.__class__.__doc__ for signature

handleEvents(self)

setup(self)

Feedback

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