View Issue Details

IDProjectCategoryView StatusLast Update
0021902Open CASCADEOCCT:Visualizationpublic2015-11-01 12:47
ReporterpsnAssigned Tokgv  
PrioritynormalSeveritytrivial 
Status closedResolutionfixed 
OSAll 
Fixed in Version6.5.0 
Summary0021902: Improve by capability to make off-screen snapshots of 2d, 3d, and axo viewers
DescriptionOne of existing drawbacks of test system used for certification of OCCT is
necessiry to run tests on dedicated workstation, since snapshots of 3d viewer
can be made only from existing GUI window shown on the screen. This makes
workstation running this kind of tests unusable for normal work
(due to regularly popping windows), and impossibility to run several tests in
parallel (as windows overlap each others and overlapped fragments get to
snapshot).
Additional information
and documentation updates
Documentation remark, added by KGV 2010-11-09 14:03:45:

New features:
3rd-party library FreeImage(Plus) used for image processing
to provide build-in support of popular formats
JPEG, PNG, GIF, BMP and should replace all obsolete code
for image load/dump in the future.
Currently used to save images from Window / OpenGL context.

- New DRAWEXE command v2ddump to perform dump of 2D-viewer.

- DRAWEXE vdump command now allows to dump color buffer with alpha channel
  and depth buffer.

- DRAWEXE xwd command now implemented for Windows systems too.
Improvements:
- DRAWEXE, batch mode improvements (launched with -f Script.tcl
  or with -v flag):
    a) suppress Tk/Tcl control window;
    b) suppress viewer window (commands view, axo, smallview and so on);
    c) suppress 3D-Viewer (OpenGL) window (commands vinit, vdisplay and so on);
    d) suppress 2D-Viewer window (commands v2dinit, v2ddisplay and so on).
  Drawing to these windows performed into offscreen buffer, thus dump should work.

- DRAWEXE xwd and vdump command now perform dump into JPEG, PNG, GIF, BMP formats.
  Notice: XWD format support was removed!

- DRAWEXE 2D-Viewer (v2dinit) and 3D-Viewer (vinit) now could be used simultaneously
  on Windows systems (fixed duplicated class registration).

- V3d_View::Dump() and V3d_View::ToPixMap() methods now use hardware accelerated
  offscreen buffer if available (required OpenGL2+ compatible GPU and up-to-date
drivers).

- Fixed method StdSelect_ViewerSelector3d::UpdateProj()
  to update parameters in first call (not second+).
Modified entities:
- Class Aspect_Window, new methods IsVirtual() and SetVirtual()
  to specify 'virtual window' wich doesn't shown on display but
  say that it do. Used for offscreen rendering.

- Class Draw_Window, compress argument was removed from method Save()
  Method now implemented for Windows systems too.

- Classes Graphic3d_GraphicDriver, OpenGl_GraphicDriver, Visual3d_View
  new methods for offscreen buffer control:
    FBOCreate();
    FBORelease();
    FBOGetDimensions();
    FBOChangeViewport();
  new dump method:
    BufferDump();

- Class ViewerSelector3d, removed InitProj() method.

- New class Image_PixMap which implements system-independent image-buffer
  control. Currently 3rd-party library FreeImage(Plus) is used.

- Enumeration TypeOfImage was extended with new values:
    TOI_RGB,
    TOI_RGBA,
    TOI_RGBF,
    TOI_RGBAF,
    TOI_FLOAT
  which indicate Image_PixMap image type.

- Class V3d_View, method ToPixMap() was changed.
  Buffer type can be specified from TypeOfImage enumeration
  (notice, TOI_FLOAT currently means Depth buffer!).
  System-independent Image_PixMap now returned.

- TKDraw package now depends on TKService.

- TKService package now depends on FreeImage(Plus) library.

- struct CALL_DEF_VIEW was extended with field
    void* ptrFBO
  to store offscreen frame buffer object which should be used for rendering
  when set.

- New class OpenGl_FrameBuffer implements offscreen Frame Buffer Object in OpenGL.
TagsNo tags attached.
Test case number

Attached Files

  • psn_OCC21902_v1.tar.gz (212,841 bytes)
  • psn_OCC21902_v2.tar.gz (216,055 bytes)
  • kgv-OCC21902-v1.tar.gz (195,287 bytes)
  • kgv-OCC21902-v2.tar.gz (195,282 bytes)
  • kgv-OCC21902-v3.tar.gz (210,229 bytes)
  • kgv-OCC21902-v4.tar.gz (223,070 bytes)
  • kgv-OCC21902-v5.tar.gz (240,775 bytes)
  • kgv-OCC21902-v6.tar.gz (238,468 bytes)
  • kgv-OCC21902-v7.tar.gz (260,436 bytes)
  • kgv-OCC21902-v8.tar.gz (534,288 bytes)
  • kgv-OCC21902-v9.tar.gz (534,290 bytes)
  • kgv-OCC21902-v10.tar.gz (650,876 bytes)
  • ViewerTest-occ21902.tgz (52,437 bytes)

Relationships

related to 0003714 closedbugmaster Open CASCADE Quality of image created by V3d_View::ToPixMap() is pretty low 
related to 0022782 closedbugmaster Open CASCADE Uninitialized global variable used in conditionals in OpenGl package 

Activities

2010-07-13 17:38

 

psn_OCC21902_v1.tar.gz (212,841 bytes)

2010-07-28 15:39

 

psn_OCC21902_v2.tar.gz (216,055 bytes)

2010-11-09 14:02

 

kgv-OCC21902-v1.tar.gz (195,287 bytes)

2010-11-10 11:50

 

kgv-OCC21902-v2.tar.gz (195,282 bytes)

2010-11-10 15:24

 

kgv-OCC21902-v3.tar.gz (210,229 bytes)

2010-11-11 13:14

 

kgv-OCC21902-v4.tar.gz (223,070 bytes)

2010-11-13 12:26

 

kgv-OCC21902-v5.tar.gz (240,775 bytes)

2010-11-15 16:07

 

kgv-OCC21902-v6.tar.gz (238,468 bytes)

2010-11-24 16:46

 

kgv-OCC21902-v7.tar.gz (260,436 bytes)

2011-01-21 13:01

 

kgv-OCC21902-v8.tar.gz (534,288 bytes)

2011-01-21 13:38

 

kgv-OCC21902-v9.tar.gz (534,290 bytes)

2011-01-21 17:11

 

kgv-OCC21902-v10.tar.gz (650,876 bytes)

2011-01-23 22:25

 

ViewerTest-occ21902.tgz (52,437 bytes)

Issue History

Date Modified Username Field Change
2010-07-13 18:31 bugmaster Assigned To bugmaster => psn
2010-07-13 18:31 bugmaster Status new => assigned
2010-09-01 13:51 bugmaster Assigned To psn => kgv
2010-09-10 18:27 san BugsThisDependsOn => 3714
2010-09-10 18:44 san CC => szv, abv
2010-12-01 13:51 bugmaster Status assigned => resolved
2010-12-01 13:51 bugmaster Status resolved => tested
2011-01-18 15:18 bugmaster CC => apv
2011-01-21 16:26 bugmaster Status tested => verified
2011-08-02 11:24 bugmaster Category OCCT:VIZ => OCCT:Visualization
2012-01-10 15:40 atp Description Updated
2012-01-10 15:40 atp Additional Information Updated
2012-02-21 10:25 kgv Relationship added related to 0022782