occt.git
7 years agoDecreasing the maximal value for enlarging surfaces to 1.e+7 to avoid inaccuracies... CR25926_V6_9_0p4
emv [Fri, 22 Jul 2016 07:09:22 +0000 (10:09 +0300)]
Decreasing the maximal value for enlarging surfaces to 1.e+7 to avoid inaccuracies caused by floating point format.

7 years agoCheck status of BOPAlgo_Builder before using its result.
msv [Mon, 20 Jun 2016 15:18:24 +0000 (18:18 +0300)]
Check status of BOPAlgo_Builder before using its result.

7 years ago0027245: DRAW command to test binary persistence for shapes
emv [Tue, 14 Jun 2016 13:13:39 +0000 (16:13 +0300)]
0027245: DRAW command to test binary persistence for shapes

- Added new static methods Read and Write in BinTools class to store/retrieve a shape in binary format.
- Added new draw commands "binsave" and "binrestore"
- Updated documantation with description of the new BinTools class methods and corresponding BRepTools class methods.

7 years agoBRepOffset_Analyse::Perform() - Added processing of the cases when more than two...
emv [Tue, 14 Jun 2016 13:13:39 +0000 (16:13 +0300)]
BRepOffset_Analyse::Perform() - Added processing of the cases when more than two faces share the same edge.
BRepOffset_MakeOffset - Added protection from the Infinite edges.
BOPAlgo_PaveFiller::MakeSplitEdges() - Remove PaveBlocks with same parameters on paves.
BOPAlgo_PaveFiller::PerformVE() - Added protection from edges with no PaveBlocks.

7 years ago0027540: Run-to-run differences in the 3D Offset algorithm CR27540_V6_9_0p4
emv [Fri, 27 May 2016 10:33:38 +0000 (13:33 +0300)]
0027540: Run-to-run differences in the 3D Offset algorithm

Calculating the offset vertices by the superposition of intersection vertices
between pairs of edges (BRepOffset_Inter2d::FuseVertices()).

To obtain stable result when calculating the superposition of vertices
they are sorted (BOPTools_AlgoTools::MakeVertex()).

The support of vertices has been added in nexplode command.

7 years ago0027521: Standard_ConstructionError when trying to use unifySameDom into a shape
msv [Fri, 20 May 2016 08:36:11 +0000 (11:36 +0300)]
0027521: Standard_ConstructionError when trying to use unifySameDom into a shape

Correct the algorithm in the function MergeEdges in ShapeUpgrade_UnifySameDomain.cxx so as to take into account the orientation of the next edge added to the chain.

Test cases for issue CR27521

7 years ago1. BRepOffset_MakeOffset::UpdateValidEdges() - Correct saving of the new intersection...
emv [Fri, 20 May 2016 12:15:37 +0000 (15:15 +0300)]
1. BRepOffset_MakeOffset::UpdateValidEdges() - Correct saving of the new intersection edges.
2. BRepOffset_MakeOffset::RemoveInsideFaces() - Use faces consisting only of invalid edges
and rejected while building the splits of offset faces to find the faces to remove.
3. BRepOffset_MakeOffset::GetBoundsToUpdate() - Update all face's edges (not only valid)
by intersection with new intersection edges.

7 years ago1. BRepOffset_MakeOffset::RemoveInsideFaces() - Making the procedure of checking...
emv [Fri, 13 May 2016 12:46:57 +0000 (15:46 +0300)]
1. BRepOffset_MakeOffset::RemoveInsideFaces() - Making the procedure of checking for internal faces
to take into account the possibility of coincidence of the splits of the offset faces.
2. BRepOffset_MakeOffset::FindFacesToRebuild() - Making the set of faces for rebuilding include the
invalid faces with only valid splits left. But avoid those faces in intersections during their rebuilding.

7 years ago0027454: Application hangs while opening a non-OCAF XML file
msv [Fri, 29 Apr 2016 16:31:13 +0000 (19:31 +0300)]
0027454: Application hangs while opening a non-OCAF XML file

1) Add protection against accessing null pointer in PCDM_ReadWriter::FileFormat.

2) In LDOM_XmlReader::ReadRecord, take into account that the character '>' can have no special meaning (e.g., in a text), and we must read the data behind this character to complete the current tag reading. This treatment concerns the mode of work when myTagPerStep is true.

3) Create a test case of reading of XML file not related to OCAF document.

7 years ago0027077: OCAF: Implementation of streaming save/load (OCC26229) is incomplete/incorrect
ibs [Thu, 14 Jan 2016 16:17:00 +0000 (19:17 +0300)]
0027077: OCAF: Implementation of streaming save/load (OCC26229) is incomplete/incorrect

XmlOcaf reading is non-seekable

// 1. Read method of XmlLDrivers_DocumentRetrievalDriver extended to read complete document (with "document" tag) in compatible mode (when reading is performed from file)
// 2. the empty statement removed
// 3. the description of LDOMPARSER::parse method extended

