occt.git
9 years agoUpdate of header of files in context of License text
apn [Thu, 3 Jul 2014 13:23:56 +0000 (17:23 +0400)]
Update of header of files in context of License text

9 years ago0024983: For the incorrect seam edge in STEP file no fix is provided
razmyslovich [Thu, 3 Jul 2014 13:16:07 +0000 (17:16 +0400)]
0024983: For the incorrect seam edge in STEP file no fix is provided

fix the notched edges twice per face - before checking for missing seam and after
Test case correction for issue CR24983
Add check for invalid Surface of linear extrusion (with basis curve - line and extrusion direction parallel to this line) during converting STEP surface
Small corrections of test cases for issue CR24983

9 years ago0024958: Numerous ShapeFix_IntersectionTool code fixes
razmyslovich [Thu, 3 Jul 2014 13:13:17 +0000 (17:13 +0400)]
0024958: Numerous ShapeFix_IntersectionTool code fixes

Optimize periodic normalization.
not needed split edge, if one of parts is too small
Small corrections of test cases for issue CR24958_2

9 years agoModified test case for issue 23753
apn [Thu, 3 Jul 2014 12:09:39 +0000 (16:09 +0400)]
Modified test case for issue 23753

9 years agoModified test case for issue 23698
apv [Thu, 3 Jul 2014 12:07:28 +0000 (16:07 +0400)]
Modified test case for issue 23698

9 years ago0025004: Extrema curve/curve incorrect result
aml [Thu, 3 Jul 2014 12:00:36 +0000 (16:00 +0400)]
0025004: Extrema curve/curve incorrect result

Fixed bug in extrema clustering algorithm.
Tolerances changing is available now.
Testcase with Branin function added.

Test cases for issue CR25004

9 years ago0024817: Can not sew two circular faces in non-manifold mode
aml [Thu, 3 Jul 2014 11:54:46 +0000 (15:54 +0400)]
0024817: Can not sew two circular faces in non-manifold mode

IndRef parameter usage fixed. Obsolete code deleted.
Test case for issue CR24817

9 years ago0024819: TKOpenGl - extend the ray-tracing core by visualization of lines, text and...
osa [Thu, 3 Jul 2014 11:49:48 +0000 (15:49 +0400)]
0024819: TKOpenGl - extend the ray-tracing core by visualization of lines, text and point sprites

OpenGl_GraphicDriver::Redraw() - do not recompute structures more than required
OpenGl_Workspace::Raytrace() - bind proper FBO before clearing it
Visual3d_View::Redraw() - perform automatic 2nd redraw on device lost

9 years ago0025040: Visualization - capping plane is drawn at wrong position when created by...
kgv [Mon, 30 Jun 2014 09:04:55 +0000 (13:04 +0400)]
0025040: Visualization - capping plane is drawn at wrong position when created by copy

OpenGl_CappingPlaneResource - use -1 instead of 0 as default uninitialized modification counter.

9 years ago0025038: Visualization - remove unused classes from package Aspect
kgv [Sun, 29 Jun 2014 10:46:11 +0000 (14:46 +0400)]
0025038: Visualization - remove unused classes from package Aspect

9 years ago0025034: Highlighted dimension objects are not in Detected list of AIS_InteractiveCon...
aba [Thu, 3 Jul 2014 11:44:13 +0000 (15:44 +0400)]
0025034: Highlighted dimension objects are not in Detected list of AIS_InteractiveContext:

Detected sequence in local ind interactive contexts is filled with interactive objects, not with AIS_Shape only.

9 years agoUpdate of header of files in context of License text
bugmaster [Fri, 27 Jun 2014 12:23:13 +0000 (16:23 +0400)]
Update of header of files in context of License text

9 years agoRemoving non ascii characters
bugmaster [Fri, 27 Jun 2014 11:43:50 +0000 (15:43 +0400)]
Removing non ascii characters

9 years ago0025036: Compilation errors in occt qt Voxel sample
vpa [Thu, 26 Jun 2014 15:00:57 +0000 (19:00 +0400)]
0025036: Compilation errors in occt qt Voxel sample

Graphic3d_CBounds was replaced by Graphic3d_BndBox4f

9 years agoAdjusting testing cases for debug mode
mkv [Fri, 27 Jun 2014 11:21:44 +0000 (15:21 +0400)]
Adjusting testing cases for debug mode

9 years ago0025002: Wrong result done by Boolean Operation algorithm
emv [Thu, 26 Jun 2014 09:03:35 +0000 (13:03 +0400)]
0025002: Wrong result done by Boolean Operation algorithm

class IntTools_FaceFace
method
  static Standard_Boolean DecompositionOfWLine(const Handle(IntPatch_WLine)& theWLine,
                                      const Handle(GeomAdaptor_HSurface)&            theSurface1,
                                      const Handle(GeomAdaptor_HSurface)&            theSurface2,
                                      const TopoDS_Face&                             theFace1,
                                      const TopoDS_Face&                             theFace2,
                                      const IntTools_LineConstructor&                theLConstructor,
                                      const Standard_Boolean                         theAvoidLConstructor,
                                      IntPatch_SequenceOfLine&                       theNewLines,
                                      Standard_Real&                                 theReachedTol3d,
                                      const Handle(IntTools_Context)& aContext)

