Linking against 3rd-party libs when configuring a static OCCT build is eliminated.
math library is not linked if build is static
also: an info message is expanded by several words describing using of only header files of 3rdparties
Removed unnecessary for static build CMake gui variables
Modify Import/Export STEP.
Add Draw commands to set and get orientation and position of dimension text.
Add Draw commands to set and get presentation.
Add test.
ProjLib_Cone.cxx - correction wrong calculation of projection line on cone
GeomInt_IntSS_1.cxx - modification of method BuildPCurves(...) - adjusting first or last knots of 2d Curve
ProjLib_ComputeApprox.cxx - modification of method Function_SetUVBounds(...) for case projecting line on cone.
Modification of tests - removing first TODO
Test case for issue #27322
- Add poles with array of descriptions and description names to DimensionObject,
- Modify Import/Export STEP,
- Add Draw commands for descriptions,
- Create test,
- Reorganize end script for test/gdt/dimensions.
Various improvements in point-solid classifier:
1) Refactoring.
2) BndBoxTree is extracted into separate class.
3) UB-tree calculation is cashed to improve point-solid classification speed.
4) Ray / curve intersection improved by trimmed parameters and correct order.
5) Fixes in logic.
6) Calculation caching at the classifier level.
3D-claasifier now takes into the account the vertex/edges tolerances. If the given point lays inside the tolerance area of vertex or edge of the solid it's classified as TopAbs_ON.
The behavior of IntCurvesFace_Intersector::Perform was changed. Now it may use optional null-tolerance to classify 2d-point relatively to the given face.
UBTreeFiller is used to speedup intersection process between edges/vertices and the point.
The test case 'boolean gdml_private ZH2' extensively uses the SolidClassifier. After this fix it returns the correct classification statuses, which leads to incorrect result shape (reported by checkshape). Yet the result shape without this fix also seems to be incorrect (one of the isolines goes out of boundary of the face). Thats why it's marked with 'TODO'.
Corrections in test cases.
Test case is added.
1. Check, if value found by math_PSO algorithm cannot be precised by math_NewtonMinimum algorithm. In this case, we call math_PSO algorithm repeatedly, however, with other parameters.
2. Some margin of edge tolerance value has been provided in IntTools_Tools class.
3. Interface of math_NewtonMinimum class has been changed (method GetStatus() has been added).
Correction of some test cases according to their new behavior.
The update of the set of boundary edges has been added for the case when faces containing milti-connected edges are excluded from merging.
Update test cases for unifysamedom to generate snapshots.
The new option AllowInternalEdges has been added in the class ShapeUpgrade_UnifySameDomain. It determines how the algorithm treats the situation when two faces can be merged together but they have connection with another face via the common edge.
With this option turned on, merging of such faces is not stopped, but the multiconnected edges are added to the merged face as INTERNAL edges.
By default it is false. In this mode such merging is forbidden, so the result shape will not contain any new INTERNAL edges.
The behavior of the algorithm has been changed so that it does not merge faces from different shells.
Added protection for cases of the overlapped edges.
Returning value for methods in the LocOpe_SplitShape::AddOpenWire(), LocOpe_SplitShape::AddClosedWire() are modified from void to boolean in order to avoid raising exceptions.
To avoid regression for test case modalg_5 bug25243 tolerance of vertices of the degenerated edges are increased to value of tolerance of the splitting vertex for case when splitting vertex was projected on the degenerated edge.
Command checkplatform was created.
All test cases were updated.
Global variable os_type was eliminated.
New option -osx (MacOS) for procedure checkplatform was added.
All variants of Init function of OpenGl_VertexBuffer are now also supported by OpenGl_TextureBufferArb.
Missing texture formats added to OpenGl_GlFunctions.hxx.
Enabled creation of CMake target files (one per module) for OCCT at install time.
Variables enumerating available OCCT toolkits by module are added in CMake configuration file.
Added check of availability of OCCT modules specified by OpenCASCADE_FIND_COMPONENTS variable.
Location of CMake configuration and target files in Windows layout is changed to $INSTALL_DIR/cmake (thus common for all configurations), to be found by standard search logic of CMake find_package() function.
For FSAA mode we now store the depth values from first sample in myRaytraceFBO1 and do not modify it while collecting the rest of samples.
When all samples are gathered we fetch color from myRaytraceFBO2 and depth from myRaytraceFBO1 and display it to the current FBO.
Test bugs vis bug27337 added.
In samples:
- Fixed syntax error in DataExchangeDemo.tcl
- MSAA is enabled in some tests to provide better presentation
- Option to build isolines on triangulation is used in some samples to avoid artifacts in selection highlight
- Colors are corrected in cpu.tcl
In documentation:
- Reference to automake tools is removed
- Standard_OVERRIDE is expanded to "override"
1. Check, if edge is same-range, is now made with some tolerance (not strictly) in GeomLib_CheckCurveOnSurface class. Default value of this tolerance is Precision::PConfusion(). However, this value can be changed with corresponding interface.
2. DRAW-command "attachpcurve" has been added to BOPTest_UtilityCommands.cxx file. This command creates p-curve of given edge on given face. It can assign 2D-curve of one of the edge already included in the face or (if it is not possible) rebuilds new 2D-curve.
Creation of test case for this issue.
Adjusting test case boolean volumemaker A8 according to its new behavior on Windows.
Added check for existence of VTK library target.
Removal of hard-coded path to Direct 3D import library is generalized and amended for VTK built with VC12 and VC14.
Regressions that appeared in OCCT 6.6.0 are fixed.
Correction of test cases for issue #25813
Reference data update for test case bugs/mnodalg_6 /bug25908
1. The reason of the regression is not-closed intersection result. This problem has been solved (in this fix) by adding joint point to the both neighbors intersection lines (lines were extended to the this intersection point). It is made in IntPatch_WLineTool::ExtendTwoWlinesToEachOther(...) method.
2. Interface of IntPatch_PointLine and inherited classes has been changed. Methods ChangeVertex(...) and RemoveVertex(...) have been added.
Test cases for this issue have been created.
Small correction in the code.
1. New sharing algorithm has been implemented. If intermediate point of some edge is included in the tube with center taken in another edge and radius equaled to maximal vertex-tolerance of both edges then these two edges are considered to be shared. This know-how touches edges only, which have common blocks with interfered faces. If they do not have any common-blocks the algorithm will work as before.
2. Interface of BOPAlgo_PaveFiller::IsExistingPaveBlock(...) method has been changed.
Creation of test case for issues #27128 and #27179
Adjusting some test cases according to their new behavior, because they are IMPROVEMENTS really (TODOs have been deleted).