Example #1
0
    def _onRootChanged(self, isRoot):
        """Root changed event
        """
        global prev_background
        global prev_back_visible
        BaseModeLogic._onRootChanged(self, isRoot)
        if isRoot:
            render_engine.setMode(render_engine.Mode_Perspective)            
            self.prev_cam_pos = render_engine._ogreCameraNode.getPosition()
            self.prev_cam_dir = render_engine._ogreCameraNode.getOrientation()
            prev_background = render_engine._ogreViewport.getBackgroundColour()
            render_engine._ogreViewport.setBackgroundColour(ogre.ColourValue(0, 0, 0)) 
#            space_panel.activate(self._getSheet().getChilds())
            prev_back_visible = render_engine.SceneManager.isBackVisible()
            if prev_back_visible:
                render_engine.SceneManager.hideBack()
        else:
            render_engine.setMode(render_engine.Mode_Isometric)
            render_engine._ogreCameraNode.setPosition(self.prev_cam_pos)
            render_engine._ogreCameraNode.setOrientation(self.prev_cam_dir)
            render_engine._ogreViewport.setBackgroundColour(prev_background)
#            space_panel.deactivate()
            space_window.deactivate()
            
            if prev_back_visible:
                render_engine.SceneManager.showBack()
        self.is_root = isRoot                
Example #2
0
    def _setSheet(self, _sheet):
        BaseModeLogic._setSheet(self, _sheet)
        
        _sheet.eventRootChanged = self._onRoot
        _sheet.eventContentUpdate = self._onContentUpdate
        
        # trying to get data for showing
        import suit.core.sc_utils as sc_utils
        session = core.Kernel.session()
        _addr = _sheet._getScAddr()   
        _fmt = sc_utils.getContentFormat(session, _addr)     
  
        assert _fmt is not None
        
        _cont = session.get_content_const(_addr)
        assert _cont is not None
        
        _cont_data = _cont.convertToCont()
        self.file_addr = _cont_data
        
        _type = session.get_idtf(_fmt).lower()
        global count
        count += 1
        
