1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-06-30 12:14:08 +03:00

302 Commits

Author SHA1 Message Date
apl
d399d3c36b 0024725: AIS_TexturedShape - flag switching texture modulation mode does not work
- Missing code restored
- "vtexture" command improved to support texture modulation option

remarks from kgv
2014-03-20 13:47:23 +04:00
apl
5432891550 0024728: A lot of tests are crashed on vdump command on Windows in debug mode 2014-03-20 13:42:09 +04:00
apl
3dfe95cdb9 0024714: Camera integration - difference in behavior of V3d_View::SetSize
Restored behavior of SetSize method
2014-03-13 14:32:43 +04:00
kgv
67335dfc1e 0024719: Snapshots for bugs/vis/bug6145 are unstable
Use "new" Boolean operation instead of "old" one.
2014-03-13 09:36:02 +04:00
apl
197ac94e72 0024413: Visualization - get rid of projection shift from orthographic camera definition
From now on, the panning behavior of V3d_View completely corresponds to equal operations with camera. There is no more confusing "Center" property and "ProjectionShift" which were used to introduce composite panning, while respecting view referential points: At, Eye unchanged. The V3d_View::FitAll approach has been rewritten to do "fit all" geometrically, operating with frustum, to make it working for both orthographic and perspective projections.

1) Getting rid of ProjectionShift and Center property:
- Removed ProjectionShift property of Graphic3d_Camera.
- Removed confusing Center property of V3d_View (related to projection shift).
- Removed redundant code related to the Center property of V3d_View.
- Removed WindowLimit method of Graphic3d_Camera - no more used.

2) Improvements of fit all and selector:
- Improved FitAll operation of V3d_View and reused it in NIS_View - the perspective projection is now handled correctly.
- Revised code of Select3D_Projector class - can be defined with any given projection and model-view matrices.
- Modified StdSelect_ViewerSelector3d and ensured that panning, zooming and going into the view do not lead to unwanted re-projection of sensitives. The handling of perspective selection is revised.
- Take into account graphical boundaries of infinite structure on ZFitAll.

3) Improvements of camera:
- Introduced new z range scale parameter for V3d_View::AutoZFit. See, V3d_View::AutoZFitMode.
- Allow negative ZNear, ZFar for orthographic camera to avoid clipping of viewed model.
- Moved camera ZNear, ZFar validity checks to V3d_View level.
- Use more meaningful Standard_ShortReal relative precision for ZNear, ZFar ranges computed by ZFitAll.
- Use Standard_Real type for camera projection and orientation matrices.
- Extended camera to generate both Standard_Real and Standard_ShortReal transformation matrices using the same matrix evaluation methods and converted input parameters.

Correcting picking tests for perspective view

Modify v3d face test cases for 1px changes in face picking

Modified test cases for new arguments of vviewparams DRAWEXE command
2014-03-06 15:50:33 +04:00
apl
f376ac72de 0024622: Add method to AIS_TexturedShape class to assign texture data directly from byte stream
Added methods to specify Image_PixMap as texture source to AIS_TexturedShape and Graphic3d_TextureRoot.
Modified internal class MeshVS_ImageTexture2D, originally used for the purpose of sourcing texture as Image_PixMap.

AIS_TexturedShape class:
- Get rid from cdl declaration.
- Remove unused and uninitialized field myDeflection / method Deflection().
- Improve class documentation.
- Use Graphic3d_NOT_2D_UNKNOWN instead of -1.
- Use myIsCustomOrigin and myToScale flags to use/ignore custom values.
2014-03-06 15:48:03 +04:00
apn
d53ae65f65 0022912: After calling AIS_InteractiveContext::UnsetColor objects are drawn with the same color when transparency is changed
Added test case bugs/vis/bug22912
2014-03-06 15:48:02 +04:00
apn
cc88c2f65b Deleted TODO which is not reproduced in Debug mode. 2014-02-21 11:50:37 +04:00
apn
01ee00d90b Added QA command OCC24051 and test case bugs/vis/bug24051 for issue 24051. 2014-02-13 14:04:47 +04:00
apn
02fe718cde Added test case bugs/vis/bug23984 for issue 23984. 2014-02-13 14:04:44 +04:00
aba
8bb96a9760 0024358: TKV3d - connected structures are not re-computed on device lost
Graphic3d_StructureManager::ReComputeStructures() method was corrected to consider all child (connected) structures.
Corrected remarks: added image dump in test case; corrected method name.
2014-02-13 14:04:40 +04:00
aba
af203d549a 0024412: TKV3d, Dimensions - Possibility to customize text position was lost:
AIS_Dimension::GetTextPosition() and AIS_Dimension::SetTextPosition() methods were added.
Added possibility to set and unset text label alignment respectively to the attach points after text position changed.
Added test cases to check text positioning with dimension parameters and with setting 3D point.
Corrected DRAW commands vmovedim, vangledim, vdistdim, vradiusdim.
Corrections of AIS_Dimension::SetTextPosition(): aspect parameters are not changed inside it.
Layout mode was removed; test cases and vdimparams, vdimension  commands were corrected.
remarks: coding style, removing redundant code of LayoutMode enumeration.
2014-02-13 14:04:32 +04:00
kgv
6788f42398 0024555: Visualization - the same text is rendered with shift at second time
Font_FTFont::loadGlyph() - use the same flags as RenderGlyph(), FT_LOAD_NO_HINTING has been missed.

