1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00
Commit Graph

3166 Commits

Author SHA1 Message Date
isk
b7624e93b5 0025464: Visualization - provide package for Volume Rendering.
Add type definitions for BVH_Box.
Add a new method NCollection_Vec3::Convert.
Add define occTexture1D/3D in Declarations.glsl.
2016-08-29 13:35:04 +03:00
dbp
e367fede31 Update BVH to support extended metadata. 2016-04-22 14:26:21 +03:00
isk
9d43c8ef61 Release FBO resources in OpenGl_GrabDepthElement::Release(). 2016-03-25 12:44:57 +03:00
isk
4746883373 Fix MeshVS_TextPrsBuilder 2016-03-25 12:44:57 +03:00
isk
2b12eb862a Fix Path Tracing trouble. 2016-03-25 12:44:57 +03:00
isk
a33b35dd1f fix CR0002618: use Camera() instead of myCamera 2016-03-25 12:44:57 +03:00
isk
a7dabcc955 Fix errors. 2016-03-25 12:44:57 +03:00
omy
ef51767a6c Added getters for Graphic3d_Fresnel's data
(cherry picked from commit cccf89f361)
2016-03-25 12:44:57 +03:00
duv
dff5c981af filtering fix
(cherry picked from commit 45dd1259a3)
2016-03-25 12:44:57 +03:00
isk
a38e6170cc 0026434: Visualization - Textured objects should have priority over the environment mapping.
Add handle on environment texture in OpenGl_Workspace.
Add a new parameter UseEnvironmentTexture to the Graphic3d_ZLayerSettings.
OSD layers don't use environment texture by default.
zbuffertrihedron doesn't use environment texture.
vzlayer can enable/disable environment texture mappping.

Delete unnecessary files Graphic3d_TypeOfSurfaceDetail.hxx and V3d_TypeOfSurface.hxx.
Delete functions SurfaceDetailType and SetSurfaceDetailType functions from Graphic3d_CView.
Delete functions SurfaceDetailState and UpdateSurfaceDetailStateTo from OpenGl_ShaderManager.
Delete class OpenGl_SurfaceDetailState.
Delete functions SurfaceDetailType and SetSurfaceDetailType from OpenGl_View.
Delete functions SetSurfaceDetail and SurfaceDetail() from V3d_View.
Delete functions SetDefaultSurfaceDetail and DefaultSurfaceDetail from V3d_Viewer.
Delete draw command VSetTextureMode.
2016-03-25 12:44:57 +03:00
isk
33238608fb 0026432: Improving Path Tracing functionality
Samples per pixel parameter added. Simple filtering added. Lights fixed. Max radiance parameter.
2016-03-25 12:44:57 +03:00
dbp
6bb12a9bfa TKMeshVS fixes for AVD
(cherry picked from commit 80f5efa1d0)
2016-03-25 12:44:57 +03:00
duv
461fb9c4be 0002618: Visualization - choose better center of gravity for camera rotation operations
Gravity point set to camera center.
2016-03-25 12:44:57 +03:00
dbp
3323aa8e5c Add missing file. 2016-03-25 12:44:57 +03:00
isk
dc834db34c 0025464: Visualization - provide package for Volume Rendering.
Add two functions OSD_OpenStream for std::ifstream.
Add four functions SetUnfirom in the OpenGl_ShaderProgram for 64-bit unsigned integer variables.
Add OpenGl_Texture::Init3D.
Update Declarations.glsl.
2016-03-25 12:44:57 +03:00
duv
a4c29e8425 OpenGl_Texture API extended. 2016-03-25 12:41:49 +03:00
abv
d3013f55a0 0027206: Inconsistent and obsolete information in persistence documentation and Release Notes
Technical docs are reviewed to:
* update references to page with third-party products
* update description of persistence, handles, and RTTI according to changes in OCCT 7.0
* remove references to CDL, WOK, and WOK-generated stuff
* update the list of environment variables
V7_0_0rc
2016-03-04 15:03:05 +03:00
bugmaster
71b471d7b8 Incrementation OCCT version up to 7.0.0 rc 2016-03-04 15:02:14 +03:00
ysn
1454243292 0027218: Add information about porting from earlier versions in update guide
Added:
- porting notes for earlier versions starting with 6.5;
- section about zoom persistent selection
2016-03-04 14:44:23 +03:00
abv
72c3745808 0027193: Describe building OCCT with genproj tool
Description of building OCCT with WOK and automake scripts is removed from documentation.
Use of genproj utility is described in pages on building with MSVC, Code::Blocks, and XCode projects.

New script genconf allows starting configuration GUI explicitly; dialog is slightly revised.
Script genproj.sh is renamed to genproj; permissions for scripts are corrected for Linux.

Script env.bat does not set anymore environment required for Products.
2016-03-04 14:44:22 +03:00
myn
ff205346c9 0026961: Recover possibility to read files in old persistence format
Possibility to read shapes and OCAF documents from old persistence format (Std and StdL schema) is restored.

Test cases used old persistent files on input are restored with suffix "_std"