Correct treatment of WLines with only one point before or after the boundary point.

Test case for issue CR25002

9 years ago0024985: Control of maximum degree and number of segment in the Pipe Shell algorithm
vsr [Fri, 20 Jun 2014 07:35:25 +0000 (11:35 +0400)]
0024985: Control of maximum degree and number of segment in the Pipe Shell algorithm

Fix merge problem: pass myMaxDegree and myMaxSegments to BRepFill_Sweep algorithm

9 years ago0025031: Incorrect initialization function call
anv [Tue, 24 Jun 2014 08:00:13 +0000 (12:00 +0400)]
0025031: Incorrect initialization function call

Incorrect function call removed

9 years ago0024157: Parallelization of assembly part of BO
pkv [Thu, 26 Jun 2014 09:00:17 +0000 (13:00 +0400)]
0024157: Parallelization of assembly part of BO

The branch CR24157_12 deals with the parallelization of building the solids in case of lot internal faces.
Test case for issue CR24157

9 years ago0025019: Command "bsection" in Test Harness with flag build pcurve on second shape...
emv [Thu, 26 Jun 2014 08:58:42 +0000 (12:58 +0400)]
0025019: Command "bsection" in Test Harness with flag build pcurve on second shape works slowly.

class IntTools_FaceFace
method
  void IntTools_FaceFace::Perform(const TopoDS_Face& aF1,
                                  const TopoDS_Face& aF2)
Change the approximation flags according to the order of faces.

Test case for issue CR25019

9 years ago0024307: TKOpenGl - efficient culling of large number of presentations
vpa [Fri, 20 Jun 2014 07:26:14 +0000 (11:26 +0400)]
0024307: TKOpenGl - efficient culling of large number of presentations

Implement SAT intersection tests and frustum culling algorithm using BVH trees.

New Draw command vfrustumculling to manage frustum culling.
Add test cases bugs/vis/bug24307_1 and bugs/vis/bug24307_2.
Remove CALL_DEF_BOUNDBOX and CALL_DEF_BOUNDS.

9 years ago0025027: Visualization - 2D layer viewport is updated incorrectly on resize
kgv [Thu, 26 Jun 2014 08:50:30 +0000 (12:50 +0400)]
0025027: Visualization - 2D layer viewport is updated incorrectly on resize

Test case for issue CR25027

9 years ago0025026: Visualization, Graphic3d_Plotter - remove unused class
kgv [Thu, 19 Jun 2014 14:15:27 +0000 (18:15 +0400)]
0025026: Visualization, Graphic3d_Plotter - remove unused class

9 years ago0024902: Visualization, StdPrs_ShadedShape - advanced processing of Compounds contain...
aba [Thu, 19 Jun 2014 07:41:34 +0000 (11:41 +0400)]
0024902: Visualization, StdPrs_ShadedShape - advanced processing of Compounds containing mixture of closed Solids and open Shells

StdPrs_ShadedShape, add flag theToExploreSolids to method ::Add().
Previously the tool collected triagnulations from all Faces into single graphic group.
The automated algorithm for back-face culling activation has to disable culling
when within closed Solids single Compound contains also open Shells.
Now tool is able to optionally (enabled by default) split these two categories of primitives
into dedicated groups with independent back-face culling settings.

In addition, this closed flag is now stored in Graphic3d_Group::myIsClosed which allows
capping algorithm OpenGl_CappingAlgo to automatically filter improper groups.

9 years agoModified TPS in test cases bugs/modalg_5/bug24157_8 bug24157_9
apn [Fri, 20 Jun 2014 07:42:59 +0000 (11:42 +0400)]
Modified TPS in test cases bugs/modalg_5/bug24157_8 bug24157_9

9 years ago0025020: checkoverlapedges doesn't have the check for degenerated edges
ibs [Thu, 19 Jun 2014 09:29:13 +0000 (13:29 +0400)]
0025020: checkoverlapedges doesn't have the check for degenerated edges

the check for degenerated edges added
Test case for issue CR25020

9 years ago0024964: ThruSections crashes the DRAW.exe
jgv [Thu, 19 Jun 2014 09:27:27 +0000 (13:27 +0400)]
0024964: ThruSections crashes the DRAW.exe

Test case for issue CR24964

9 years ago0023631: Infinite memory consumption in BRepMesh
oan [Thu, 19 Jun 2014 09:23:53 +0000 (13:23 +0400)]
0023631: Infinite memory consumption in BRepMesh

Check is the shape to be meshed has correct poly data, i.e. PolygonOnTriangulation of particular edge connected to the same Triangulation data structure as stored inside a parent face.
Adding test cases for issue CR23631 bugs/mesh/bug23631
Parallel checking of faces/edges
Make BRepMesh_IncrementalMesh class imported from BRepMesh package.
Resolve GCC warnings on Linux platform
Fix compilation errors on MacOs: remove mutable modificator on reference fields.

9 years ago0025018: Draw Harness - misprint in argument "-settransparancy" for command vaspects
kgv [Tue, 17 Jun 2014 15:43:54 +0000 (19:43 +0400)]
0025018: Draw Harness - misprint in argument "-settransparancy" for command vaspects

