Difference between revisions of "User:Vladbogolin/GSoC2014/summary"

From BRL-CAD
(Created page with "=Embedding a framebuffer window= The project can be split into two main parts: *Creating a new Qt framebuffer *Embedding a framebuffer window I started by creating a new cro...")
 
(Embedding a framebuffer window)
 
(3 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
*Embedding a framebuffer window
 
*Embedding a framebuffer window
  
I started by creating a new cross-platform Qt framebuffer which was implemented almost completely until midterm evaluation. More information about my work in this period can be found [http://brlcad.org/wiki/User:Vladbogolin/GSoC2014/Midterm here].
+
I started by creating a new cross-platform Qt framebuffer which was implemented almost completely until midterm evaluation. More information about my work in that period can be found [http://brlcad.org/wiki/User:Vladbogolin/GSoC2014/Midterm here].
  
 
In the second part I worked at embedding a framebuffer window in the existing Qt display manager. Even though I encountered quite a lot of unexpected problems (bad drawings, drawings that disappeared) in the end I managed to successfully embed a framebuffer window. I can say that when I saw correct and permanent drawings made in mged I was really relieved and also really excited.
 
In the second part I worked at embedding a framebuffer window in the existing Qt display manager. Even though I encountered quite a lot of unexpected problems (bad drawings, drawings that disappeared) in the end I managed to successfully embed a framebuffer window. I can say that when I saw correct and permanent drawings made in mged I was really relieved and also really excited.
  
Apart from this task, I also added support for keyboard and mouse events and for using, reading and writing a colormap to the already implemented framebuffer.
+
Apart from embedding a framebuffer window, I also added support for keyboard and mouse events and for using, reading and writing a colormap to the framebuffer.
  
 
When it comes to the actual code, it can almost all be found in libfb/if_qt.cpp and libdm/dm-qt.cpp. As I predicted in the first part, in order to embed a frambuffer window another 800 lines of code were necessary.
 
When it comes to the actual code, it can almost all be found in libfb/if_qt.cpp and libdm/dm-qt.cpp. As I predicted in the first part, in order to embed a frambuffer window another 800 lines of code were necessary.
Line 15: Line 15:
 
=Results=
 
=Results=
 
As you can see from the below pictures the framebuffer is integrated with the raytracer and it can successfully display raytraced models.
 
As you can see from the below pictures the framebuffer is integrated with the raytracer and it can successfully display raytraced models.
http://i.imgur.com/BqYS7Mr.png
+
 
http://i.imgur.com/kFaMQk9.png
+
http://imgur.com/hOIryrt.png
 +
http://imgur.com/h3TLREb.png
  
 
When it comes to embedding a frambuffer window, I tested the behavior in both mged
 
When it comes to embedding a frambuffer window, I tested the behavior in both mged

Latest revision as of 14:52, 15 August 2014

Embedding a framebuffer window[edit]

The project can be split into two main parts:

  • Creating a new Qt framebuffer
  • Embedding a framebuffer window

I started by creating a new cross-platform Qt framebuffer which was implemented almost completely until midterm evaluation. More information about my work in that period can be found here.

In the second part I worked at embedding a framebuffer window in the existing Qt display manager. Even though I encountered quite a lot of unexpected problems (bad drawings, drawings that disappeared) in the end I managed to successfully embed a framebuffer window. I can say that when I saw correct and permanent drawings made in mged I was really relieved and also really excited.

Apart from embedding a framebuffer window, I also added support for keyboard and mouse events and for using, reading and writing a colormap to the framebuffer.

When it comes to the actual code, it can almost all be found in libfb/if_qt.cpp and libdm/dm-qt.cpp. As I predicted in the first part, in order to embed a frambuffer window another 800 lines of code were necessary.

Results[edit]

As you can see from the below pictures the framebuffer is integrated with the raytracer and it can successfully display raytraced models.

hOIryrt.png h3TLREb.png

When it comes to embedding a frambuffer window, I tested the behavior in both mged

Mged fb.png Mged fb4.png

and archer

Archer fb.png Archer fb2.png

More infos about the development process can be found on the log page