Removing toolkit from OS package
2016-03-04 07:31:08 +03:00
duv
1d8656890c 0026571: Visualization, TKOpenGl - write depth values within RayTracing program
View-projection matrix was added to raytrace shaders (as uniform) in order to compute correct depth values for OpenGL.
For path tracing the additional depth buffer sampler was added to Display.fs program. It allows propagation of depth values from internal FBO to resulting FBO.
The old approach of mixing of OpenGL and ray-tracing graphics was kept in order to keep correct blending of transparent ray-traced objects with non-transparent OpenGL objects.
2016-03-04 07:31:07 +03:00
ysn
251a79847b 0027216: Review the documentation before the final release.
Some pre-release updates, reviewing and implementation of some adequate remarks from JMA:
- redundant chapters in IGES and STEP guides
- proofreading of recent insertions in Draw, and tests guides
- mathjax information
- data, version, addresses, system requirements in overview.md

Corrections
2016-03-04 07:31:06 +03:00
kgv
7c65581dd3 0027197: Configuration - fix compilation issues when using mingw
AIS_ColorScale, AIS_Dimension - the protected method DrawText()
has been renamed to drawText() to avoid name collisions with macros.

_MSC_VER/_WIN32 misuse has been fixed in several places.
Header <malloc.h> is now included where alloca() is used.
Draw_Window - dllimport flag has been dropped from inline methods.

TKernel - mandatory dependencies Winspool.lib and Psapi.lib
are now linked explicitly (instead of msvc-specific pragma syntax).

CMake scripts - the option -std=c++0x has been replaced by -std=gnu++0x
for mingw to allow extensions (like _wfopen() and others).
The minimum Windows version has been set to _WIN32_WINNT=0x0501.
Invalid options "-z defs" and "-lm" have been dropped for mingw.
Flag --export-all-symbols has been added to CMAKE_SHARED_LINKER_FLAGS
to workaround missing vtable symbols when using mingw.
FreeType is now linked explicitly on Windows.

Draw::Load() - "lib" suffix is now prepended on mingw as well.

Drop redundant declaration of _TINT from OSD_WNT_1.hxx.
NCollection_UtfString::FromLocale() - platform-specific code has been moved to .cxx file.
Draw_BasicCommands - fixed incorrect mingw64 version macros.

genproj, cbp - added workaround for process argument list limits on Windows.
TKSTEP linkage is failing on this platform due to too long list of files.
The list of object files to link is now stored in dedicated file which is passed to gcc.

Option "-z defs" removed from CMake linker options to avoid problems when building with different configurations of VTK on Linux

Some MinGW-specific compiler warnings (potentially uninitialized vars, use of NULL, parentheses in conditional expressions) are fixed (speculatively)
2016-03-04 07:31:05 +03:00
kgv
8582eb08cc 0027198: OSD_Environment - use wide characters API on Windows 2016-03-04 07:31:04 +03:00
gka
5df609e75d 0026827: Position and orientation for GD&T frames
Implementation of graphical annotations of the PMI read from STEP
2016-03-04 07:30:38 +03:00
abv
cb72870231 0027196: CMake - avoid setting option -EHa for compilers other than MSVC
Option -EHa is now added only if MSVC is defined.

Descriptions of option -fp:precise in CMake and method OSD::SetSignal() in header file are updated.
2016-03-03 14:17:22 +03:00
vpa
114b7bf18f 0027180: Visualization - improve selection logic of MeshVS_Mesh
MeshVS_Mesh selection logic in MeshVS_SMF_Mesh mode (entire mesh) has been optimized.
MeshVS_Mesh::ComputeSelection() now creates single sensitive entity
MeshVS_CommonSensitiveEntity (new class) instead of small sensitive entity on each element.
MeshVS_SensitiveQuad (new class) and Select3D_SensitiveTriangle are used instead of Select3D_SensitiveFace for local selection to reduce memory consumption when possible.
2016-03-03 14:17:17 +03:00
jgv
bd5160a5fa 0027207: New universal method for extracting of results of work of HLRBRep_Algo algorithm
New method HLRBRep_HLRToShape::CompoundOfEdges with options:
- type of resulting edge
- visibility
- 3d/2d
has been added.

Minor correction of comments
2016-03-03 14:17:11 +03:00
kgv
4a535d3fd6 0026969: Visualization - support custom vertex attributes in GLSL program
Graphic3d_TypeOfData - added Graphic3d_TOD_FLOAT for passing single-float vertex attributes.
Graphic3d_TOA_CUSTOM - changed value to increase the range for custom vertex attributes locations (to fit into hardware limits).
Graphic3d_ShaderProgram::SetVertexAttributes() - introduced API for defining custom vertex attributes.

For compatibility with automated wrappers:
- Graphic3d_Buffer::Init() - added prototype taking NCollection_Array1<Graphic3d_Attribute> instead of C array
- Graphic3d_IndexBuffer::InitInt32() - added typed initialization method.
- Graphic3d_ShaderProgram::PushVariableVec3() and others - added typed methods to push uniform varibales.
2016-03-03 14:17:06 +03:00
Benjamin Bihler
9d55d9b0be 0027208: Show method in Message_ProgressIndicator::NewScope should not be commented out
Undone commenting out of Show method
2016-03-03 14:17:02 +03:00
abv
b508cbc59f 0026338: STL export (especially binary) needs a lot of time if selected export path is not local
Method StlAPI_Writer::Write() is reimplemented to write triangulation directly, without conversion to StlMesh_Mesh.