7 years agoPorting the fix 26229 to OCCT 6.9.1
msv [Mon, 25 Apr 2016 10:00:05 +0000 (13:00 +0300)]
Porting the fix 26229 to OCCT 6.9.1

7 years ago0026890: Foundation Classes, TKernel - define OSD_OpenStream for std::ifstream
isk [Wed, 18 Nov 2015 12:49:08 +0000 (15:49 +0300)]
0026890: Foundation Classes, TKernel - define OSD_OpenStream for std::ifstream

7 years ago0026229: Add the possibility in OCAF to open/save a document from/to a stream object
ibs [Fri, 27 Nov 2015 10:03:25 +0000 (13:03 +0300)]
0026229: Add the possibility in OCAF to open/save a document from/to a stream object

TDocStd_Application class extended to open/save a document of XmlOcaf and BinOcaf format
from/to standard SEEKABLE stream object which should support SEEK functionality.

Open and SaveAs DRAW commands got new additional argument "-stream" to turn on using of stream functionality.

The main changes for BinOcaf format applied in:
FSD_BinaryFile class (static method using standard stream added)
BinLDrivers_DocumentRetrievalDriver and BinLDrivers_DocumentStorageDriver classes use standard stream object as an argument

The main changes for XmlOcaf format applied in:
LDOMParser and LDOM_XmlWriter classes  use standard stream object as an argument

Unused class FSD_Archive and its siblings removed from MFC samples.

Conflicts:
src/BinLDrivers/BinLDrivers_DocumentRetrievalDriver.cxx
src/BinLDrivers/BinLDrivers_DocumentRetrievalDriver.hxx
src/BinLDrivers/BinLDrivers_DocumentStorageDriver.hxx
src/CDF/CDF_Application.hxx
src/CDM/CDM_Document.hxx
src/FSD/FSD_BinaryFile.cxx
src/FSD/FSD_BinaryFile.hxx
src/FSD/FSD_CmpFile.hxx
src/FSD/FSD_File.hxx
src/PCDM/PCDM.hxx
src/PCDM/PCDM_ReadWriter.hxx
src/PCDM/PCDM_Reader.hxx
src/PCDM/PCDM_RetrievalDriver.hxx
src/PCDM/PCDM_StorageDriver.hxx
src/PCDM/PCDM_Writer.hxx
src/Standard/Standard_Persistent.hxx
src/StdResource/XCAF
src/Storage/Storage_BaseDriver.hxx
src/Storage/Storage_Data.hxx
src/Storage/Storage_HeaderData.hxx
src/Storage/Storage_InternalData.hxx
src/Storage/Storage_Root.hxx
src/Storage/Storage_RootData.hxx
src/Storage/Storage_TypeData.hxx
src/TDocStd/TDocStd_Application.cxx
src/TDocStd/TDocStd_Application.hxx
src/XmlLDrivers/XmlLDrivers_DocumentRetrievalDriver.cxx
src/XmlLDrivers/XmlLDrivers_DocumentRetrievalDriver.hxx
src/XmlLDrivers/XmlLDrivers_DocumentStorageDriver.hxx

7 years agoFix build error: add dependence of TKVRML on TKV3d
msv [Fri, 22 Apr 2016 14:10:11 +0000 (17:10 +0300)]
Fix build error: add dependence of TKVRML on TKV3d

7 years agoFix for XDE Draw building.
stv [Thu, 11 Jun 2015 12:01:40 +0000 (15:01 +0300)]
Fix for XDE Draw building.

7 years agoFixes for partial compilation errors.
stv [Mon, 8 Jun 2015 11:50:58 +0000 (14:50 +0300)]
Fixes for partial compilation errors.

7 years agoA reference to a non-existent package MPrsStd has been removed from TKPCAF
stv [Thu, 4 Jun 2015 07:22:43 +0000 (10:22 +0300)]
A reference to a non-existent package MPrsStd has been removed from TKPCAF

7 years agoTKCAF has been separated on two parts:
azn [Thu, 28 May 2015 13:02:31 +0000 (16:02 +0300)]
TKCAF has been separated on two parts:
- The sources which independent from visualization are remained in this TK.
- Visualisation dependencies are moved to the new TK: TKVCAF.
- Some dependencies which are connected with persistent objects (from other TK) have been corrected.

7 years agoBRepOffset_Inter3d::ConnexIntByInt - Correct adding of the new section curves to...
emv [Wed, 13 Apr 2016 21:34:45 +0000 (00:34 +0300)]
BRepOffset_Inter3d::ConnexIntByInt - Correct adding of the new section curves to the map of Ascendants/Descendants.

7 years agoBRepOffset_MakeOffset::BuildSplitsOfFaces() - adding filters for found invalid faces...
emv [Fri, 8 Apr 2016 07:31:15 +0000 (10:31 +0300)]
BRepOffset_MakeOffset::BuildSplitsOfFaces() - adding filters for found invalid faces to avoid unnecessary rebuilding of these faces.