9 years ago0025012: ShapeFix_Wire checks the wrong parameter for the curve during SameParameter...
razmyslovich [Mon, 16 Jun 2014 14:27:06 +0000 (16:27 +0200)]
0025012: ShapeFix_Wire checks the wrong parameter for the curve during SameParameter check

SameParameter check is fixed to verify the correct pairs of parameters

9 years ago0025011: IntAna_QuaQuadGeo can crash with out-of-bounds exception
razmyslovich [Mon, 16 Jun 2014 14:18:23 +0000 (16:18 +0200)]
0025011: IntAna_QuaQuadGeo can crash with out-of-bounds exception

Fix the crash in IntAna_QuadQuadGeo by checking the number of intersections

9 years agoModified CPU limit in test cases inDebug mode.
apn [Tue, 17 Jun 2014 13:18:18 +0000 (17:18 +0400)]
Modified CPU limit in test cases inDebug mode.

9 years agoAdded QA command OCC23950 and test case bugs/xde/bug23950 for issue 23950
apv [Wed, 11 Jun 2014 08:44:00 +0000 (12:44 +0400)]
Added QA command OCC23950 and test case bugs/xde/bug23950 for issue 23950

9 years ago0024998: The incorrect _USE_MATH_DEFINES definition in Standard_math.hxx prevents...
razmyslovich [Tue, 10 Jun 2014 11:50:14 +0000 (13:50 +0200)]
0024998: The incorrect _USE_MATH_DEFINES definition in Standard_math.hxx prevents the clean build for client applications

Add #ifndef clause to avoid redefinition compile error

9 years ago0024985: Control of maximum degree and number of segment in the Pipe Shell algorithm
jgv [Mon, 9 Jun 2014 09:25:40 +0000 (13:25 +0400)]
0024985: Control of maximum degree and number of segment in the Pipe Shell algorithm

9 years ago0024987: Visualization - Add missing implementation of Select3D_SensitiveTriangulatio...
vro [Thu, 5 Jun 2014 07:33:24 +0000 (11:33 +0400)]
0024987: Visualization - Add missing implementation of Select3D_SensitiveTriangulation::DetectedTriangle()

A missed method is implemented.

9 years ago0024989: Visualization - workaround vc12 32-bit compiler optimizer bug resulted in...
san [Wed, 11 Jun 2014 06:45:17 +0000 (10:45 +0400)]
0024989: Visualization - workaround vc12 32-bit compiler optimizer bug resulted in crash in AIS_Axis

Test case for issue CR24989

9 years ago0024971: Incomplete interface of NCollection classes
abv [Wed, 11 Jun 2014 06:43:27 +0000 (10:43 +0400)]
0024971: Incomplete interface of NCollection classes

NCollection classes amended to be compatible with TCollection equivalents:

- List and Maps: copy constructor is used for placement of new items in collection instead of assignment operator, thus default constructor is not necessary any more for the item class
- Constructors with additional argument of element type added in array classes operated by Handle, defined by NCollection_DefineHArray*.hxx, allowing to initialize array immediately by specified value
- Non-const methods First() and Last() are added in List class, and method Value() in TListIterator class
- Method Append() accepting Handle(HSequence) provided in NCollection_DefineHSequence.hxx
- Default implementation of global function IsEqual() is provided as template (using operator ==)

Code using lists and maps of sequences is refactored to operate sequence by Handle (since Sequence does not to have public copy constructor).

In addition, error checking code is simplified to use macros _Raise_if instead of custom #ifdefs with the same meaning.
Comments within declaration of instances of generic classes in CDL removed.

Fixed bug in copy constructor of NCollection_BaseVector leading to corrupt data if original vector is empty; simplistic test command for vectors is added.

9 years ago0024981: IntTools_FaceFace enters to infinite loop on the attached case
emv [Wed, 11 Jun 2014 06:41:15 +0000 (10:41 +0400)]
0024981: IntTools_FaceFace enters to infinite loop on the attached case

class IntTools_Tools
method
  Standard_Boolean IntTools_Tools::AdjustPeriodic
      (const Standard_Real thePar,
       const Standard_Real theParMin,
       const Standard_Real theParMax,
       const Standard_Real thePeriod,
       Standard_Real &theNewPar,
       Standard_Real &theOffset,
       const Standard_Real theEps)
The new function has been implemented for fast adjustment of pcurves to the range of surface.
Test case correction for issue CR24981

9 years ago0024939: Incorrect result of Fuse operation
emv [Thu, 5 Jun 2014 10:23:29 +0000 (14:23 +0400)]
0024939: Incorrect result of Fuse operation

Modification:
class IntTools_EdgeEdge
For correct computation of resolution for curves of type Hyperbola and Parabola two new static functions have been implemented:
static
  Standard_Real ResolutionCoeff(const BRepAdaptor_Curve& theBAC,
                                const IntTools_Range& theRange);
static
  Standard_Real Resolution(const Handle(Geom_Curve)& theCurve,
                           const GeomAbs_CurveType theCurveType,
                           const Standard_Real theResCoeff,
                           const Standard_Real theR3D);

bugs moddata_2 bug26_2 - improvement.
Test case for issue CR24939
Test case correction for issue CR24939

9 years ago0024973: Incorrect PCurve construction
pkv [Thu, 5 Jun 2014 10:21:37 +0000 (14:21 +0400)]
0024973: Incorrect PCurve construction