Test cases for issue CR24555
2014-01-30 14:20:31 +04:00
apl
51f8f60c7a 0024564: Select3D_SensitiveFace gives inaccurate picking depth for AIS_Plane (interior selection)
1) Used more accurate Select3D_SensitiveTriangulation instead of Select3D_SensitiveFace for rectangular sensitives in AIS_Plane::ComputeSelection, AIS_Dimension::ComputeSelection
2) Test case for CR24564
2014-01-30 13:39:14 +04:00
apl
f38896916f 0024569: AIS_InteractiveContext::Update(...) does not updates selection when changing AIS_Plane
1) Allow AIS_InteractiveContext::Update to check, re-project and recompute selection structures even if presentations are not "to be updated".
2) Test case bugs vis bug24569.

Small correction of test case for issue CR24569
2014-01-30 13:04:26 +04:00
bugmaster
82e10785dd Deleted TODO in unstable test case in Debug mode. 2014-01-24 13:57:48 +04:00
duv
b5ac8292b0 0024001: Stereographic rendering support
Deleted TODOs which were used when branch was built without OpenCL.
Modified test case bugs/vis/bug23747_2 (changed textured shape)
2014-01-23 14:46:06 +04:00
kgv
3b1817a9e2 0024521: Visualization - automatic back face culling is not turned on for Solids packed into compound
StdPrs_ToolShadedShape::IsClosed():
- return true if shape is closed Solid (NOT just free closed Shell)
- accept compound of closed Solids as well
- ignore Solids with incomplete triangulation

TKOpenGl, automatically disable back face culling when:
- clipping/capping planes are in effect
- for translucent objects

Update bug23227 test case (now back faces are clipped).

OpenGl_Workspace::AspectFace() - disable culling in case of hatched style
2014-01-20 14:45:35 +04:00
aba
e92240458e 0024388: Option to enable visualization of hidden lines in DRAW
Added additional snapshot dumping to /tests/bugs/vis/bug24388_2. Corrected bug24388_1. Corrected vhlr command.
2014-01-20 14:45:30 +04:00
apl
fe83e1ea69 0024389: Invalid hilight of AIS dimension line in local selection
- Fixed invalid presentation of dimension highlight.
- Fixed bug on switching between selection modes. Individual sensitive entities generated for each selection mode.
- Revised selection: AIS_DimensionSelectionMode enumeration added, redundant AIS_DimensionDisplayMode is removed.
- Revised entity owner usage: used standard SelectMgr_EntityOwner for neutral selection, AIS_DimensionOwner for "line", "text" selection modes.
- Made arrows selectable.
- Got rid of predefined arrow angle. The arrow angle is now taken from dimension aspect.
- The 3D text is now centered by bounding box for better alignment.
2013-12-12 19:36:47 +04:00
aba
eef7fc6447 0024391: Erased AIS object can not be displayed in AIS_InteractiveContext after AIS_InteractiveContext::Remove(): added presentations removing after presentable object is removed from context.
vremove command was corrected. Test case was corrected.

few mistakes corrected
2013-12-12 19:36:44 +04:00
bugmaster
6c7ddf00ce Adjusting test cases for current state of OCCT
1. Modified test cases to improve using of Japanese characters
bugs vis bug22149
bugs vis bug22796_2

2. Modified test case bugs vis bug23813 to avoid regression caused by using vdump command with non-default parameters on remote PCs
bugs vis bug23813

3. Behavior change of test case de iges_2 B1 in DEBUG mode on Linux and Windows platforms (OCC24442)
de iges_2 B1
2013-12-06 15:41:07 +04:00
dbv
9e8804b6db 0024420: Add methods to switch the type of sensitivity in AIS_Circle and AIS_Plane
Added methods to AIS_Circle and AIS_Plane for switching type of sensitivity
By default AIS_Circle and AIS_Plane have boundary sensitivity
2013-12-06 13:10:44 +04:00
kgv
7470608360 0023813: TKOpenGl, OpenGl_Texture ignores stride image property
Added test case tests/bugs/vis/bug23813
2013-11-28 14:55:51 +04:00
apl
9f37b47ddd 0024396: "vselmode" - disable auto loading of objects into Local Context
Corrected DRAWEXE "vselmode" command.
Added test case.