7 years ago0027315: UnifySameDomain leaves unmerged edges
msv [Fri, 1 Apr 2016 15:26:06 +0000 (18:26 +0300)]
0027315: UnifySameDomain leaves unmerged edges

Adapt the internal function MergeEdges to the case when on input it takes a set of edges constituting several connected chains.

7 years ago0027332: Duplicate output from Draw Interpreter in cout in the debug function Draw_Eval
msv [Mon, 21 Mar 2016 15:45:29 +0000 (18:45 +0300)]
0027332: Duplicate output from Draw Interpreter in cout in the debug function Draw_Eval

0027293: Add debug function to save a list of shapes into a compound

7 years agoBRepOffset_MakeOffset::IntersectFaces() - Careful definition of the vertices to avoid...
emv [Mon, 4 Apr 2016 12:37:55 +0000 (15:37 +0300)]
BRepOffset_MakeOffset::IntersectFaces() - Careful definition of the vertices to avoid while trimming the new edges.

7 years agoBRepOffset_Inter3d::CompletInt - Make unique offset edges for each block of collinea...
emv [Fri, 1 Apr 2016 08:48:37 +0000 (11:48 +0300)]
BRepOffset_Inter3d::CompletInt -  Make unique offset edges for each block of collinear edges from the initial shape.

7 years ago0027082: UnifySameDomain must add internal edges where appropriate to resolve self...
msv [Tue, 22 Mar 2016 12:23:00 +0000 (15:23 +0300)]
0027082: UnifySameDomain must add internal edges where appropriate to resolve self-intersections

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.

0027309: Result of UnifySameDomain has InvalidMultiConnexity error

The update of the set of boundary edges has been added for the case when faces containing milti-connected edges are excluded from merging.

7 years agoBOPAlgo_PaveFiller::IsExistingPaveBlock - special treatment of linear edges coincidence.
emv [Mon, 28 Mar 2016 08:39:59 +0000 (11:39 +0300)]
BOPAlgo_PaveFiller::IsExistingPaveBlock - special treatment of linear edges coincidence.

7 years agoPossibility to initialize the old offset algorithm with zero offset value.
emv [Fri, 25 Mar 2016 06:40:01 +0000 (09:40 +0300)]
Possibility to initialize the old offset algorithm with zero offset value.

7 years agoOld implementation of the offset algorithm has been added alongside the new one ...
emv [Fri, 25 Mar 2016 05:58:57 +0000 (08:58 +0300)]
Old implementation of the offset algorithm has been added alongside the new one (version from 28/10/2015).

New key has been added to the offsetparameter command to choose the version of the algorithm (old version is default).

7 years agoBRepOffset_MakeOffset::IntersectFaces() - When one face is connected to several inval...
emv [Fri, 18 Mar 2016 10:51:28 +0000 (13:51 +0300)]
BRepOffset_MakeOffset::IntersectFaces() - When one face is connected to several invalidity treat each invalidity of that face separately.

7 years agoBRepOffset_MakeOffset::IntersectFaces() - When treating invalid faces intersect only...
emv [Tue, 15 Mar 2016 14:14:31 +0000 (17:14 +0300)]
BRepOffset_MakeOffset::IntersectFaces() - When treating invalid faces intersect only the faces that are close to invalidity.

7 years ago0026855: Draw commands to debug Boolean Operations Algorithm
msv [Mon, 14 Mar 2016 09:24:49 +0000 (12:24 +0300)]
0026855: Draw commands to debug Boolean Operations Algorithm

7 years agoRestore previous usage of the Volume Maker algorithm.
emv [Wed, 9 Mar 2016 12:12:08 +0000 (15:12 +0300)]
Restore previous usage of the Volume Maker algorithm.

7 years agoExtension on the 3d Offset algorithm for colliding cases to add support for new confi...
emv [Thu, 3 Mar 2016 13:36:38 +0000 (16:36 +0300)]
Extension on the 3d Offset algorithm for colliding cases to add support for new configurations of the shapes.

7 years ago0027085: ShapeUpgrade_UnifySameDomain very large performance difference for seemingly...
isn [Fri, 15 Jan 2016 13:22:32 +0000 (16:22 +0300)]
0027085: ShapeUpgrade_UnifySameDomain very large performance difference for seemingly similar shapes

Performance of the algorithm ShapeUpgrade_UnifySameDomain has been improved by avoiding of multiple calls of ShapeBuild_ReShape::Apply() method.

New test cases have been added.

Conflicts:
tests/bugs/heal/bug26219_1

7 years ago0027021: TopExp::Vertices performance optimization
msv [Fri, 25 Dec 2015 08:42:39 +0000 (11:42 +0300)]
0027021: TopExp::Vertices performance optimization

TopExp::Vertices optimized for sequential calls. BRep_Tool::Curve performance regression fixed. Update for fetching point done.

Test case for issue CR27021

