Free Electron
Viewer Design


Generalized interfaces and specific implementations are provided that navigate in space in order to view objects and scenes. These systems loosely follow the model/view/controller design pattern.



The fexViewer library provides an fe::ControllerI implementation called fe::InspectController. When the control key is held, the mouse is interpreted to manipulate the view as follows:


The fexViewer library provides an fe::ViewerI implementation called fe::ObjectViewer. This viewer provides an HandlerI/SignalerI which handles and proxies an AsViewer record multiple times per frame. This signal includes an incrementing layer as well as a perspective flag. This mechanism is subject to likely future refinement.