corrected test cases

- 24293 failed due to initialization view without "name".
- 24374 adjusted, the test case was initially incorrect.

Modified test cases bugs/vis/bug24293 and bugs/vis/bug24374
2013-11-28 11:33:47 +04:00
bugmaster
142a761f11 Correction of testing case for issue 24374 2013-11-21 17:37:12 +04:00
aba
0f8c0fb8c8 0024374: Flipping affects highlight presentation of dimension. Model-view matrix restoring in immediate mode was added in OpenGl_Flipper::Render() method. Test case was added. 2013-11-21 17:35:16 +04:00
apl
1d7ca641c7 0024351: Test cases for AIS dimension presentations to check arrow orientation, text position
- Added test cases to check label and arrows positioning of AIS length, angle, radius, diameter dimensions;
- Added new arguments to "vdim" command to modify "flyout", "arrow orientation", "label position" properties;
- Corrected bug: duplication of text label of linear dimensions for the horizontal-centered text.
- Rename and revise argument interface of "vdimension" (vdim) command.
- Correct test cases for new command name and arguments style.

corrected test cases - check with testdiff instead of "checkcolor"
2013-11-21 17:30:40 +04:00
apl
d7bffd44ea 0024326: Get rid of confusing extension line
1) Removed confusing part of labeled extension for 3d text.
2) Removed unused "TextOffset" property of AIS_Dimension class, revised function of "ExtensionSize" property.
3) Added options to specify automatic or user-defined arrow orientation and value label positioning to dimension aspect enumerations.
4) Use proper naming: Prs3d_DimensionTextVerticalPosition, Prs3d_DimensionTextHorizontalPosition instead of Prs3d_HorizontalTextAlignment, Prs3d_VerticalTextAlignment.
Correction of label length computing method.
2013-11-21 17:28:17 +04:00
aba
938d454409 0024288: Provide flipping text for AIS_Dimensions
- OpenGl_Flipper class added to provide text flipping.
  - Added Graphic3d_Mat4, OpenGl_Mat4 definitions for use with TKOpenGl matrix types.
  - Added flipping parameters for dimensions with 3D text labels at AIS_Dimension class.
  - Test cases.
2013-11-21 17:25:01 +04:00
aba
62b6361a46 0024293: Dimension extensions don't belong to the dimension sensitive entity: computeFlyoutSelection() method was added in AIS_Dimension and AIS_AngleDimension classes. 2013-11-21 17:22:34 +04:00
kgv
64c759f898 0024350: TKOpenGl - non-physical materials are ignored by GLSL program manager
GLSL and Ray Tracing - take into account non-physical materials.
Move Ray Tracing test cases to v3d/raytrace grid.
2013-11-14 12:53:13 +04:00
bugmaster
38962ba6f3 Update testing cases due to changes of issue 24130 2013-11-06 10:41:38 +04:00
abv
6a0964c23e 0024316: Make building with different versions of Tcl easier
On Windows with MSVC Tcl library is linked using #pragma statement instead of using project properties, to allow easy switch between Tcl versions. In gendoc.bat, tclsh.exe is called instead of tclsh86.exe, to avoid dependency on hard-coded Tcl version.

Tcl-dependent code (unused functions) removed from QABugs package.
2013-11-05 10:20:00 +04:00
abv
821edd22a9 Ray tracing activated in bottle sample if available; test bugs vis bug21753 added 2013-11-05 10:19:59 +04:00
abv
e91d202a72 Test bugs vis bug24130 should be OK when OpenCL is present, corrected 2013-11-05 10:19:57 +04:00
apn
4e3aa6b76e 0024223: Review of unstable test cases
Modified TODOs in unstable test cases
2013-11-01 10:39:46 +04:00
aba
a6eb515f9d 0024133: Development of improvement of dimensions implementation; new length, radius,diameter and angle dimensions.
Some corrections; test cases were added; coding standards in MFC samples & presentations
Request stencil buffer for Linux.
correct test cases; correct compilation errors
compilation warnings (gcc/Linux)
2013-10-31 18:02:17 +04:00
dbp
e276548b09 0024130: Implementing ray tracing visualization core
The purpose of this functionality is to bring a basic ray-tracing solution to existing OCCT visualization toolkit (TKOpenGL).
Currently ray-tracing visualization core supports sharp shadows, specular reflections, transparency and adaptive anti-aliasing.
However, the basis for all ray-tracing algorithms is versatile, allowing you to add new ray-tracing features easily (such as ambient occlusion).
All ray-tracing computations are performed on the GPU using OpenCL framework, allowing real-time rendering performance.