7 years ago1) The option to remove INTERNAL edges from the faces of the result of Offset operati...
msv [Wed, 28 Oct 2015 09:05:26 +0000 (12:05 +0300)]
1) The option to remove INTERNAL edges from the faces of the result of Offset operation has been added into Offset API.
By default these edges will be kept in the result.
To remove these edges make sure to set the corresponding flag to TRUE when initializing the Offset algo.

void BRepOffset_MakeOffset::Initialize(const TopoDS_Shape&    S,
                                       const Standard_Real    Offset,
                                       const Standard_Real    Tol,
                                       const BRepOffset_Mode  Mode,
                                       const Standard_Boolean Inter,
                                       const Standard_Boolean SelfInter,
                                       const GeomAbs_JoinType Join,
                                       const Standard_Boolean RemoveIntEdges,
                                       const Standard_Boolean Thickening)

2) Due to the small inaccuracy of the calculation of the bi-normal direction (direction inside the face on the edge) the criterion on the coincidence of these directions has been weakened.

3) Make the possibility to produce empty result in case of any invalidity (spikes, self-intersections, faces inversion) optional.

7 years ago0026396: Taper API result differs run-to-run for identical inputs
isn [Thu, 8 Oct 2015 07:32:41 +0000 (10:32 +0300)]
0026396: Taper API result differs run-to-run for identical inputs

- all data maps where shape used as a key have been replaced with indexed data maps. Now index used for iteration through this map instead of shape-key.
- new test have been added. This test allows to test stability of DraftAngle-algo.