class: BOPTools_AlgoTools2D
method:
void BOPTools_AlgoTools2D::MakePCurveOnFace
  (const TopoDS_Face& aF,
   const Handle(Geom_Curve)& aC3D,
   const Standard_Real aFirst,
   const Standard_Real aLast,
   Handle(Geom2d_Curve)& aC2D,
   Standard_Real& TolReached2d)
has been modified to provide the conformity with the location of the surface

Test case for issue CR24973

9 years ago0024952: Possibility to break Boolean operations algorithm by user request
pkv [Mon, 2 Jun 2014 08:09:10 +0000 (12:09 +0400)]
0024952: Possibility to break Boolean operations algorithm by user request

class: BOPAlgo_Algo
method:
void BOPAlgo_Algo::SetProgressIndicator
  (const Handle(Message_ProgressIndicator)& theObj)
Purpose: Set the Progress Indicator object <theObj>.

method:
void BOPAlgo_Algo::UserBreak() const
Purpose: Breaks the execution if the break signal is indicated.

9 years ago0024972: Problem of the influence of the includes order during compilation
ski [Thu, 5 Jun 2014 10:18:09 +0000 (14:18 +0400)]
0024972: Problem of the influence of the includes order during compilation

All necessary files were included.
Unused files from package PColStd were removed.

9 years ago0024945: Extrema_ExtPElC::Perform does not consider angular tolerance when calculates...
oan [Thu, 5 Jun 2014 10:16:48 +0000 (14:16 +0400)]
0024945: Extrema_ExtPElC::Perform does not consider angular tolerance when calculates angle between two vectors

Consider angular tolerance during calculation of angle between two vectors for protection against deviations that are significantly less than tolerance.
Simplified code to reduce number of comparison
Added QA command OCC24945 and test case bugs/moddata_3/bug24945

9 years ago0024955: Misuse of DownCast
abv [Thu, 5 Jun 2014 10:14:14 +0000 (14:14 +0400)]
0024955: Misuse of DownCast

Code where DownCast was applied to Handle of the type being not a base class of the target one is revised and (hopefully) corrected.
Code corrected following review remarks
GeomConvert::CurveToBSplineCurve() is called even for b-spline curves to ensure that result is non-periodic
Check for conic is corrected

9 years ago0024240: Separation of header files for QANCollection into hxx and cxx
abv [Mon, 12 May 2014 12:08:36 +0000 (16:08 +0400)]
0024240: Separation of header files for QANCollection into hxx and cxx

Files in QANCollection tests reorganized to avoid placing code in header files

9 years ago0024911: Avoid using virtual functions in NCollection classes
abv [Thu, 8 May 2014 05:13:00 +0000 (09:13 +0400)]
0024911: Avoid using virtual functions in NCollection classes

NCollection_BaseCollection class, relevant header files, and macro DEFINE_BASECOLLECTION removed.
Hence methods Assign() from other compatible (via inheritance of BaseCollection) collections are not available any more, as well as base Iterator class.

All methods of Iterator classes are made non-virtual, allowing their inline expansion for better performance.

OCCT-specific operators new and delete added to collection classes and removed from iterator classes.

9 years agoUpdate of CMakeLists.txt for Microsoft Visual Studio 2013
bugmaster [Mon, 2 Jun 2014 10:32:23 +0000 (14:32 +0400)]
Update of CMakeLists.txt for Microsoft Visual Studio 2013

9 years ago0024974: GCC compiler warnings 'backslash inside comment'
abv [Thu, 29 May 2014 12:39:13 +0000 (16:39 +0400)]
0024974: GCC compiler warnings 'backslash inside comment'

Backslash at the end of the line within comment escaped by dot to avoid GCC warning

9 years ago0024951: Qt samples - fix compilation after changes in Raytracing API
dbp [Fri, 23 May 2014 13:23:16 +0000 (17:23 +0400)]
0024951: Qt samples - fix compilation after changes in Raytracing API

Compilation errors in qt samples were fixed.

9 years ago0024055: Reading a STEP file produces invalid shape
ika [Thu, 29 May 2014 12:43:38 +0000 (16:43 +0400)]
0024055: Reading a STEP file produces invalid shape

Add checks for cone-like surfaces during seam fixing
Delete check for missing degenerated edge for cones in FixMissingSeam() function, because this check is exist in FixPeriodicDegenerated(). Check for uniqueness of wire is unnecessary after this.
Update of test-cases

9 years ago0024889: Geom2dAPI_InterCurveCurve produces result with parameter outside the curve...
nbv [Thu, 29 May 2014 12:38:47 +0000 (16:38 +0400)]
0024889: Geom2dAPI_InterCurveCurve produces result with parameter outside the curve limits

1. DRAW-command for testing was created (see QABugs_19.cxx)
2. Alignments were changed in other files.

Main Changes are into IntCurve_IntConicConic_1.cxx file (variable isOutOfRange was added).
If found intersection point is out of range, minimal distance between corresponding ends of interval is taken. If this distance is less than tolerance, this point replaces found intersection point. Otherwise, found intersection point is ignored.
Modified QA command OCC24889 and added test case bugs/modalg_5/bug24889