It is important to note, that real-time ray-tracing is possible using high-performance GPUs with support of OpenCL 1.1 and higher (such as NVIDIA GeForce 660 or ATI/AMD Radeon 7850).
When using low-end GPUs (such as NVIDIA GeForce 640) the ray-tracing performance may slow down significantly.
Therefore, even with NVIDIA GeForce 640 you can render scenes with the millions of triangles. The support of OpenCL-enabled CPUs and integrated graphics cards is not guaranteed.
2013-10-31 18:02:12 +04:00
kgv
9447f91258 0024282: Shaded presentation is not computed due to exception in StdPrs_ToolShadedShape::Normal()
Fix gp_Dir initialization with zero modulus
StdPrs_ToolShadedShape::Normal() - reduce code duplication
Test cases for issue CR24282
2013-10-31 13:30:01 +04:00
apl
b859a34d22 0024224: Suspicious logics in changing clipping planes at OpenGl_Structure
1) Resolved buggy situation of shared clip planes between view and structure;
2) Added clipping plane equation space identification - to be used with shaders;
3) Code refactoring to resolve performance issue reported by 0024189;
4) Attachment of stencil buffer to FBO.

Added test case bugs/vis/bug24224
2013-10-10 17:15:53 +04:00
apn
8be24f106b Removing test case bugs/vis/buc60547 according to issue 23922 (test is meaningless and it sometimes hang-ups) 2013-10-10 17:09:04 +04:00
dbv
fc73450dcd 0024231: Test case update for bug 23654
Test case update
2013-10-10 17:09:01 +04:00
dbv
eb4320f2d9 0023654: Problem with displaying vertices in OCC view after closing all OCC views and opening new one
Fixed graphic structure recompute after closing view.
Removed collector and all corresponding logic and methods from AIS_InteractiveContext.
Method AIS_InteractiveContext::Erase() now hide object from viewer without deleting resources.
Erased objects now properly recomputed after closing view.
Samples update
Removed useless method AIS_InteractiveContext::EraseMode()
Documentation update
Warnings fix
Regressions fix
2013-10-03 14:12:16 +04:00
kgv
abe4607711 0024148: Test case bugs/vis/bug24131_markers works wrong on software MS OpenGL
Add pre-rendered images for custom markers.
OpenGl_Window - drop overcomplicated find_pixel_format() function
OpenGl_Caps - add option to force software OpenGL imlementation (MS or Apple)
Remove TODO from test case
Add grayscale custom marker to the test
Correct color bitness in attributes list
2013-09-26 20:22:05 +04:00
apn
e97ea58f01 0024201: Remove TODO "Tcl Exception: File aaa.stl could not be found" and similar ones 2013-09-24 12:49:19 +04:00
apl
4269bd1b11 0024070: OpenGL capped object-level clipping planes
Graphical clipping:
- Use "Graphic3d_ClipPlane" to defined clipping for PrsMgr_PresentableObject (local clipping), for V3d_View (global clipping).

Get rid of old implementations:
- Remove Visual3d_ClipPlane.
- Port V3d_Plane to Graphic3d_ClipPlane core.

Selection Sensitives:
- Port "Matches" method to add full set of arguments (SelectBasics_PickArgs), including min-max depth coming from selector.
- Get rid of transient data for pair Matches -> ComputeDepth.
- Extend SelectMgr_ViewerSelector::LoadResult to work with local clipping, add virtual callbacks to compute globa/local depth clipping for picking.

Capping rendering algorithm:
- Recursive rendering algorithm for OpenGl_Groups.
- Introduced Rendering filter for groups.

Clipping plane management in TKOpenGl:
- Added OpenGl_ClippingState to OpenGl_Context.

DRAWEXE commands:
- Ported "vclipplane" command for new approach.
- Added "vsettexturemode" command for changing texture details in views (enable / disable textures).

Correct DownCast syntax (compilation error)

Fix new compiler warnings

tests/bugs/vis/bug22906 migrated to the new vclipplane syntax
2013-09-20 12:09:54 +04:00
apn
c7a422d893 0024182: It's necessary to add TODO in test cases to avoid known regressions and improvements on MacOS 2013-09-20 12:09:48 +04:00
apn
3cdfdc9a2b 0024156: It's necessary to add TODO in test cases to avoid known regressions on MacOS 2013-09-12 14:18:28 +04:00
apn
f23d022c2f Correction of testing case due to regression in Debug mode caused integration fix for issue 24131 2013-09-06 11:36:03 +04:00