1. Method "SetValues()" for gp_Trsf2d class is added.
2. Method Orthogonalize for gp_Trsf2d and gp_Trsf classes was added.
3. Unused arguments from "SetValues()" method for gp_Trsf was deleted.
4. Output of AppParCurves_MultiPoint Dump was corrected.
5. Method of right projected point choosing was corrected in ProjLib package.
6. Some test cases were changed according to their new behavior.
OSD::SetSignal() called with Standard_False argument to have FPEs disabled.
Test cased modification:
de step_4 G7 - fixed reference data.
de iges_2 H9 - Fixed reference data. According to input file, there are big tolerance edge and surface, which leads to big tolerance in ref data, result and image has changed due to usage of these shapes instead of omitting them.
de end - changed behavior in case of big isolines, now isolines not break fit command in certain places.
Modeling algorithms:
Fixed 0.0 / 0.0 uncertainty in circle to quasi-angular bspline conversion.
Correction of test cases for issue CR24589
Reading of .brep is slow down on VS2011 due to problems in realization reading ASCII strings to real. Implementation of dedicated function for reading of reals was implemented
Modifications in Edge/Edge intersection algorithm:
1. Condition to create common part of type TopAbs_EDGE is changed.
2. Correct treatment of closed edges.
Small correction to eliminate warning.
Test case for issue #25237
New class AIS_PointCloud for displaying point sets.
Update Graphic3d_ArrayOfPoints, OpenGl_PrimitiveArray and OpenGl_VertexBuffer classes to be able to use normals for points.
Add Draw Harness command vpointcloud.
Add test case v3d/point_cloud/sphere.
Move protected method AIS_Shape::DisplayBox() to public function StdPrs_WFDeflectionRestrictedFace::AddBox().
Small correction of grids.list for v3d tests
1. class BOPDS_Iterator
method:
void BOPDS_Iterator::Intersect()
The ttreatment of solid/* interferences has been added.
2 class BOPAlgo_PaveFiller
protected methods:
void BOPAlgo_PaveFiller::PerformVZ()
void BOPAlgo_PaveFiller::PerformEZ()
void BOPAlgo_PaveFiller::PerformFZ()
void BOPAlgo_PaveFiller::PerformZZ()
has been added.
The methods are to Compute
Vertex/Solid
Edge/Solid
Face/Solid
Solid/Solid
interferences.
3. class BOPAlgo_PaveFiller
protected method:
void BOPAlgo_PaveFiller::PerformFF()
Empty interferences has not been added in the interferences' table
4. class BOPAlgo_CheckerSI
protected methods:
void BOPAlgo_CheckerSI::PerformVZ()
void BOPAlgo_CheckerSI:PerformEZ()
void BOPAlgo_CheckerSI::PerformFZ()
void BOPAlgo_CheckerSI::PerformZZ()
has been removed.
5. class BOPAlgo_BOP
protected method:
void BOPAlgo_BOP::BuildRC()
void BOPAlgo_BOP::BuildSolid()
changed to treat non-interferred solids and keep it in the result as they were
Test case for issue #25242
STEPConstruct_AP203Context = pw_gecos member of passwd struct disabled in android case.
Standard_Atomic - correct usage of __atomic_inc()/__atomic_dec().
Standard_CLocaleSentry - Android doesn't support locales in the C library.
Standard_MMgrOpt - use "/dev/zero" and "/dev/null" for allocation of memory blocks on Android.
OSD_Chronometer - fix compilation on Android.
OSD_Disk, OSD_signal - fix headers inclusion on Android.
Inherit NCollection_Buffer from Standard_Transient, do not use incomplete NCollection_Handle.
OpenGl_Context, add methods ActiveProgram(),BindProgram()
to manage currently active GLSL program.
Add method ::ToUseVbo().
OpenGl_ShaderProgram, setup locations of pre-defined vertex attributes
occVertex, occNormal, occTexCoord, occColor before linkage.
Remove methods OpenGl_ShaderProgram::Bind(), ::BindWithVariables()
and ::Unbind() - OpenGl_Context::BindProgram() should be used instead.
Introduce class OpenGl_VertexBufferCompat, which emulates VBO
behavior on systems without VBO (compatibility with broken OpenGL drivers on Windows).
OpenGl_PrimitiveArray - use OpenGl_VertexBufferCompat when VBO is unavailable,
remove duplicated code. Use OpenGl_VertexBuffer::HasNormalAttribute()
method to activate lighting.
OpenGl_Text - use OpenGl_VertexBufferCompat, eliminate duplicated code.
Changes in OpenGl_VertexBuffer, drop methods BindFixed()/UnbindFixed().
Superseded by new methods BindAllAttributes()/UnbindAllAttributes()
which handle active GLSL program, when it is set.
user sees just dirs of libs, shared libs and headers of 3rdparty products
documentation updated
3rdparty search priority was fixed: 1. user paths; 2. system paths
3rdparty debug usage fixed
vtk search introduced
occt information, generated by wok, was divided onto two files: occt_toolkits.cmake and occt_inc_toolkits.cmake
additional behavior of cmake search for freetype 2.5.1 and above
CMake (version < 3.0) don't know about new place of config/ftheader.h in freetype 2.5.1. There are cases when cmake seeks config/ftheader.h in defined place (3RDPARTY_FREETYPE_DIR variable), doesn't find it and start new search in system places. If system has own freetype header- cmake will find it and 3RDPARTY_FREETYPE* variables will point to different places. This situation is avoided
tcl, freetype, vtk are checked before usage of it (CSF variables usage)
tbb search mechanism was refactored
freetype search is processed by default cmake mechanism
tcl search is processed by default cmake mechanism
3rdparty macro seeks debug libraries (and release if debug ones aren't found); 3rdparty dll is sought in win case only
ADD_SUBDIRECTORY preferred to SUBDIRS
gendoc.bat search for tclsh.exe in user's system
0025141: CMake / MinGW: link recipe fails due to long command
0025146: Porting to Android
OCCT documentation updated. "Building with CMake and ADT for Android" article added
[CMAKE] custom.sh.in uses library variables instead unused dll ones.
-DDEBUG remove from CMAKE_CXX_FLAGS_DEBUG and CMAKE_C_FLAGS_DEBUG
hide unused 3rdparty in android case
also messages of freetype search mechanism slightly updated
-Now in ViewerTest_ViewerCommands's method VClipPlane() Graphic3d_TypeOfMaterial::SetAmbientColor() and
Graphic3d_TypeOfMaterial::SetDiffuseColor() are used instead of
Graphic3d_TypeOfMaterial::SetColor()
-New test case added: tests\bugs\vis\bug25229
-Formatting
Changes:
class BOPTools_AlgoTools3D
method:
void BOPTools_AlgoTools3D::DoSplitSEAMOnFace
(const TopoDS_Edge& aSplit,
const TopoDS_Face& aF)
The treatment of seam edges for the periodic surfaces has been changed.
Test case for issue CR25228
class ProjLib_ComputeApprox
method
ProjLib_ComputeApprox::ProjLib_ComputeApprox
(const Handle(Adaptor3d_HCurve) & C,
const Handle(Adaptor3d_HSurface) & S,
const Standard_Real Tol )
Using Precision::PConfusion() as a 2d tolerance when shifting the projected curve.
Test case for issue CR25223
Added new toolkit TKIVtk:
- TKIVtk toolkit includes IVtkVTK, IVtkTools, IVtkOCC, IVtk packages.
- TKIVtk provides OCC interface for VTK library functionality: it allows to use VTK window and event managment for OCC objects (shapes)
Porting on VTK 6:
- shape source inherits vtkPolyDataAlgorithm now (vtkPolyDataSource was removed form VTK as deprecated functionality).
- added factory auto-initialization in IVtkVTK_View
- remove using of deprecated methods of pipeline mechanism.
Get rid from warning in SelectMgr_SelectableObject. Removed firendship from SelectMgr_SelectableObject.
Corrected projector parameters for selection algorithm.
Removed unneeded picking algorithm modification.