9 years ago0024960: Value of result tolerance after "fixshape" is bigger than value of set ...
gka [Wed, 28 May 2014 12:11:04 +0000 (16:11 +0400)]
0024960: Value of result tolerance after "fixshape" is bigger than value of set "Maximal tolerance".

Description of using "Maximal tolerance" and "Minimal tolerance" values in class ShapeFix_Shape was updated.

9 years ago0024937: New compile warning in Extrema_GenExtCC.gxx on MacOS
aml [Wed, 28 May 2014 05:39:02 +0000 (09:39 +0400)]
0024937: New compile warning in Extrema_GenExtCC.gxx on MacOS

Compilation warning eliminated.

9 years ago0024953: Draw crashed after execution of test case bugs/modalg_5/bug24764
nbv [Wed, 28 May 2014 07:18:27 +0000 (11:18 +0400)]
0024953: Draw crashed after execution of test case bugs/modalg_5/bug24764

Reason of exception was liquidated.

9 years ago0024946: Wrong result obtained by Extrema Curve/Curve
aml [Thu, 29 May 2014 12:21:56 +0000 (16:21 +0400)]
0024946: Wrong result obtained by Extrema Curve/Curve

Fixes in Extrema Curve/Curve algorithm and in corresponding testcase.
Added test case bugs/modalg_5/bug24946

9 years ago0024831: Make iterators of NCollection classes STL-compatible
dbp [Wed, 23 Apr 2014 05:38:58 +0000 (09:38 +0400)]
0024831: Make iterators of NCollection classes STL-compatible

STL-compatible iterators returned methods begin() and end() are provided in collection classes from NCollection package.
NCollection_Array1::Iterator is redesigned to use pointer instead of index.
Iterators of Sequence, Array, and Vector are extended by new methods to iterate backwards.

Use of SortTools_QuickSortOfReal is replaced by std::sort() in a few places (where possible).

9 years ago0023951: Visibility of free, simple shapes not saved when writing XCAF Document into...
ika [Thu, 29 May 2014 12:14:45 +0000 (16:14 +0400)]
0023951: Visibility of free, simple shapes not saved when writing XCAF Document into STEP

Delete check for top-level shape during writing invisibility property.
Added QA command OCC23951.
Fix crash in QA command OCC23951: initialize document, initialize shape.
Added test case bugs/xde/bug23951
Modified QABugs/QABugs_19.cxx to avoid warnings

9 years ago0024931: Stack overflow when writing large shapes to XML
Roman Lygin [Thu, 29 May 2014 12:08:40 +0000 (16:08 +0400)]
0024931: Stack overflow when writing large shapes to XML

Added QA command OCC24931 and test case bugs/fclasses/bug24931

9 years ago0024784: Move documentation in CDL files to proper location
ski [Thu, 29 May 2014 12:05:47 +0000 (16:05 +0400)]
0024784: Move documentation in CDL files to proper location

Mostly duplicated comments were removed and missing ones were moved
into dedicated class CDL files.
Some more duplicated comments were removed from CDL files.
Correction of merge

9 years ago0022240: Bad triangulation of transformed shapes
azn [Thu, 29 May 2014 11:39:04 +0000 (15:39 +0400)]
0022240: Bad triangulation of transformed shapes

Correction of out transformation for the curves on plane surface.
Added test case bugs/vis/bug22240
Modified test cases according to new behavior.

9 years ago0024807: Exception in ShapeAnalysis_FreeBounds::ConnectEdgesToWires
nbv [Thu, 29 May 2014 11:36:23 +0000 (15:36 +0400)]
0024807: Exception in ShapeAnalysis_FreeBounds::ConnectEdgesToWires

The reason for the exception was that given compound contains only edges with INTERNAL orientation (there are not any wires or faces). Consequently, given shape is non-manifold a priory.
New fix handles some cases.
Added test case bugs/modalg_5/bug24807

9 years ago0024940: WOK: Cyclic dependency detected between: BOPInt IntTools
pkv [Mon, 26 May 2014 06:48:29 +0000 (10:48 +0400)]
0024940: WOK: Cyclic dependency detected between: BOPInt IntTools

Classes  BOPInt_Context, BOPInt_ShrunkRange, BOPInt_Tools have been removed.
Package BOPInt has been removed
Classes IntTools_Context, IntTools_ShrunkRange have been added to replace corresponding BOPInt_ classes.
The classes provide same functionality as corresponding BOPInt_ classes.
Classes :
BOPAlgo_ArgumentAnalyzer
BOPAlgo_Builder
BOPAlgo_BuilderArea
BOPAlgo_BuilderFace
BOPAlgo_BuilderSolid
BOPAlgo_CheckerSI
BOPAlgo_PaveFiller
BOPAlgo_ShellSplitter
BOPTools_AlgoTools3D
BRepFill_TrimShellCorner
IntTools_BeanFaceIntersector
IntTools_EdgeFace
IntTools_FaceFace
IntTools_Tools
have been modified to use new classes IntTools_Context IntTools_ShrunkRange

Class IntTools_Tools has been modofied to provide the functionality that was in BOPInt_Tools.

9 years ago0024862: CLang warnings -Wint-to-pointer-cast
ski [Mon, 19 May 2014 12:06:26 +0000 (16:06 +0400)]
0024862: CLang warnings -Wint-to-pointer-cast

