2. What is Qt?
❏ Cross-platform application development
framework.
❏ Used to create graphical user interfaces.
❏ It can be used with several different
programming languages.
❏ “t” in Qt refers to toolkit which defines Qt
much better. Therefore, it can effectively be
defined as a set of tools.
3. Qt TOOLS
❏ The main component is a set of libraries, written
natively in C++. These libraries include: the core library
providing the most important stuff, the GUI library
providing the GUI components, the XML library.
❏ Meta Object Compiler(moc) used to handle Qt’s C++
extensions.This extends C++ a little bit, adding nice
features like the signals/slots mechanism
❏ The GUI designer tool and the UIC. Qt Designer is a
graphical tool to create GUIs visually and save them to
XML files, and the UIC is a command-line tool to
translate those XML files to C++ code.
4. ❏ Qt Linguist, tool to internationalize
applications.Qt Linguist is a graphical tool for
translator to edit those XML files and provide
translations.
❏ The qmake tool, used to automate build
process, so you don't have to run MOC, C++
compiler, UIC and other things manually.
❏ The Qt Creator, a graphical IDE to integrate
all the stuff described above into a single
environment.
16. Similarly a 2D graphic
such as a circle,ellipse
can be built
17. The code uses QPainter on QMainWindow. Circle
drawing is done during gui decoration process , it is
not drawn as an animation.Drawing empty circle on
QMainWindow involves subclassing of
QMainWindow and overriding
paintEvent(QPaintEvent*) method.
20. ❏ Coin3D is a high level 3D graphics toolkit for
developing cross-platform 3D visualizations.
❏ It uses scene graph data structures to render
3D graphics.
❏ Based on the de facto standard Open
Inventor, Coin3D is a set of libraries for
creating 3D graphics applications.
22. 1. Download Coin-3.1.3.tar.gz fom
https://bitbucket.org/Coin3D/coin/downloads.
2. Next unzip the file using the following commands:
o cd /tmp
o gzip -cd Coin-3.1.3.tar.gz | tar xvf -
o mkdir coin-build
3. Run configure from the build directory:cd coin-build
4. ../Coin-3.1.3/configure
5. Build the Coin library:
6. make
7. Install the Coin library:
8. make install
26. Capabilities of Open Inventor
❏ Easy construction of 3D scenes
❏ User interaction
❏ Animation
27. Scenegraph Anatomy
There are three kinds of nodes:
Group nodes: allow construction of trees
Property nodes: change the color / location /
... of the next object
Shapes: visible objects.
29. Scene objects
class name prefix: So (scene object)
❏ derived from SoNode
❏ can be inserted directly into the scenegraph
Example:
root->addChild(new SoSphere)
33. #include <Inventor/Qt/SoQt.h>: The SoQt class takes
care of Qt initialisation.
# include<Inventor/Qt/viewers/SoQtExaminerViewer.h>
It is the general purpose viewer to view the 3D object
generated.
#include <Inventor/nodes/SoSeparator.h>
It is subclass of SoGroup class.
#include <Inventor/nodes/SoCube.h>
This is the node for cube shape. It comes under the
category of shape nodes.
34. ❏ QWidget * mainwin = SoQt::init(argc, argv, argv[0]);
SoQt ::init with a string creates a QApplication and its
main window, and returns its window handle.
❏ SoSeparator * root = new SoSeparator;
root->ref();
The root node of the scene graph is created here.
❏ SoCube *cube = new SoCube;
root->addChild(cube);
A cube is added to the scene as a child to the root node.