New DRAW command "tessellate" is added to generate rapidly triangulation of prescribed size (on surface).

Command "tricheck" is protected to deal correctly with triangulation without UV data.

New tests added: perf de bug26338_1 and _2; bugs stlvrml bug26338

Correction of testing environment
2016-03-03 14:16:57 +03:00
bugmaster
6396eacb4f 0024665: A sample for advanced function mechanism
Update for Linux platform
2016-02-25 17:08:20 +03:00
bugmaster
c19f09e973 Correction misprinting 2016-02-21 08:39:14 +03:00
aml
db2a696d96 0027135: Incorrect result of the normal projection algorithm
New check for possible local traps was added to build correct projection cache.
2016-02-20 19:13:11 +03:00
apn
c2c9890c68 0027152: Undefined symbols in library TKernel.so using clang compiler
Added ldl dependency for TKernel only (other toolkits were checked, no undefined symbols)
Added  option "-z defs" for linking on Linux
Added lm dependency for all toolkits
2016-02-20 18:43:49 +03:00
oan
aff123698b 0024594: Missing surfaces from STL output (second example)
Added test case
Small corrections of test case
2016-02-20 18:43:48 +03:00
jgv
0285a40010 0027159: Section between two faces is lost
Minor correction of test case

Another small correction of test case

One more correction of test case
2016-02-20 18:43:47 +03:00
ysn
dcb359e0ad 0027177: Review of recent additions in tests.md
Document corrected, warnings fixed.
2016-02-20 18:43:46 +03:00
oan
746f1ceb10 0025045: STEP Import fails to find all surfaces
Added test case
Small corrections in test case
2016-02-20 18:43:45 +03:00
oan
183acc2f10 0024593: Missing surfaces from STL output
Added test cases
Small corrections of test cases
2016-02-20 18:43:44 +03:00
jgv
3bfd1ba8f2 0026985: Wrong section between two faces: it has a gap 2016-02-20 13:04:34 +03:00
ibs
c1425a3f51 0027138: Configuration, Cmake - incorrect binaries installation path for single generators
specify a path for toolkit shared library
2016-02-20 13:04:33 +03:00
nbv
3906794761 0027035: General fuse algorithm loses face
The main reason of the bug is incorrect check, if the edge is seam-edge or not.
In the fix it is determined with new methods in GeomLib class.

The bug is fixed.

Creation of test case for this fix

Small correction in the code
2016-02-20 13:04:32 +03:00
vro
aff5997de8 0024665: A sample for advanced function mechanism
PRO file is added + a description of how to generate the Visual Studio projects and compile.
In addition, the sample folder is renamed to FuncDemo.

Adding 64 bit configuration to VC projects
2016-02-20 13:04:31 +03:00
vpa
a7d4dd9489 0026231: Visualization - Update description of selection algorithm in the user's guide
- updated description of selection mechanism in sections occt_visu_2_2, occt_visu_3_2_4 and occt_visu_3_6;
- unnecessary images were removed.

New Selection section  reviewed.

Semantic corrections
2016-02-20 13:04:30 +03:00
abv
a9dde4a31b 0027104: DownCast() cannot return null for mismatched handle
Method DownCast() is made template, to be available only when argument is actually a pointer or handle to a base class.

For compatibility with existing code, method DownCast() that can be used for the same type, derived, or unrelated class (i.e. where there is no actual down casting) is still available, its use shall cause "deprecated" compiler warning.

OCCT code is updated to remove meaningless DownCast()s; a few places where DownCast() was used with argument of unrelated type are corrected.

DRAW command QAHandleCast is removed (it was useful only during redesign of handles).
2016-02-20 10:10:15 +03:00
abv
5d351a0822 0026549: Provide move constructors and operators for basic classes
Move constructor and operator added for opencascade::handle<>
2016-02-20 10:10:13 +03:00
abv
4796758e8d 0027111: Add generalized copy constructor in handle class for old compilers
Copy constructor and assignment operator from handle of derived type is added in handle class.
They are enabled only if macro OCC_HANDLE_NOCASTS is defined, and operators of cast of handle to reference to handle to base type are disabled in that case.

Useless type casts to handle to base type are removed in GC and GCE2d classes.
Code returning reference to handle from function is corrected to return it either by value or as reference to handle of actual type.
2016-02-20 10:10:12 +03:00
abv
aa00364da7 0026377: Passing Handle objects as arguments to functions as non-const reference to base type is dangerous
Operator of cast to non-const reference is declared deprecated to produce compiler warning if used (usually implicitly).

OCCT code is updated to avoid that cast, occurring when function accepting non-const reference to handle is called with handle to derived type.
For that, local variable of argument type is passed instead, and down-cast is used to get it to desired type after the call.
A few occurrences of use of uninitialized variable are corrected.
2016-02-20 10:10:11 +03:00