Warning is fixed.

9 years ago0024920: Invalid result of Pipe construction
jgv [Thu, 29 May 2014 11:11:00 +0000 (15:11 +0400)]
0024920: Invalid result of Pipe construction

Added test case bugs/modalg_5/bug24920

9 years ago0024219: Strange if-statement in BrepMesh_IncrementalMesh
azn [Thu, 29 May 2014 11:08:29 +0000 (15:08 +0400)]
0024219: Strange if-statement in BrepMesh_IncrementalMesh

Simplifying if-statement in the Update(const TopoDS_Face& F) and Update(const TopoDS_Edge& F) methods from BrepMesh_IncrementalMesh class.
Translating French comment to English.

9 years ago0024897: Possibility of uncontrolled exit if scanner fails in ExprIntrp
abv [Thu, 29 May 2014 11:05:47 +0000 (15:05 +0400)]
0024897: Possibility of uncontrolled exit if scanner fails in ExprIntrp

Macro YY_FATAL_ERROR() is defined in ExprIntrp.lex in order to have exception instead of program exit in case of scanner error. Fixed-length string buffers are replaced by TCollection_AsciiString to avoid buffer overflow.
Some code refactoring: declarations of functions moved to header file, unused global declarations and variables removed, compiler warnings fixed or disabled, obsolete EDL file removed.
Test case for issue CR24897
Correction of MSVC compiler warning when scanner is generated using Flex 2.5.35 on Linux

9 years ago0024941: Need whitespace between predecessor tokens for CLang in c++11 mode
abv [Wed, 21 May 2014 05:43:12 +0000 (09:43 +0400)]
0024941: Need whitespace between predecessor tokens for CLang in c++11 mode

Whitespace added between macro OCC_VERSION_STRING and string literals when concatenation of string literals is used.

9 years ago0024950: Wrong result of Boolean CUT operation
emv [Thu, 29 May 2014 11:00:59 +0000 (15:00 +0400)]
0024950: Wrong result of Boolean CUT operation

Modification:
class BOPAlgo_PaveFiller
method BOPAlgo_PaveFiller::PutBoundPaveOnCurve().
Create bounding paves for each section curve separately.
Added test case bugs/modalg_5/bug24950

9 years ago0024830: Remove redundant keyword 'mutable' in CDL declarations
abv [Tue, 15 Apr 2014 04:50:00 +0000 (08:50 +0400)]
0024830: Remove redundant keyword 'mutable' in CDL declarations

Redundant keyword 'mutable' removed in CDL files.
In IGESConvGeom_GeomBuilder, unused methods MakeXY() and MakeXYZ() removed.
Method StepAP214_AutoDesignGroupAssignment::Init() replicating same method of the base class is removed as it causes CDL extraction error after above (seemingly irrelevant) changes.

9 years agoDeleted TODOs in test cases in Debug mode.
apn [Fri, 23 May 2014 08:42:44 +0000 (12:42 +0400)]
Deleted TODOs in test cases in Debug mode.

9 years agoIncreased cpulimits in test cases.
apn [Fri, 23 May 2014 08:38:03 +0000 (12:38 +0400)]
Increased cpulimits in test cases.

9 years ago0024887: Visualization - revise and extend Raytracing controls
dbp [Thu, 22 May 2014 14:57:34 +0000 (18:57 +0400)]
0024887: Visualization - revise and extend Raytracing controls

Fix material test case.
Fix ray-tracing test case and sample.

9 years ago0024864: Implementing refractions in ray-tracing
duv [Tue, 22 Apr 2014 12:55:21 +0000 (16:55 +0400)]
0024864: Implementing refractions in ray-tracing

Refraction index passed to raytrace shader.
For transparent objects implemented ray refraction according to refraction index.
Transparent materials modified to look better with refractions.

9 years ago0024936: Remove unused package IncludeLibrary
abv [Mon, 19 May 2014 13:17:09 +0000 (17:17 +0400)]
0024936: Remove unused package IncludeLibrary

Unused package IncludeLibrary and file IGESToBRep/project.pxx removed.

9 years ago0024835: Graphic structure for highlighting is not erased if presentable object for...
aba [Thu, 22 May 2014 14:15:21 +0000 (18:15 +0400)]
0024835: Graphic structure for highlighting is not erased if presentable object for highlight is deleted

Corrections in highlight state checks.

9 years ago0024879: Wrong result of General Fuse operation
emv [Thu, 22 May 2014 14:12:35 +0000 (18:12 +0400)]
0024879: Wrong result of General Fuse operation

Modifications:
1. class BOPAlgo_WireSplitter
  1.1. Removed static method RecomputeAngles(...).
  1.2. Minor corrections.
2. class BOPTools_AlgoTools
  2.1 method GetFaceOff
  For definition of an angles between faces the same step in 3D space has been used for all faces in the list.
  To define that step new static function MinStep3D has been implemented.

Added test case bugs/modalg_5/bug24879
Deleted unnecessary TODOs in test case bugs/modalg_2/bug497_3

9 years ago0023511: The function BRepTools::UVBounds provides icorrect result for a face
nbv [Mon, 19 May 2014 07:57:24 +0000 (11:57 +0400)]
0023511: The function BRepTools::UVBounds provides icorrect result for a face