7 years agoTemporary patch to produce empty result in case of any invalidity (spikes, self-inter...
emv [Thu, 8 Oct 2015 09:11:06 +0000 (12:11 +0300)]
Temporary patch to produce empty result in case of any invalidity (spikes, self-intersections, faces inversion).

7 years ago0026656: ShapeFix_Face introduces extremely high vertex tolerance in the input shape
aml [Wed, 9 Sep 2015 10:44:48 +0000 (13:44 +0300)]
0026656: ShapeFix_Face introduces extremely high vertex tolerance in the input shape

Added set of methods CopyVertex in BRepTools_ReShape. Usage of this non-modifying methods added in ShapeFix_Wire, ShapeFix_Edge.
Test case for issue 26656.
Test cases updated to the new behavior.

7 years ago0026635: UnifySameDomain loses internal edges
msv [Wed, 2 Sep 2015 15:40:41 +0000 (18:40 +0300)]
0026635: UnifySameDomain loses internal edges

-Treat internal edges in proper way to save them in the result
-Adopt test case to the actual state

7 years agoMemory leak in IntTools_Context::Hatcher
pkv [Mon, 31 Aug 2015 08:21:41 +0000 (11:21 +0300)]
Memory leak in IntTools_Context::Hatcher

I. New features:
    No new features

II.2. class BOPAlgo_WireSplitter
- method:
Geom2dHatch_Hatcher& IntTools_Context::Hatcher
  (const TopoDS_Face& aF)
IntTools_SurfaceRangeLocalizeData& IntTools_Context::SurfaceData
  (const TopoDS_Face& aF)
The memory allocation is provided using inner allocator of the object.

II. Modified entities:
packages:
IntTools

Issue for master: 0026616

7 years ago0026567: Exception in Boolean intersection command
pkv [Tue, 18 Aug 2015 07:06:11 +0000 (10:06 +0300)]
0026567: Exception in Boolean intersection command

Correcting the usage of NCollection_IncAllocator

7 years agoUsing local face tolerance for edges intersection.
emv [Thu, 27 Aug 2015 08:21:55 +0000 (11:21 +0300)]
Using local face tolerance for edges intersection.

7 years ago0026426: Draft angle algorithm modifies input argument + the result of the operation...
ifv [Fri, 17 Jul 2015 06:43:21 +0000 (09:43 +0300)]
0026426: Draft angle algorithm modifies input argument + the result of the operation have very large tolerance values

This is not yet final version of the fix.

7 years ago0026642: ShapeUpgrade_UnifySameDomain introduces extremely high vertex tolerances
msv [Wed, 16 Sep 2015 12:25:23 +0000 (15:25 +0300)]
0026642: ShapeUpgrade_UnifySameDomain introduces extremely high vertex tolerances

0026099: Wrong result done by 2d intersection algorithm

Detection of intersection for almost parallel lines has been improved.

Test-case for issue #26099 and adjusting of test-case boolean volumemaker B6

Algorithm of computation of safe shift value along 2D-line (in order to distance between two points was less than tolerance) has been improved.

Correction of some test cases in accordance with their new behavior.

Test-case for issue #26642

7 years agoAdd directories build* and install to git ignore list.
msv [Wed, 16 Sep 2015 12:07:28 +0000 (15:07 +0300)]
Add directories build* and install to git ignore list.

7 years agoPorting the fix of 26099 bug
nbv [Thu, 10 Sep 2015 13:42:29 +0000 (16:42 +0300)]
Porting the fix of 26099 bug

7 years ago0026664: Triangulating a very small polygon fails
pdn [Tue, 8 Sep 2015 15:26:16 +0000 (18:26 +0300)]
0026664: Triangulating a very small polygon fails

Parameter for adaptive computation of minimal 2D meshing precision added

8 years agoFix of bug 26572 for issue #12
jgv [Fri, 21 Aug 2015 14:32:12 +0000 (17:32 +0300)]
Fix of bug 26572 for issue #12

8 years ago0026466: UnifySameDomain creates invalid result shape from valid input shape
msv [Fri, 24 Jul 2015 09:26:53 +0000 (12:26 +0300)]
0026466: UnifySameDomain creates invalid result shape from valid input shape

8 years ago0026407: BRepMesh_Delaun should not take into account frontier edges on first pass...
oan [Wed, 15 Jul 2015 11:57:36 +0000 (14:57 +0300)]
0026407: BRepMesh_Delaun should not take into account frontier edges on first pass of algorithm

Correction of new vertices insertion: remove all triangles shot by point even if they contain frontier edges in order to prevent cases of free edge glued with frontier;
findNextPolygonLink: choose link with opposite direction to previous one as the last resort in case if the is no another option;
Enlarge bounding boxes by Precision::PConfusion() in order to not to miss possible intersections;
Return NoIntersection in case of end point touch and isConsiderEndPointTouch flag is not set.

8 years agoCorrections in splitting faces and making shells functions.
emv [Fri, 10 Jul 2015 09:52:58 +0000 (12:52 +0300)]
Corrections in splitting faces and making shells functions.

8 years ago3D Offset algorithm extension for the cases with the shapes having the faces connecte...
emv [Tue, 7 Jul 2015 11:18:28 +0000 (14:18 +0300)]
3D Offset algorithm extension for the cases with the shapes having the faces connected only by the VERTEX.

8 years agoFix for correct shells splitting when building solids.
emv [Tue, 30 Jun 2015 09:22:42 +0000 (12:22 +0300)]
Fix for correct shells splitting when building solids.

8 years agoAdditional fix to improve robustness.
msv [Wed, 24 Jun 2015 06:58:27 +0000 (09:58 +0300)]
Additional fix to improve robustness.

8 years agoFix the problem when merged edges have different location.
msv [Tue, 23 Jun 2015 15:01:39 +0000 (18:01 +0300)]
Fix the problem when merged edges have different location.

8 years agoCR26219_2
isn [Fri, 29 May 2015 07:43:24 +0000 (10:43 +0300)]
CR26219_2
ShapeUpgrade_UnifySameDomain fails with StdFail_NotDone exception

8 years agoTreatment of the shells with free edges has been changed to keep the faces with inter...
emv [Wed, 17 Jun 2015 08:30:10 +0000 (11:30 +0300)]
Treatment of the shells with free edges has been changed to keep the faces with internal edges.

8 years ago0025926: 3D offset in mode "Complete" with Join type "Intersection"
emv [Thu, 4 Jun 2015 07:53:22 +0000 (10:53 +0300)]
0025926: 3D offset in mode "Complete" with Join type "Intersection"

3D offset algorithm extension for degenerate (colliding) cases.

8 years ago0026224: Wrong result obtained by Common operator. V6_9_0p1
pkv [Thu, 14 May 2015 06:21:13 +0000 (09:21 +0300)]
0026224: Wrong result obtained by Common operator.

I. New features:
No new features.

II. Changes:
II.1. class BOPTools_AlgoTools2D
 - method:
Standard_Integer BOPTools_AlgoTools2D::AttachExistingPCurve
(const TopoDS_Edge& aE2,
const TopoDS_Edge& aE1,
const TopoDS_Face& aF,
const Handle(IntTools_Context)& aCtx)
has been changed.
The treatment of the curves that need to be reversed has been modified
taking into account reversed parameter

III. Modified entities:
packages:
BOPTools

8 years ago0026218: Wrong result done by General Fuse algorithm
emv [Thu, 14 May 2015 09:39:16 +0000 (12:39 +0300)]
0026218: Wrong result done by General Fuse algorithm

class BOPAlgo_PaveFiller
1. method
  void BOPAlgo_PaveFiller::MakeBlocks()
 Update of FaceInfo IN information before filling the maps.

2. methods
  void BOPAlgo_PaveFiller::UpdateFaceInfo
    (BOPDS_DataMapOfPaveBlockListOfPaveBlock& theDME,
     const BOPCol_DataMapOfIntegerInteger& theDMV)

  void BOPAlgo_PaveFiller::ProcessExistingPaveBlocks
    (const Standard_Integer theInt,
     const BOPDS_IndexedMapOfPaveBlock& aMPBOnIn,
     const BOPCol_DataMapOfIntegerListOfInteger& aDMBV,
     BOPDS_IndexedDataMapOfShapeCoupleOfPaveBlocks& aMSCPB,
     BOPCol_DataMapOfShapeInteger& aMVI,
     BOPDS_MapOfPaveBlock& aMPB)

  Small changes in treatment of existing pave blocks when making new ones from intersection curves.

8 years ago0025490: Error appears trying to start QT OCCT sample OCCT690-REF V6_9_0
ski [Fri, 8 May 2015 09:54:51 +0000 (12:54 +0300)]
0025490: Error appears trying to start QT OCCT sample

Separate msvc.bat files were created for each qt sample to avoid errors.

8 years ago0026139: AIS_InteractiveContext::Display performance regression
vpa [Fri, 8 May 2015 10:44:02 +0000 (13:44 +0300)]
0026139: AIS_InteractiveContext::Display performance regression

Regression with VIS tests in release mode was fixed

8 years ago0026194: Sometimes "testgrid" command runs every test many times
apn [Thu, 7 May 2015 08:31:24 +0000 (11:31 +0300)]
0026194: Sometimes "testgrid" command runs every test many times

Added check for equal test directories in variable CSF_TestScriptsPath.

8 years agoIncrementation of OCCT version up to 6.9.0
bugmaster [Thu, 7 May 2015 12:45:47 +0000 (15:45 +0300)]
Incrementation of OCCT version up to 6.9.0

8 years ago0026139: AIS_InteractiveContext::Display performance regression
vpa [Thu, 7 May 2015 15:39:36 +0000 (18:39 +0300)]
0026139: AIS_InteractiveContext::Display performance regression

NCollection_Sequence in SelectMgr_SensitiveEntitySet was replaced by indexed data map

8 years ago0026029: Visualization - Poor performance of connected objects
dbp [Thu, 7 May 2015 15:20:27 +0000 (18:20 +0300)]
0026029: Visualization - Poor performance of connected objects

Fix performance issue with SelectMgr_SelectableObjectSet.

8 years agoUpdate of unstable Boolean test cases
apn [Thu, 7 May 2015 14:32:58 +0000 (17:32 +0300)]
Update of unstable Boolean test cases

8 years ago0026146: Visualization, Select3D_ISensitivePointSet - eliminate crash when clearing...
abv [Thu, 7 May 2015 05:53:38 +0000 (08:53 +0300)]
0026146: Visualization, Select3D_ISensitivePointSet - eliminate crash when clearing selections [only with TBB]

Remove classes Select3D_ISensitivePointSet and Select3D_BoundarySensitivePointSet; use Select3D_SensitivePoly directly for boundary selection.
Make last argument in Select3D_SensitiveFace non-default to ensure that value is always explicitly specified by the caller.
Inherit SelectMgr_FrustumBuilder from Standard_Transient to use normal Handle instead of NCollection_Handle.

Add test case bugs/vis/bug26146.

8 years ago0026147: Visualization - restore the ability to pick only fully included objects...
vpa [Thu, 7 May 2015 15:53:21 +0000 (18:53 +0300)]
0026147: Visualization - restore the ability to pick only fully included objects in rectangular selection

2 modes of rectangular selection are available: inclusion-only and overlap-allowing;
The modes can be switched using method AllowOverlapDetection from StdSelect_ViewerSelector3d;
BVH for sensitive entities now builds if there is more than max number of leafs in collection;
Added option -allowoverlap to command vselect;
Interactive rectangular selection in Draw is now available in 2 modes:
- if the user starts selection from upper corners, only fully included objects will be selected;
- if the user starts selection from lower corners, both partially and fully overlapped objects will be selected.

8 years ago0025760: Visualization - precision factor added to ZNear, ZFar in method ZFitAll...
apl [Thu, 7 May 2015 12:00:23 +0000 (15:00 +0300)]
0025760: Visualization - precision factor added to ZNear, ZFar in method ZFitAll() of Graphic3d_Camera is not enough

Partial fix: increased epsilon to value reported in #0025670

8 years ago0026191: Different behavior of "bugs moddata_3 bug23471" test script on Windows and...
apn [Thu, 7 May 2015 12:33:10 +0000 (15:33 +0300)]
0026191: Different behavior of "bugs moddata_3 bug23471" test script on Windows and Linux platform

Deleted variable "res" which appears during loading draw

8 years ago0026159: Visualization - revise tolerance implementation for selection
vpa [Wed, 6 May 2015 12:35:36 +0000 (15:35 +0300)]
0026159: Visualization - revise tolerance implementation for selection

Max tolerance is now applied to all objects and entities by default;
if there is an entity with a lower tolerance, selecting frustum will be recalculated for it.
The ability to set sensitivity for each entity individually is moved to protected section of SelectBasics_SensitiveEntity
SetPixelTolerance from AIS_InteractiveContext now sets custom tolerance that is applied to all sensitives.
Added -unset option to vselprecision command to disable custom tolerances.
Test case for issue #26159

8 years ago0026165: Visualization, TKOpenGl - fix FBO blitting on some mobile devices
kgv [Wed, 6 May 2015 13:05:47 +0000 (16:05 +0300)]
0026165: Visualization, TKOpenGl - fix FBO blitting on some mobile devices

OpenGl_Texture::Init() - initialize FBO textures with GL_TEXTURE_WRAP_ set to GL_CLAMP_TO_EDGE,
since some devices do not support GL_REPEAT (which is default) in such combination.
OpenGl_Font::createTexture() - define texture parameters explicitly.

OpenGl_FrameBuffer::Init() create Depth render buffer object instead of texture
on devices which do not support GL_DEPTH24_STENCIL8.

8 years ago0025271: Wrong result obtained by solid classifier algorithm
mkv [Thu, 7 May 2015 13:25:02 +0000 (16:25 +0300)]
0025271: Wrong result obtained by solid classifier algorithm

Shape name was corrected

8 years ago0025825: Draw Harness, XSDRAWSTLVRML - drop command tovrml and XSDRAWSTLVRML_ToVRML
ski [Wed, 6 May 2015 11:22:49 +0000 (14:22 +0300)]
0025825: Draw Harness, XSDRAWSTLVRML - drop command tovrml and XSDRAWSTLVRML_ToVRML

Command tovrml was eliminated.

8 years ago0026172: Visualization, AIS_LocalContext - locally selected object should not stay...
apl [Wed, 6 May 2015 09:06:54 +0000 (12:06 +0300)]
0026172: Visualization, AIS_LocalContext - locally selected object should not stay in the viewer after deactivation in the local context

Fix for AIS_LocalContext::ClearOutdatedSelection()
Added test case bugs/vis/bug26172

8 years ago0025890: Intersection algorithm produces curves overlaped
nbv [Thu, 7 May 2015 13:14:09 +0000 (16:14 +0300)]
0025890: Intersection algorithm produces curves overlaped

1. Function IntImp_Int2S::ChangePoint() has been added (see cdl for detail information).
2. Attempt to forbidden break WLine if it goes along surface boundary.

Code optimization.

2nd optimization

Test case for issue CR25890

8 years ago0025737: GCPnts_TangentialDeflection does not produce points to approximate a knee
mkv [Wed, 6 May 2015 15:45:31 +0000 (18:45 +0300)]
0025737: GCPnts_TangentialDeflection does not produce points to approximate a knee

8 years ago0026182: Calling ShapeFix_FixSmallFace.RemoveSmallFaces() always leads to stack overflow
abv [Wed, 6 May 2015 03:20:29 +0000 (06:20 +0300)]
0026182: Calling ShapeFix_FixSmallFace.RemoveSmallFaces() always leads to stack overflow

Unused methods RemoveSmallFaces() and SplitFaces() are removed.

8 years ago0026177: Coding rules - eliminate -Wdeprecated-register CLang warnings
kgv [Thu, 30 Apr 2015 14:19:19 +0000 (17:19 +0300)]
0026177: Coding rules - eliminate -Wdeprecated-register CLang warnings

8 years ago0026167: Coding rules - eliminate -Wlogical-not-parentheses CLang warnings in GeomToStep
kgv [Thu, 30 Apr 2015 10:26:01 +0000 (13:26 +0300)]
0026167: Coding rules - eliminate -Wlogical-not-parentheses CLang warnings in GeomToStep

8 years ago0026155: TNaming, CurrentShape: order of shapes in Modification compound is unpredictable
apl [Tue, 28 Apr 2015 09:11:10 +0000 (12:11 +0300)]
0026155: TNaming, CurrentShape: order of shapes in Modification compound is unpredictable

CurrentShape(): replace TopTools_MapOfShapes with TopTools_IndexedMapOfShape
Added case: tests/bugs/caf/bug26155

8 years ago0026148: BRep_Tool::IsClosed failed to judge a closed edge on Poly_Triangulation.
msv [Thu, 30 Apr 2015 09:37:07 +0000 (12:37 +0300)]
0026148: BRep_Tool::IsClosed failed to judge a closed edge on Poly_Triangulation.

The method signature has been changed by adding an argument TopLoc_Location.

8 years ago0026145: Geometry Sample crashes
ski [Tue, 5 May 2015 16:42:21 +0000 (19:42 +0300)]
0026145: Geometry Sample crashes

Unacceptable usage of quantity coefficient was removed.

8 years ago0026128: Visualization, TKOpenGl - fix misprint in external GLX context initialization
solomin_s [Wed, 6 May 2015 14:05:39 +0000 (17:05 +0300)]
0026128: Visualization, TKOpenGl - fix misprint in external GLX context initialization

OpenGl_Window, GLX - push warning about missing caps in window Visual.
Allow initialization of alien GLX context.

Correction of misprinting

8 years ago0026121: Visualization - revise implementation of point sets used in Select3D_Sensiti...
vpa [Thu, 30 Apr 2015 15:08:55 +0000 (18:08 +0300)]
0026121: Visualization - revise implementation of point sets used in Select3D_SensitiveFace

Code duplication was eliminated by removing constructors with handle input arrays

8 years ago0026118: Implement FastSewing algorithm
nbv [Wed, 6 May 2015 13:58:48 +0000 (16:58 +0300)]
0026118: Implement FastSewing algorithm

1. Develop special sewing algorithm.
2. DRAW-command "fastsewing" has been created (see help for detail information).
3. BRepLib::EnsureNormalConsistency() method has been added (see help for detail information).
4. DRAW-command correctnormals has been created (see help for detail information).

Test cases for this issue.

Correction of elapsed time in test-cases

8 years ago0026010: [OCCT 6.8.0 regression] BRepFeat_SplitShape returns invalid shapes
mkv [Thu, 30 Apr 2015 15:45:09 +0000 (18:45 +0300)]
0026010: [OCCT 6.8.0 regression] BRepFeat_SplitShape returns invalid shapes

8 years ago0025844: Command checkshape does not detect error for case when degenerated edge...
mkv [Thu, 30 Apr 2015 15:03:47 +0000 (18:03 +0300)]
0025844: Command checkshape does not detect error for case when degenerated edge does not contain geometric representation.

8 years ago0025713: CMake configuring procedure should allow to build OCCT as static libraries
ibs [Fri, 16 Jan 2015 09:15:11 +0000 (12:15 +0300)]
0025713: CMake configuring procedure should allow to build OCCT as static libraries

BUILD_LIBRARY_TYPE variable added

8 years ago0025390: Redesign of Technical Overview
ysn [Thu, 30 Apr 2015 12:58:34 +0000 (15:58 +0300)]
0025390: Redesign of Technical Overview

Technical overview refactored; text duplicating information contained in user guides removed.
Some images are regenerated for better presentation.
Problems with formatting and section tags corrected in user guides.

8 years ago0025050: Shape can not be stored to VRML format
mkv [Thu, 30 Apr 2015 14:09:43 +0000 (17:09 +0300)]
0025050: Shape can not be stored to VRML format

8 years ago0022785: Draw Harness - add possibility to remove a text drawn by the command vdrawtext
isk [Tue, 5 May 2015 08:06:29 +0000 (11:06 +0300)]
0022785: Draw Harness - add possibility to remove a text drawn by the command vdrawtext

AIS_TextLabel - new public class to display simple text labels (based on MyTextClass private class from Draw Harness).
ViewerTest::Display() - add more reliable replacement for VDisplayAISObject() with no viewer update flag.

vdrawtext command redesign:
- Use new AIS_TextLabel class instead of private MyTextClass.
- Take object name and allow to clear labels from the Viewer.
- Use parameter name + parameter value syntax instead of strict list of mandatory arguments.
- Use [0; 1] range for colors and accept names.
- Drop redundant argument "isMultiByte".
- Support argument -noupdate to skip Viewer update.

Update test cases to new syntax of vdrawtext.

8 years agoModification due to behavior changes after integration for issues CR26138 and CR24923
apv [Tue, 5 May 2015 12:31:21 +0000 (15:31 +0300)]
Modification due to behavior changes after integration for issues CR26138  and CR24923

8 years agoUpdate overview for OCCT 6.9.0
bugmaster [Tue, 5 May 2015 11:31:07 +0000 (14:31 +0300)]
Update overview for OCCT 6.9.0

8 years ago0025670: Incorrect sprops/vprops/lprops check in heal drop_small_solids test cases
apn [Thu, 23 Apr 2015 09:32:53 +0000 (12:32 +0300)]
0025670: Incorrect sprops/vprops/lprops check in heal drop_small_solids test cases

Procedure cmpprops in tests/heal/drop_small_solids/end is modified to correctly access top-level variables

8 years ago0026138: Problems with writing periodic BSplines into IGES
ika [Thu, 30 Apr 2015 14:04:07 +0000 (17:04 +0300)]
0026138: Problems with writing periodic BSplines into IGES

Remove making BSpline surfaces rational,
Add shifting of pcurves on periodic BSpline surfaces,
Add cutting of segment from such surfaces.
Add additional check for need of make segment

Update of test-cases according to the new behavior

8 years ago0024923: BRepMesh_CircleTool produces bad circles
drazmyslovich [Thu, 30 Apr 2015 13:41:54 +0000 (16:41 +0300)]
0024923: BRepMesh_CircleTool produces bad circles

Calculate radius of circumcircle as maximum difference between its center and vertices or reference triangle.
Draw test command OCC25547 has been implemented.
Small optimizations for speed.

Update of test-cases according to the new behaviour

Update of test-cases in group mesh

8 years ago0026021: Integration boolean test cases
apn [Thu, 30 Apr 2015 11:59:15 +0000 (14:59 +0300)]
0026021: Integration boolean test cases

Added subgroups volumemaker, gdml_private and gdml_public

Moved scripts from public repository ti test cases

Added more TODOs to unstable test cases

Small corrections for unstable test cases