#        import os, pm.pm
#        self.imageName = os.path.join(env.res_tmp_dir, "%s.jpg" % str(_addr.this))
#        pm.pm.saveContentToFile(self.imageName + "%d.jpg" % count, _cont)

        
#        file(self.imageName + "_", "wb").write(_cont.get_data(_cont_data.d.size))
        
        """data = _cont.get_data(_cont_data.d.size)
Example #3
0
    def _setSheet(self, _sheet):
        """Sets sheet for a logic
        """
        BaseModeLogic._setSheet(self, _sheet)

        _sheet.eventRootChanged = self._onRootChanged
        _sheet.eventUpdate = self._onUpdate

        # getting data from content and save to temporary file
        import os
        import suit.core.sc_utils as sc_utils

        _addr = _sheet._getScAddr()
        if _addr is None: return

        kernel = Kernel.getSingleton()
        session = kernel.session()
        fmt = sc_utils.getContentFormat(session, _addr)
        assert fmt is not None
        file_name = "%s.%s" % (str(_addr.this), session.get_idtf(fmt).lower())

        # saving data to file
        _cont = session.get_content_const(_addr)
        assert _cont is not None
        _cont_data = _cont.convertToCont()
        data = _cont.get_data(_cont_data.d.size)

        path = os.path.join(kernel.cache_path, 'video')
        out_file = os.path.join(path, file_name)
        file(out_file, "wb").write(data)

        ogre.ResourceGroupManager.getSingleton().initialiseResourceGroup(
            "video")
        self.setVideo(file_name)
Example #4
0
    def __init__(self):
        """Constructor
        """
        BaseModeLogic.__init__(self)

        # view modes
        self._modes = {ois.KC_V: flash_modes.FlashDefaultViewMode(self)}
        self.switchMode(ois.KC_V)

        self.gui = render_engine._gui
        self.x, self.y = render_engine._ogreRenderWindow.getWidth(
        ), render_engine._ogreRenderWindow.getHeight()
        self.panel = False
        self.isRoot = False

        self.playing = False
        self.material = None
        self.swfFile = None
        self.mat_size = [1024, 1024]
        self.coord_mult = [1.0, 1.0]
        self.coord_offset = [0, 0]

        self.rectAttached = False
        self.listenersRegistered = False

        # creating rectangle (surface)
        self.rect_corners = [-1.0, 1.0, 1.0, -1.0]
        self.rect = None
        self._createRect()
Example #5
0
 def __init__(self):
     """Constructor
     """
     BaseModeLogic.__init__(self)
     
     # view modes
     self._modes = {ois.KC_V: flash_modes.FlashDefaultViewMode(self)}
     self.switchMode(ois.KC_V)
     
     
     self.gui = render_engine._gui
     self.x, self.y = render_engine._ogreRenderWindow.getWidth(),render_engine._ogreRenderWindow.getHeight()
     self.panel = False
     self.isRoot = False
     
     self.playing = False        
     self.material = None
     self.swfFile = None
     self.mat_size = [1024, 1024]
     self.coord_mult = [1.0, 1.0]
     self.coord_offset = [0, 0]
     
     
     self.rectAttached = False
     self.listenersRegistered = False
     
     # creating rectangle (surface)
     self.rect_corners = [-1.0, 1.0, 1.0, -1.0]
     self.rect = None
     self._createRect()
Example #6
0
    def __init__(self):
        """Constructor
        """
        BaseModeLogic.__init__(self)
        #ogre.FrameListener.__init__(self)
        self.gui = render_engine._gui
        self.x, self.y = render_engine._ogreRenderWindow.getWidth(
        ), render_engine._ogreRenderWindow.getHeight()
        self.panel = False
        self.wpanel = None
        self.isRoot = False
        #self.kernel.ogreRoot.addFrameListener(self)
        # video player
        self.videoPlayer = None
        self.videoFile = ""
        self.materialName = None
        self.playing = False
        self.runTime = 0
        self.needUpdateMaterial = True

        # attach flags
        #        self.listenerRegistered = False
        self.rectAttached = False

        # creating rectangle (surface)
        self.rect = ogre.Rectangle2D(True)
        self.rect.setCorners(-1.0, 1.0, 1.0, -1.0)
        self.rect.setRenderQueueGroup(ogre.RENDER_QUEUE_8)
        self.rect.setBoundingBox(
            ogre.AxisAlignedBox(ogre.Vector3(-100000.0, -100000.0, -100000.0),
                                ogre.Vector3(100000.0, 100000.0, 100000.0)))
Example #7
0
    def __init__(self):
        """Constructor
        """
        BaseModeLogic.__init__(self)
        #ogre.FrameListener.__init__(self)
        self.gui = render_engine._gui
        self.x, self.y = render_engine._ogreRenderWindow.getWidth(), render_engine._ogreRenderWindow.getHeight()
        self.panel = False
        self.wpanel = None
        self.isRoot = False
        #self.kernel.ogreRoot.addFrameListener(self)
        # video player
        self.videoPlayer = None
        self.videoFile = ""
        self.materialName = None
        self.playing = False
        self.runTime = 0
        self.needUpdateMaterial = True
        
        # attach flags
#        self.listenerRegistered = False
        self.rectAttached = False
        
        # creating rectangle (surface)
        self.rect = ogre.Rectangle2D(True)
        self.rect.setCorners(-1.0, 1.0, 1.0, -1.0)
        self.rect.setRenderQueueGroup(ogre.RENDER_QUEUE_8)
        self.rect.setBoundingBox(ogre.AxisAlignedBox(ogre.Vector3(-100000.0, -100000.0, -100000.0), ogre.Vector3(100000.0, 100000.0, 100000.0)))
Example #8
0
    def _onRootChanged(self, isRoot):
        """Root changed event
        """
        global prev_background
        global prev_back_visible
        BaseModeLogic._onRootChanged(self, isRoot)
        if isRoot:
            render_engine.setMode(render_engine.Mode_Perspective)
            self.prev_cam_pos = render_engine._ogreCameraNode.getPosition()
            self.prev_cam_dir = render_engine._ogreCameraNode.getOrientation()
            prev_background = render_engine._ogreViewport.getBackgroundColour()
            render_engine._ogreViewport.setBackgroundColour(
                ogre.ColourValue(0, 0, 0))
            #            space_panel.activate(self._getSheet().getChilds())
            prev_back_visible = render_engine.SceneManager.isBackVisible()
            if prev_back_visible:
                render_engine.SceneManager.hideBack()
        else:
            render_engine.setMode(render_engine.Mode_Isometric)
            render_engine._ogreCameraNode.setPosition(self.prev_cam_pos)
            render_engine._ogreCameraNode.setOrientation(self.prev_cam_dir)
            render_engine._ogreViewport.setBackgroundColour(prev_background)
            #            space_panel.deactivate()
            space_window.deactivate()

            if prev_back_visible:
                render_engine.SceneManager.showBack()
        self.is_root = isRoot
Example #9
0
 def _setSheet(self, _sheet):
     """Sets sheet for a logic
     """
     BaseModeLogic._setSheet(self, _sheet)
     
     _sheet.eventRootChanged = self._onRootChanged
     _sheet.eventUpdate = self._onUpdate
     
     
     # getting data from content and save to temporary file
     import os
     import suit.core.sc_utils as sc_utils
     
     _addr = _sheet._getScAddr()
     if _addr is None:   return
     
     kernel = Kernel.getSingleton()
     session = kernel.session()
     fmt = sc_utils.getContentFormat(session, _addr)
     assert fmt is not None
     file_name = "%s.%s" %(str(_addr.this), session.get_idtf(fmt).lower())
     
     # saving data to file
     _cont = session.get_content_const(_addr)
     assert _cont is not None
     _cont_data = _cont.convertToCont()
     data = _cont.get_data(_cont_data.d.size)
     
     path = os.path.join(kernel.cache_path, 'video')
     out_file = os.path.join(path, file_name)
     file(out_file, "wb").write(data)
     
     ogre.ResourceGroupManager.getSingleton().initialiseResourceGroup("video")
     self.setVideo(file_name)
Example #10
0
 def __init__(self):
     BaseModeLogic.__init__(self)
     
     self._old_color_back = None
     
     import ogre.io.OIS as ois
     self.appendMode(ois.KC_V, chem_modes.ChemistryViewMode(self))
     self.switchMode(ois.KC_V)
Example #11
0
    def _setSheet(self, _sheet):
        """Sets sheet that controls by this logic
        """
        BaseModeLogic._setSheet(self, _sheet)

        _sheet.eventContentUpdate = self._onContentUpdate

        self.createTextureAndMaterialNames()
Example #12
0
    def _setSheet(self, _sheet):
        """Sets sheet that controls by this logic
        """
        BaseModeLogic._setSheet(self, _sheet)

        _sheet.eventContentUpdate = self._onContentUpdate

        self.createTextureAndMaterialNames()
Example #13
0
    def _setSheet(self, _sheet):
        BaseModeLogic._setSheet(self, _sheet)

        _sheet.eventRootChanged = self._onRootChanged
        _sheet.eventUpdate = self._onUpdate
        _sheet.eventObjectUnderMouse = self._getObjectsUnderMouse
        _sheet.eventContentUpdate = self._onContentUpdate
        _sheet.eventHaveChild = self._haveChild
Example #14
0
    def __init__(self):
        BaseModeLogic.__init__(self)

        self._old_color_back = None

        import ogre.io.OIS as ois
        self.appendMode(ois.KC_V, chem_modes.ChemistryViewMode(self))
        self.switchMode(ois.KC_V)
Example #15
0
    def __init__(self):
        BaseModeLogic.__init__(self)
        
        # view modes
        self._modes = {}
        self.mode = None

        self.is_root = False    # flag for root mode, need to store there for grow speed up
Example #16
0
 def _setSheet(self, _sheet):
     BaseModeLogic._setSheet(self, _sheet)
     
     _sheet.eventRootChanged = self._onRootChanged
     _sheet.eventUpdate = self._onUpdate
     _sheet.eventObjectUnderMouse = self._getObjectsUnderMouse
     _sheet.eventContentUpdate = self._onContentUpdate
     _sheet.eventHaveChild = self._haveChild
Example #17
0
 def _setSheet(self, _sheet):
     BaseModeLogic._setSheet(self, _sheet)
     
     _sheet.eventRootChanged = self._onRootChanged
     _sheet.eventContentUpdate = self._onContentUpdate
     
     import suit.core.layout.LayoutGroupForceDirected as layout
     _sheet.setLayoutGroup(layout.LayoutGroupForceSimple())
Example #18
0
    def __init__(self):
        BaseModeLogic.__init__(self)

        # view modes
        self._modes = {}
        self.mode = None

        self.is_root = False  # flag for root mode, need to store there for grow speed up
Example #19
0
    def _setSheet(self, _sheet):
        BaseModeLogic._setSheet(self, _sheet)

        _sheet.eventRootChanged = self._onRootChanged
        _sheet.eventContentUpdate = self._onContentUpdate

        import suit.core.layout.LayoutGroupForceDirected as layout
        _sheet.setLayoutGroup(layout.LayoutGroupForceSimple())
Example #20
0
 def _setSheet(self, _sheet):
     # process event to viewer
     self._viewer._setSheet(_sheet)
     
     BaseModeLogic._setSheet(self, _sheet)
     
     #subscribe events
     _sheet.eventRootChanged = self._onRootChanged
     _sheet.eventUpdate = self._onUpdate
Example #21
0
 def _setSheet(self, _sheet):
     BaseModeLogic._setSheet(self, _sheet)
     
     _sheet.eventRootChanged = self._onRoot
             
     self._createFieldFromContent()                
     self._createMaterial()
     self.rect.setMaterial(self.getMaterialName())
     self._redraw()
Example #22
0
    def _setSheet(self, _sheet):
        # process event to viewer
        self._viewer._setSheet(_sheet)

        BaseModeLogic._setSheet(self, _sheet)

        #subscribe events
        _sheet.eventRootChanged = self._onRootChanged
        _sheet.eventUpdate = self._onUpdate
Example #23
0
    def _setSheet(self, _sheet):
        BaseModeLogic._setSheet(self, _sheet)

        _sheet.eventRootChanged = self._onRoot

        self._createFieldFromContent()
        self._createMaterial()
        self.rect.setMaterial(self.getMaterialName())
        self._redraw()
Example #24
0
 def _setSheet(self, _sheet):
     """Notification on sheet changed
     
     @param _sheet: new sheet controlled by logic
     @type _sheet: objects.ObjectSheet 
     """
     self._viewer._setSheet(_sheet)
     BaseModeLogic._setSheet(self, _sheet)
     
     _sheet.eventRootChanged = self._onRootChanged
Example #25
0
 def _setSheet(self, _sheet):
     """Notification on sheet changed
     
     @param _sheet: new sheet controlled by logic
     @type _sheet: objects.ObjectSheet 
     """
     self._viewer._setSheet(_sheet)
     BaseModeLogic._setSheet(self, _sheet)
     
     _sheet.eventRootChanged = self._onRootChanged
Example #26
0
    def __del__(self):
        """Destructor
        """

        self._destroyControl()

        if self.rectAttached:
            self.sceneNodeChilds.detachObject(self.rect)

        self.destroyPanel()
        BaseModeLogic.__del__(self)
Example #27
0
 def __init__(self):
     """Constructor
     """
     BaseModeLogic.__init__(self)
     
     # addr of viewed set
     self.view_set_addr = None
     
     # view modes
     self.appendMode(ois.KC_V, scg_modes.SCgViewMode(self))
     self.switchMode(ois.KC_V)
Example #28
0
 def __del__(self):
     """Destructor
     """
     
     self._destroyControl()
     
     if self.rectAttached:
         self.sceneNodeChilds.detachObject(self.rect)
         
     self.destroyPanel()
     BaseModeLogic.__del__(self)        
Example #29
0
    def __init__(self):
        """Constructor
        """
        BaseModeLogic.__init__(self)

        # addr of viewed set
        self.view_set_addr = None

        # view modes
        self.appendMode(ois.KC_V, scg_modes.SCgViewMode(self))
        self.switchMode(ois.KC_V)
Example #30
0
 def _onRootChanged(self, _isRoot):
     """Root state changed event
     @param _isRoot: new root state
     @type _isRoot: bool  
     """
     BaseModeLogic._onRootChanged(self, _isRoot)
     
     if _isRoot:
         render_engine.SceneManager.setBackMaterial("Back/Lime")
     else:
         render_engine.SceneManager.setDefaultBackMaterial()  
Example #31
0
    def __init__(self):
        """constructor
        """
        
        BaseModeLogic.__init__(self)
        # view modes
#        self.appendMode(ois.KC_X, FlyMode(self))
#        self._active_mode = self._modes[ois.KC_X]
        self.appendMode(ois.KC_S, SpaceViewMode(self))
        self.switchMode(ois.KC_S)
        self.is_root = False
Example #32
0
    def __init__(self):
        """constructor
        """

        BaseModeLogic.__init__(self)
        # view modes
        #        self.appendMode(ois.KC_X, FlyMode(self))
        #        self._active_mode = self._modes[ois.KC_X]
        self.appendMode(ois.KC_S, SpaceViewMode(self))
        self.switchMode(ois.KC_S)
        self.is_root = False
Example #33
0
 def delete(self):
     """Deletion message
     """
     BaseModeLogic.delete(self)
     
     if self.sceneNodeRect is not None:
         render_engine.SceneManager.destroySceneNode(self.sceneNodeRect)
     
     if self.material is not None:   self._destroyMaterial()
     if self.texture is not None:    self._destroyTexture()
     
     self._destroyRect()
Example #34
0
 def delete(self):
     """Deletion message
     """
     BaseModeLogic.delete(self)
     
     if self.sceneNodeRect is not None:
         render_engine.SceneManager.destroySceneNode(self.sceneNodeRect)
     
     if self.material is not None:   self._destroyMaterial()
     if self.texture is not None:    self._destroyTexture()
     
     self._destroyRect()
Example #35
0
    def __init__(self, _viewer = None):
        BaseModeLogic.__init__(self)
        
        if not _viewer:
            self._viewer = ChemistryViewer()
        else:
            raise RuntimeError("Chemistry editor doesn't support existing viewers for now")
        
        self.mergeModes(self._viewer)

        import ogre.io.OIS as ois
        self.appendMode(ois.KC_E, chem_modes.ChemistryEditMode(self))
        self.switchMode(ois.KC_E)
Example #36
0
 def __init__(self):        
     '''
     Constructor
     '''
     BaseModeLogic.__init__(self)
     
     # texture object 
     self.texture = None
     self.imageName = None
     self.sceneNodeRect = render_engine.SceneManager.createSceneNode()
     
     self.rect = None
     self._createRect()
Example #37
0
 def __init__(self):        
     '''
     Constructor
     '''
     BaseModeLogic.__init__(self)
     
     # texture object 
     self.texture = None
     self.imageName = None
     self.sceneNodeRect = render_engine.SceneManager.createSceneNode()
     
     self.rect = None
     self._createRect()
Example #38
0
    def __init__(self, _viewer=None):
        BaseModeLogic.__init__(self)

        if not _viewer:
            self._viewer = ChemistryViewer()
        else:
            raise RuntimeError(
                "Chemistry editor doesn't support existing viewers for now")

        self.mergeModes(self._viewer)

        import ogre.io.OIS as ois
        self.appendMode(ois.KC_E, chem_modes.ChemistryEditMode(self))
        self.switchMode(ois.KC_E)
Example #39
0
    def __del__(self):
        """Destructor
        """
        print "Deleted audio_viewer"
        self.stop()
        self.audioPlayer = None
        # detaching objects
        if self.rectAttached:
            self.sceneNode.detachObject(self.rect)
#        # removing listeners
#        if self.listenerRegistered:
#            ogre.Root.getSingleton().removeListener(self)
        self.destroyPanel()
        BaseModeLogic.__del__(self)
Example #40
0
    def __del__(self):
        """Destructor
        """
        print "Deleted audio_viewer"
        self.stop()
        self.audioPlayer = None
        # detaching objects
        if self.rectAttached:
            self.sceneNode.detachObject(self.rect)
#        # removing listeners
#        if self.listenerRegistered:
#            ogre.Root.getSingleton().removeListener(self)
        self.destroyPanel()
        BaseModeLogic.__del__(self)
Example #41
0
 def _setSheet(self, _sheet):
     BaseModeLogic._setSheet(self, _sheet)
     
     _sheet.eventRootChanged = self._onRootChanged
     _sheet.eventUpdate = self._onUpdate 
     
     # go to 3d mode
     #_sheet.changeMode(render_engine.Mode_Perspective)
     import suit.core.layout.LayoutGroupForceDirected as layout
     _sheet.setLayoutGroup(layout.LayoutGroupForceSimple(_gravity = 0.1,
                                                         _repulsion = 3.5,
                                                         _length = 2.0,
                                                         _rigidity = 10.0,
                                                         _step_max = 0.05,
                                                         _step_min = 0.001))
Example #42
0
 def _onRootChanged(self, _isRoot):
     """Root mode changing
     """
     import suit.core.render.engine as render_engine
     import ogre.renderer.OGRE as ogre
             
     if _isRoot:
         self._old_color_back = render_engine._ogreViewport.getBackgroundColour()
         clr = chem_env.color_back
         render_engine._ogreViewport.setBackgroundColour(ogre.ColourValue(clr[0], clr[1], clr[2], clr[3]))
     else:
         if self._old_color_back is not None:
             render_engine._ogreViewport.setBackgroundColour(self._old_color_back)
             
     BaseModeLogic._onRootChanged(self, _isRoot)
Example #43
0
 def __init__(self, _viewer = None):
     BaseModeLogic.__init__(self)
     
     # creating geometry viewer if need
     if _viewer is not None:
         self._viewer = _viewer
         sheet = self._viewer._getSheet()
         if sheet is None:   raise RuntimeError("There is no sheet")
     else:
         self._viewer = geom_viewer.GeometryViewer()
     
     # merging viewer modes
     self.mergeModes(self._viewer)
     self.appendMode(ois.KC_E, geom_modes.GeometryEditMode(self))
     self.switchMode(ois.KC_E)
Example #44
0
 def __init__(self, _viewer = None):
     BaseModeLogic.__init__(self)
     
     # creating geometry viewer if need
     if _viewer is not None:
         self._viewer = _viewer
         sheet = self._viewer._getSheet()
         if sheet is None:   raise RuntimeError("There is no sheet")
     else:
         self._viewer = geom_viewer.GeometryViewer()
     
     # merging viewer modes
     self.mergeModes(self._viewer)
     self.appendMode(ois.KC_E, geom_modes.GeometryEditMode(self))
     self.switchMode(ois.KC_E)
Example #45
0
    def _setSheet(self, _sheet):
        BaseModeLogic._setSheet(self, _sheet)

        _sheet.eventRootChanged = self._onRootChanged
        _sheet.eventUpdate = self._onUpdate

        # go to 3d mode
        #_sheet.changeMode(render_engine.Mode_Perspective)
        import suit.core.layout.LayoutGroupForceDirected as layout
        _sheet.setLayoutGroup(
            layout.LayoutGroupForceSimple(_gravity=0.1,
                                          _repulsion=3.5,
                                          _length=2.0,
                                          _rigidity=10.0,
                                          _step_max=0.05,
                                          _step_min=0.001))
Example #46
0
    def __init__(self, viewer=None):
        """Constructor
        """
        BaseModeLogic.__init__(self)

        # setting new logic for a sheet if viewer already exists
        if viewer is not None:
            self.__viewer = viewer
            sheet = self.__viewer._getSheet()
            if sheet is None: raise RuntimeError("There is no sheet")
        else:
            self.__viewer = SCgViewer()

        self.mergeModes(self.__viewer)
        self.appendMode(ois.KC_E, scg_modes.SCgEditMode(self))
        self.switchMode(ois.KC_E)
Example #47
0
 def __init__(self, viewer = None):
     """Constructor
     """
     BaseModeLogic.__init__(self)
     
     # setting new logic for a sheet if viewer already exists
     if viewer is not None:
         self.__viewer = viewer
         sheet = self.__viewer._getSheet()
         if sheet is None:   raise RuntimeError("There is no sheet")
     else:
         self.__viewer = SCgViewer()
                  
     self.mergeModes(self.__viewer)
     self.appendMode(ois.KC_E, scg_modes.SCgEditMode(self))
     self.switchMode(ois.KC_E)        
Example #48
0
    def _setSheet(self, _sheet):
        """Notification about sheet changed for logic
        
        @param _sheet: sheet object logic sets to
        @type _sheet: ObjectSheet  
         
        @attention: this method only for internal usage and calls by 
        ObhectSheet automatically when you set logic for it 
        """
        self.__viewer._setSheet(_sheet)
        BaseModeLogic._setSheet(self, _sheet)

        _sheet.eventUpdateView = self._onUpdateView
        _sheet.eventUpdate = self._onUpdate        
        
        _sheet.eventRootChanged = self._onRootChanged
                
        _sheet.eventSelectionChanged = self._modes[ois.KC_E]._handlerSelChanged
Example #49
0
    def _setSheet(self, _sheet):
        """Notification about sheet changed for logic
        
        @param _sheet: sheet object logic sets to
        @type _sheet: ObjectSheet  
         
        @attention: this method only for internal usage and calls by 
        ObhectSheet automatically when you set logic for it 
        """
        self.__viewer._setSheet(_sheet)
        BaseModeLogic._setSheet(self, _sheet)

        _sheet.eventUpdateView = self._onUpdateView
        _sheet.eventUpdate = self._onUpdate

        _sheet.eventRootChanged = self._onRootChanged

        _sheet.eventSelectionChanged = self._modes[ois.KC_E]._handlerSelChanged
Example #50
0
    def _onRootChanged(self, _isRoot):
        """Root mode changing
        """
        import suit.core.render.engine as render_engine
        import ogre.renderer.OGRE as ogre

        if _isRoot:
            self._old_color_back = render_engine._ogreViewport.getBackgroundColour(
            )
            clr = chem_env.color_back
            render_engine._ogreViewport.setBackgroundColour(
                ogre.ColourValue(clr[0], clr[1], clr[2], clr[3]))
        else:
            if self._old_color_back is not None:
                render_engine._ogreViewport.setBackgroundColour(
                    self._old_color_back)

        BaseModeLogic._onRootChanged(self, _isRoot)
Example #51
0
    def _setSheet(self, _sheet):
        BaseModeLogic._setSheet(self, _sheet)
        
        _sheet.eventRootChanged = self._onRoot
        
        # trying to get data for showing
        import suit.core.sc_utils as sc_utils
        session = core.Kernel.session()
        _addr = _sheet._getScAddr()
        _fmt = sc_utils.getContentFormat(session, _addr)
        assert _fmt is not None
        
        _cont = session.get_content_const(_addr)
        assert _cont is not None
        
        _cont_data = _cont.convertToCont()
        
        _type = session.get_idtf(_fmt).lower()
        global count
        count += 1
        
#        import os, pm.pm
#        self.imageName = os.path.join(env.res_tmp_dir, "%s.jpg" % str(_addr.this))
#        pm.pm.saveContentToFile(self.imageName + "%d.jpg" % count, _cont)

        
#        file(self.imageName + "_", "wb").write(_cont.get_data(_cont_data.d.size))
        
        data = _cont.get_data(_cont_data.d.size)
        stream = ogre.MemoryDataStream("%s" % str(self), _cont_data.d.size, False)
        stream.setData(data)
#     
        try:
            img = ogre.Image()
            img.load(stream, ogre.Image.getFileExtFromMagic(stream))
            self._createTexture(img)
            self._createMaterial()
            self._resizeRect()
        except:
            import sys, traceback
            print "Error:", sys.exc_info()[0]
            traceback.print_exc(file=sys.stdout)
Example #52
0
    def _setSheet(self, _sheet):
        BaseModeLogic._setSheet(self, _sheet)
        
        _sheet.eventRootChanged = self._onRoot
        
        # trying to get data for showing
        import suit.core.sc_utils as sc_utils
        session = core.Kernel.session()
        _addr = _sheet._getScAddr()
        _fmt = sc_utils.getContentFormat(session, _addr)
        assert _fmt is not None
        
        _cont = session.get_content_const(_addr)
        assert _cont is not None
        
        _cont_data = _cont.convertToCont()
        
        _type = session.get_idtf(_fmt).lower()
        global count
        count += 1
        
#        import os, pm.pm
#        self.imageName = os.path.join(env.res_tmp_dir, "%s.jpg" % str(_addr.this))
#        pm.pm.saveContentToFile(self.imageName + "%d.jpg" % count, _cont)

        
#        file(self.imageName + "_", "wb").write(_cont.get_data(_cont_data.d.size))
        
        data = _cont.get_data(_cont_data.d.size)
        stream = ogre.MemoryDataStream("%s" % str(self), _cont_data.d.size, False)
        stream.setData(data)
#     
        try:
            img = ogre.Image()
            img.load(stream, ogre.Image.getFileExtFromMagic(stream))
            self._createTexture(img)
            self._createMaterial()
            self._resizeRect()
        except:
            import sys, traceback
            print "Error:", sys.exc_info()[0]
            traceback.print_exc(file=sys.stdout)
Example #53
0
    def __init__(self):
        BaseModeLogic.__init__(self)

        self.sceneNodeRect = render_engine.SceneManager.createSceneNode()
        self.rect = None
        self._createRect()

        self.material = None
        self.texture = None
        self.origin = [0.5, 0.5]

        self.field = None
        self.drawer = None

        self.mapSurface = None
        self.layerData = []

        self.zoomRectCorners = [[0, 0], [0, 0]]

        self.tex_size = (1024, 1024)

        self.appendMode(ois.KC_V, map_modes.MapViewMode(self))
        self.switchMode(ois.KC_V)
Example #54
0
 def __init__(self):
     BaseModeLogic.__init__(self)
     
     self.sceneNodeRect = render_engine.SceneManager.createSceneNode()
     self.rect = None
     self._createRect()
     
     self.material = None
     self.texture = None
     self.origin = [0.5, 0.5]
     
     self.field = None
     self.drawer = None
     
     self.mapSurface = None
     self.layerData = []
     
     self.zoomRectCorners = [[0, 0], [0, 0]] 
     
     self.tex_size = (1024, 1024)
     
     self.appendMode(ois.KC_V, map_modes.MapViewMode(self))
     self.switchMode(ois.KC_V)
Example #55
0
 def delete(self):
     """Deletion message
     """
     BaseModeLogic.delete(self)
Example #56
0
 def __del__(self):
     BaseModeLogic.__del__(self)
Example #57
0
 def delete(self):
     """Deletion message
     """
     BaseModeLogic.delete(self)
     if self.__viewer:   self.__viewer.delete()
Example #58
0
 def __del__(self):
     """Destructor
     """
     BaseModeLogic.__del__(self)
Example #59
0
 def delete(self):
     """Deletion message
     """
     BaseModeLogic.delete(self)
     if self.__viewer: self.__viewer.delete()