Range of changing of some analytic curves is computed by other methods. It allows computing face's boundaries with more precise.
Tolerance was increased to provide successful work of some algorithms.
Functions BRepOffsetAPI_MiddlePath::Build() and ApproxWithPCurves(...) (file IntTools_FaceFace.cxx) were changed according to new result of algorithm's work.
It is possibly for "outboundaried faces" (see bug#23675) to compute incorrect UV-Bounds, when first parameter is more than last. To avoid it, extended control of computed bounds was added.
Function for fail sameparameter fixing was added to HLRAppli_ReflectLines to avoid creation bad shapes after algorithm's work.

In file ShapeFix_ComposeShell.cxx only text formatting was changed.

Some test cases are changed according to their new behavior.
Added test case bugs/moddata_3/bug23511

9 years ago0024832: Performance of new boolean operations has become worse
dbp [Thu, 22 May 2014 13:52:20 +0000 (17:52 +0400)]
0024832: Performance of new boolean operations has become worse

Replace C pointers with handles.
Encapsulate handles in Extrema_ExtPExtS and Extrema_ExtPRevS classes.

9 years ago0024157: Parallelization of assembly part of BO
pkv [Thu, 22 May 2014 13:49:52 +0000 (17:49 +0400)]
0024157: Parallelization of assembly part of BO

The modifications deal with the parallelization of P-curves computations.
Added test cases bugs/modalg_5/bug24157_1 ... bug24157_9

9 years ago0024928: Visualization - FSAA is not working in ray-tracing mode
dbp [Thu, 15 May 2014 06:45:49 +0000 (10:45 +0400)]
0024928: Visualization - FSAA is not working in ray-tracing mode

9 years ago0002883: It is impossible to set material, color and transparency to compound
aba [Thu, 22 May 2014 13:33:02 +0000 (17:33 +0400)]
0002883: It is impossible to set material, color and transparency to compound

Fast shading presentation update on setting color, material and transparency for AIS_Shape:
- Iterate through all groups not only last one.
- Iterate through all presentation (to change presentations in all viewers).

Added test cases bugs/vis/bug2883_1 and bugs/vis/bug2883_2

9 years ago0006897: Impossible to change edge line type in 3D View
aba [Thu, 22 May 2014 13:29:57 +0000 (17:29 +0400)]
0006897: Impossible to change edge line type in 3D View

Added command vsetedgetype; added test case bugs/vis/bug6897 to test edge type management.
vunsetedgetype DRAW command was added and test case was updated.
added -force option to set edge type commands to force redisplay.
Otherwise  primitive aspects are updated without object redisplaying.

9 years ago0024430: vviewlist draw command does not added name of viewer created by XShow draw...
kgv [Thu, 22 May 2014 13:26:26 +0000 (17:26 +0400)]
0024430: vviewlist draw command does not added name of viewer created by XShow draw command

Remove ViewerTest_Tool, keep only one unified way to create viewer using ViewerTest - ViewerTest::ViewerInit().
Remove test case bugs/vis/buc60851 and command BUC60851.
Added test case bugs/xde/bug24430

9 years ago0024933: Inconsistent results of self-interferences checker in SALOME and DRAW Applic...
pkv [Thu, 22 May 2014 13:24:17 +0000 (17:24 +0400)]
0024933: Inconsistent results of self-interferences checker in SALOME and DRAW Applications.

class BOPAlgo_CheckerSI
   - methods:
void BOPAlgo_CheckerSI::Perform()

class BOPAlgo_ArgumentAnalyzer
   - methods:
void BOPAlgo_ArgumentAnalyzer::TestSelfInterferences()

The changes have been done to provide the consistence
between results in SALOME Application and DRAW Application

The sytax of the command "bopcheck" has been changed:
bopcheck Shape [level of check: 0 - 9] [-t -s]
The options:
 -t - display elapsed CPU time
 -s - run in serial (non-parallel) mode. The default mode is parallel.

Modified test cases bugs/modalg_5/bug24029 and bugs/modalg_5/bug24764 according to changed output format of the "bopcheck" command.

9 years ago0024885: Getting rid of "TKAdvTools" toolkit
dln [Thu, 22 May 2014 13:20:38 +0000 (17:20 +0400)]
0024885: Getting rid of "TKAdvTools" toolkit

"TKAdvTools" toolkit was deleted.
And packages from this toolkit were:
- GraphDS -> deleted
- GraphTools -> moved to WOK
- Dynamic -> deleted
- Materials -> deleted
- Expr -> moved to TKMath
- ExprIntrp -> moved to TKMath
- TKAdvTools -> deleted
All references of the "TKAdvTools" toolkit were removed

9 years ago0024509: Suspect unused variable in TPrsStd_ConstraintTools.cxx
aba [Thu, 22 May 2014 13:13:04 +0000 (17:13 +0400)]
0024509: Suspect unused variable in TPrsStd_ConstraintTools.cxx

- AIS_TypeOfDist is not used for length dimension construction;
- Added opportunity to build TPrsSrd length constraint on one edge.
- length dimension in TPrsStd_ConstraintTool is build on one or two shapes, but not on three.
Added validation of dimension plane.
Warnings were corrected.

9 years ago0024024: Slow import of specific STEP data
ika [Thu, 22 May 2014 13:09:07 +0000 (17:09 +0400)]
0024024: Slow import of specific STEP data

Add using bounding boxes to accelerating of import
Replace Map of bounding boxes with array.
fix cosmetic mistake
Improving check for periodic cases.

9 years ago0024880: Invalid result of pipe creation
jgv [Thu, 22 May 2014 13:03:34 +0000 (17:03 +0400)]
0024880: Invalid result of pipe creation

Modified test case bugs/modalg_5/bug24840 according to new behavior. Added checkshape.

9 years ago0024924: ShapeFix_SplitTool doesn't verify the new range after cutting an edge
razmyslovich [Wed, 14 May 2014 15:20:14 +0000 (17:20 +0200)]
0024924: ShapeFix_SplitTool doesn't verify the new range after cutting an edge

Validate the new cut range before setting it to edge

9 years ago0024922: ShapeAnalysis_Wire::CheckIntersectingEdges doesn't report an intersection...
razmyslovich [Wed, 14 May 2014 11:30:02 +0000 (13:30 +0200)]
0024922: ShapeAnalysis_Wire::CheckIntersectingEdges doesn't report an intersection point if it is inside of tolerance even only on edge

Fix the tolerances check for an intersection point in ShapeAnalysis_Wire::CheckIntersectingEdges

9 years ago0024921: ShapeAnalysis_Curve::ValidateRange doesn't adjust the range for periodic...
razmyslovich [Wed, 14 May 2014 11:16:16 +0000 (13:16 +0200)]
0024921: ShapeAnalysis_Curve::ValidateRange doesn't adjust the range for periodic curves

Fix the sequence of conditional checks and always try to adjust the range for periodic curves

9 years ago0024919: ShapeFix can crash time-to-time due to inproper interator handling inside...
razmyslovich [Wed, 14 May 2014 10:28:15 +0000 (12:28 +0200)]
0024919: ShapeFix can crash time-to-time due to inproper interator handling inside of Approx_SameParameter::Build function

Check inter variable to be inside of the desired range

9 years agoAdded TODO in unstable test case.
apn [Fri, 16 May 2014 10:15:54 +0000 (14:15 +0400)]
Added TODO in unstable test case.

9 years agoChenge extension of shape in test case bugs/moddata_3/bug24800
apn [Fri, 16 May 2014 10:15:11 +0000 (14:15 +0400)]
Chenge extension of shape in test case bugs/moddata_3/bug24800

9 years agoIncrease cpulimits in test cases (for debug mode).
apn [Fri, 16 May 2014 10:14:27 +0000 (14:14 +0400)]
Increase cpulimits in test cases (for debug mode).

9 years ago0024855: Revision of parameters of standard materials
dbp [Wed, 30 Apr 2014 11:14:17 +0000 (15:14 +0400)]
0024855: Revision of parameters of standard materials

Improve consistency and visual appearance of predefined OCCT materials in various rendering modes, including ray-tracing:
- Increase the specular exponents (shininesses) for metallic surfaces: Brass, Bronze, Copper, Gold, Pewter, Silver, Steel, Chrome, Aluminum.
- Revise specular colors for metals: Copper, Gold, Aluminum, Silver (according to "Real-Time Rendering, 3rd Edition", AK Peters 2008).
- Increase diffuse reflection of metals: Silver, Aluminum, Chrome (to make them brighter in OpenGL mode).
- Extend Material definition by Refraction Index.
  Advanced rendering methods based on shaders or ray-tracing can utilize it to produce refraction effects.

In addition:
- Introduce three translucent materials: Water, Glass, and Diamond.
- Add Charcoal for modeling dark diffuse surfaces.

Add new TCL-based sample (materials.tcl) and test case (tests/v3d/materials/bug24855).

9 years ago0024854: Merge of Technical Overview from opencascade.org site into the documentation
ysn [Thu, 17 Apr 2014 12:36:11 +0000 (16:36 +0400)]
0024854: Merge of Technical Overview from opencascade.org site into the documentation

The Technical overview has been reviewed and extended:
with the sections (and other pieces of text) present on org, but missing in the documentation, most important:
  - Extended Data exchange
  - Sewing
  - Mesh
with more inter-page links reproducing left-column "more about" links
some images from site, mostly in "Data Exchange" Section.

9 years ago0024896: BRepExtrema is giving wrong intersection point between curve and planar...
ifv [Thu, 15 May 2014 13:53:58 +0000 (17:53 +0400)]
0024896: BRepExtrema is giving wrong intersection point between curve and planar face

Added test case bugs/moddata_3/bug24896. Modified unstable test cases and increased cpu limit in bugs/modalg_5/bug24190.

9 years ago0024899: Time of computation of intersection points with help of class BRepIntCurveSu...
gka [Thu, 15 May 2014 13:52:43 +0000 (17:52 +0400)]
0024899: Time of computation of intersection points with help of class BRepIntCurveSurface_Inter is big.

Sorting by intersection of bounding boxes of faces with line or box built for curve was added.
Recursive call method Find() was replaced on sequential call.
Added method Init  to initialize algorithm by separate curve for intersection of shape by multiple curves.
Added possibility to intersect shape by multiple curves in DRAW command.

Added test case bugs/modalg_5/bug24899