occt.git
5 years ago0023328: Importing VRML files with "scaleOrientation" not possible
akz [Thu, 29 Jan 2015 11:23:35 +0000]
0023328: Importing VRML files with "scaleOrientation" not possible

If-else blocks "scale" and "scaleOrientation" was swapped. Now the comparing and interpretation of these key-words is correct.

Added test case bugs/xde/bug23328

5 years ago0025632: IGES writer looses face orientation
ika [Thu, 29 Jan 2015 11:13:29 +0000]
0025632: IGES writer looses face orientation

Adding reversing surfaces before writing for reversed faces

Test case for issue CR25632

5 years ago0025717: Non reentrant (and hence non-thread-safe) math_RealRandom / _IntegerRandom
abv [Sun, 18 Jan 2015 14:08:40 +0000]
0025717: Non reentrant (and hence non-thread-safe) math_RealRandom / _IntegerRandom

Classes math_IntegerRandom and math_RealRandom, and method Random2 in math_Recipes, removed. Class math_BullardGenerator is used instead.

5 years ago0025679: Visualization, TKOpenGl - View frustum culling clips wrong objects
vpa [Wed, 28 Jan 2015 09:21:58 +0000]
0025679: Visualization, TKOpenGl - View frustum culling clips wrong objects

Corrected area calculation for degenerated AABBs in BVH_Box;
Test case for issue 25679.

5 years ago0025743: Add FixMode parameter to DropSmallSolids operator
imn [Fri, 23 Jan 2015 10:31:01 +0000]
0025743: Add FixMode parameter to DropSmallSolids operator

5 years ago0025715: Intersection between cylinders produces excess vertices
nbv [Thu, 29 Jan 2015 11:00:11 +0000]
0025715: Intersection between cylinders produces excess vertices

1. Curve boundaries were more precised.
2. Some test cases were changed in accordance of their new behavior.
3. Code fragment for WLines joining was moved to higher level (for more universal using in the future).

Code was changed in accordance with the last remark.

Added test cases bugs/modalg_5/bug25715_1 bug25715_2 bug25715_3

5 years ago0025712: Non-deterministic behavior of ShapeFix_Solid
Roman Lygin [Thu, 29 Jan 2015 10:56:53 +0000]
0025712: Non-deterministic behavior of ShapeFix_Solid

Test-case for issue #25712

5 years ago0025704: BRepOffsetAPI_MakeOffset: some customer's cases are processed incorrect
jgv [Thu, 29 Jan 2015 10:45:47 +0000]
0025704: BRepOffsetAPI_MakeOffset: some customer's cases are processed incorrect

Added test cases bugs/modalg_5/bug25704_1 - bug25704_6

5 years ago0025622: CAST analysis: Avoid invocation of virtual Methods of the declared Class...
azn [Thu, 18 Dec 2014 07:27:01 +0000]
0025622: CAST analysis: Avoid invocation of virtual Methods of the declared Class in a Constructor or Destructor

The Delete() methods have been deleted from the following classes:
- Adaptor2d_Curve2d
- Adaptor3d_Curve
- Adaptor3d_Surface
- AppBlend_Approx
- AppCont_Function
- AppParCurves_MultiCurve
- AppParCurves_MultiPoint
- ApproxInt_SvSurfaces
- BRepPrim_OneAxis
- BRepSweep_NumLinearRegularSweep
- BRepSweep_Translation
- BRepSweep_Trsf
- DBC_BaseArray
- GeomFill_Profiler
- HatchGen_PointOnHatching
- math_BFGS
- math_FunctionSet
- math_FunctionSetRoot
- math_FunctionWithDerivative
- math_MultipleVarFunction
- math_MultipleVarFunctionWithHessian
- math_MultipleVarFunctionWithGradient
- math_Powell
- math_NewtonMinimum
- math_NewtonFunctionSetRoot
- math_BissecNewton (just add virtual destructor)
- math_FRPR
- math_BrentMinimum (just add virtual destructor)
- OSD_Chronometer
- ProjLib_Projector

Virtual methods Delete() or Destroy() of the transient inheritors is not changed (-> separate issue).
Classes Graphic3d_DataStructureManager and PrsMgr_Presentation without changes.

5 years ago0023640: Documentation for local sewing with BRepBuilderAPI_Sewing is missing
ysn [Thu, 29 Jan 2015 10:21:33 +0000]
0023640: Documentation for local sewing with BRepBuilderAPI_Sewing is missing

Fix for bug 23640.
Merging the rest of Technical Overview content into User's Guides.

-Correct UG sections concerning Sewing.
-Correct comments in the code referring to old location of sewing algorithm.

5 years ago0025719: Boolean operations can crash
msv [Fri, 23 Jan 2015 15:07:15 +0000]
0025719: Boolean operations can crash

Suppress math_BFGS constructor that calls the method Perform that in its turn calls the virtual method IsSolutionReached.

5 years ago0023880: Integration of grid "ncl" into the new testing system
abv [Thu, 29 Jan 2015 10:09:07 +0000]
0023880: Integration of grid "ncl" into the new testing system

Function perf_sprint_all_meters added in OSD_PerfMeter.h to allow printing to string buffer rather than stdout. Macro PERF_PRINT_ALL converted to functional form.

Command dperf added in DRAW to print and conditionally reset all meters.
Description of these tools is added in Debug Hints.

Modified output of command QANTestNCollectionPerformance.
Added test case perf/ncollection/A1

Modified ratio of performance to check all platforms

Small correction of test-case for Windows platform

5 years ago0025582: SIGSEGV in thrusections of circle segments
azv [Fri, 23 Jan 2015 12:55:56 +0000]
0025582: SIGSEGV in thrusections of circle segments

Eliminating regressions

Fixed compilation warning ('di' : unreferenced formal parameter).

Added test bugs/modalg_5/bug25578

5 years ago0025706: SIGSEGV after making existing BSplineCurve rational
azv [Wed, 14 Jan 2015 07:00:06 +0000]
0025706: SIGSEGV after making existing BSplineCurve rational

1. Eliminated exception after conversion non-rational B-spline to rational
2. Implemented DRAW command setweight to change weights of B-spline
3. Test cases were added

5 years ago0025582: SIGSEGV in thrusections of circle segments
azv [Wed, 14 Jan 2015 14:26:30 +0000]
0025582: SIGSEGV in thrusections of circle segments

1. Implemented using of trimmed circular curve
2. Added test case

5 years ago0025578: SIGSEGV in BRepSweep_Rotation in case of singularities
azv [Tue, 13 Jan 2015 14:44:38 +0000]
0025578: SIGSEGV in BRepSweep_Rotation in case of singularities

Eliminating degenerated edges

5 years ago0025711: Get rid of static variable islambdadefined in AppParCurves_BSpGradient.gxx
azv [Fri, 16 Jan 2015 07:32:51 +0000]
0025711: Get rid of static variable islambdadefined in AppParCurves_BSpGradient.gxx

5 years ago0025346: Wrong result of General Fuse operation
apn [Mon, 26 Jan 2015 12:20:52 +0000]
0025346: Wrong result of General Fuse operation

Added test cases bugs/modalg_5/bug25346_1 bug25346_2

5 years ago0025692: Boolean operations minor improvement
István Csanády [Thu, 8 Jan 2015 17:18:00 +0000]
0025692: Boolean operations minor improvement

Method IntPolyh_MaillageAffinage::TriContact() improved so that local objects for detailed analysis are not created if algorithm exits by simple conditions checked at the beginning.

5 years ago0020040: Difference in treatment of closed curves in BRep_Builder::UpdateEdge
azv [Thu, 22 Jan 2015 14:42:06 +0000]
0020040: Difference in treatment of closed curves in BRep_Builder::UpdateEdge

Test case was added

Modified test cases to extract the shell from the solid and check it for closeness.

5 years ago0025656: Specification of semantic of Closed flag of an edge
azv [Tue, 30 Dec 2014 04:37:51 +0000]
0025656: Specification of semantic of Closed flag of an edge

1. Using of the "Closed" flag was unified:
  a) this flag is applicable for TopoDS_Wire and TopoDS_Shell only, because these entities may hedge an area in 2D space or a volume in 3D space correspondingly;
  b) other types of TopoDS shapes are passing over this flag;
  c) changing of this flag should be controlled by high-level algorithms (not BRep_Builder).
2. Implemented verification of the closedness of edges. An edge is closed if and only if its first and last vertices are the same.
3. Test cases were changed according to new behavior.

5 years ago0024394: Visualization - implement more general way for rendering of immediate objects
kgv [Thu, 22 Jan 2015 14:29:37 +0000]
0024394: Visualization - implement more general way for rendering of immediate objects

Move OpenGl_Structure::myZLayer to base class Graphic3d_CStructure.
Graphic3d_ZLayerId - introduce new pre-defined ZLayers.
Do not clear Depth buffer twice for default ZLayer.

AIS_InteractiveContext::Display() - add new argument AIS_DisplayStatus to specify displaying status.

Drop unused Graphic3d_CPick and related methods.
Drop OpenGl_Structure::myNamedStatus - use flags from parent class Graphic3d_CStructure directly.
OpenGl_LayerList ::ChangeLayer(), ::ChangePriority - fix structure remove from unexpected layer.
Merge class OpenGl_PriorityList into OpenGl_Layer.

PrsMgr_PresentationManager::mySelectionColor - store selection color as field of Presentation Manager.
PrsMgr_Presentation class - do not declare private methods as virtual.
PrsMgr_Presentation::Highlight() - extend method syntax and drop methods ::Color() and ::BoundBox().

PrsMgr_PresentableObject - store ZLayer in presentable object
to display object presentations in required layer directly
(without displaying it in wrong layer first).

test/mesh/end - force re-displaying the shape to compute mesh anew

Test-case for issue

5 years ago0025722: Wrong implementation of SetFuzzyValue method
emv [Thu, 22 Jan 2015 14:24:00 +0000]
0025722: Wrong implementation of SetFuzzyValue method

The following methods
  void BOPAlgo_ArgumentAnalyzer::SetFuzzyValue(const Standard_Real theFuzz)
  void BOPAlgo_Builder::SetFuzzyValue(const Standard_Real theFuzz)
  void BOPAlgo_PaveFiller::SetFuzzyValue(const Standard_Real theFuzz)
  void BOPDS_DS::SetFuzzyValue(const Standard_Real theFuzz)
  void BRepAlgoAPI_BuilderAlgo::SetFuzzyValue(const Standard_Real theFuzz)
  void BRepAlgoAPI_Check::SetFuzzyValue(const Standard_Real theFuzz)
have been corrected.

Added test case bugs/modalg_5/bug25722

5 years ago0025721: Wrong result obtained by Common operator.
pkv [Thu, 22 Jan 2015 14:19:07 +0000]
0025721: Wrong result obtained by Common operator.

Changes:
class BOPTools_Set
 method:
    void BOPTools_Set::Add(const TopoDS_Shape& theS,
                       const TopAbs_ShapeEnum theType)
  has been changed. The treatment of INTERNAL edges has been added.

Added test case bugs/modalg_5/bug25721

5 years ago0025569: Tests 24959_1 and 24959_2 are not correct
ski [Wed, 21 Jan 2015 11:56:10 +0000]
0025569: Tests 24959_1 and 24959_2 are not correct

Test cases were corrected to check triangulation deflection

5 years ago0025697: Regression : Section obtained after command "bsection" in Test Harness is...
nbv [Thu, 22 Jan 2015 14:06:33 +0000]
0025697: Regression : Section obtained after command "bsection" in Test Harness is incorrect.

Interface of bopcurves DDRAW-command were extended. Now it is possible to obtain
a) only 3D-curves;
b) 3D-curves and 2D-curves on one of surfaces intersected (surface can be selected);
c) 3D-curves and 2D-curves on every surface intersected.

Use "help bopcurves" to see detail information.

Added test cases bugs/modalg_5/bug25697_1 bug25697_2

Small changes in test case bugs/modalg_5/bug25697_2

5 years ago0025597: Invalid curve on surface in the result of General Fuse operation
emv [Thu, 22 Jan 2015 13:54:54 +0000]
0025597: Invalid curve on surface in the result of General Fuse operation

1. The tool of computing the max distance between 3D curve and its 2d representation on the face
has been moved from static methods in BOPTools_AlgoTools class to BRepLib_CheckCurveOnSurface class.
2. The tools has been applied to 2d curves built during Boolean Operation
and to some intersection curves.
3. The functions
  Standard_Boolean BOPTools_AlgoTools::ComputeTolerance
    (const TopoDS_Face& theFace,
     const TopoDS_Edge& theEdge,
     Standard_Real& theMaxDist,
     Standard_Real& theMaxPar)
and
  Standard_Boolean IntTools_Tools::ComputeTolerance
    (const Handle(Geom_Curve)& theCurve3D,
     const Handle(Geom2d_Curve)& theCurve2D,
     const Handle(Geom_Surface)& theSurf,
     const Standard_Real theFirst,
     const Standard_Real theLast,
     Standard_Real& theMaxDist,
     Standard_Real& theMaxPar)
have been developed for easy access to BRepLib_CheckCurveOnSurface functionality.

class IntTools_FaceFace
method void IntTools_FaceFace::ComputeTolReached3d()
Case for Plane/BSpline intersection added for treatment.

Test case for issue CR25597

Fix for regression boolean bsection N7.

class BOPAlgo_PaveFiller
method
  void BOPAlgo_PaveFiller::UpdateFaceInfo
    (BOPDS_DataMapOfPaveBlockListOfPaveBlock& theDME,
     const BOPCol_DataMapOfIntegerInteger& theDMV)
Updating Face Info information with new vertices created in PostTreatFF.

Correction boolean/bsection/N2

Updated test cases.

5 years ago0025703: Visualization - Decrease number of samplers used in ray-tracing mode
dbp [Wed, 14 Jan 2015 08:04:27 +0000]
0025703: Visualization - Decrease number of samplers used in ray-tracing mode

This patch eliminates 3 samplers used in ray-tracing mode:

//! Texture buffer of data records of bottom-level BVH nodes.
Handle(OpenGl_TextureBufferArb) myObjectNodeInfoTexture;
//! Texture buffer of minimum points of bottom-level BVH nodes.
Handle(OpenGl_TextureBufferArb) myObjectMinPointTexture;
//! Texture buffer of maximum points of bottom-level BVH nodes.
Handle(OpenGl_TextureBufferArb) myObjectMaxPointTexture;

Serialized data contained in corresponding texture buffers were added to global scene buffers:

//! Texture buffer of data records of high-level BVH nodes.
Handle(OpenGl_TextureBufferArb) mySceneNodeInfoTexture;
 //! Texture buffer of minimum points of high-level BVH nodes.
Handle(OpenGl_TextureBufferArb) mySceneMinPointTexture;
//! Texture buffer of maximum points of high-level BVH nodes.
Handle(OpenGl_TextureBufferArb) mySceneMaxPointTexture;

This modifications leads also to small performance improvement (~2%) due to higher texture cache efficiency. Some modifications in traversal function (GLSL code) also improve performance (~3%).

5 years ago0025694: Change STEP exporter to use AP214 IS by default
Roman Lygin [Thu, 22 Jan 2015 13:42:58 +0000]
0025694: Change STEP exporter to use AP214 IS by default

Test-case for issue #25694

5 years ago0025663: Expand math_PSO class description
aml [Fri, 26 Dec 2014 09:56:35 +0000]
0025663: Expand math_PSO class description

math_PSO class description extended.

5 years agoAdjusting new testing cases
mkv [Fri, 16 Jan 2015 10:32:55 +0000]
Adjusting new testing cases

5 years ago0025661: Visualization - AIS_InteractiveContext::Load() is not symmetric to the local...
san [Thu, 25 Dec 2014 16:09:57 +0000]
0025661: Visualization - AIS_InteractiveContext::Load() is not symmetric to the local context method

Register theIObj in the selection manager to prepare further activation of selection

5 years ago0025621: CAST analysis - Avoid constructors not supplying an initial value for all...
azn [Thu, 25 Dec 2014 07:00:13 +0000]
0025621: CAST analysis - Avoid constructors not supplying an initial value for all non-static data members

The constructors of classes from following files have been fixed to ensure that all non-static fields are initialized:

    Adaptor2d_Line2d.cxx
    Adaptor3d_IsoCurve.cxx
    Adaptor3d_OffsetCurve.cxx
    AdvApp2Var_ApproxAFunc2Var.cxx
    AIS_Dimension.cxx
    AIS_InteractiveContext.cxx
    Aspect_DisplayConnection.cxx
    BiTgte_CurveOnEdge.cxx
    BiTgte_CurveOnVertex.cxx
    BRepAdaptor_CompCurve.cxx
    BRepMesh_Circle.hxx
    BRepMesh_Delaun.cxx
    BRepToIGES_BREntity.cxx
    ChFi2d_AnaFilletAlgo.cxx
    ChFi2d_ChamferAPI.cxx
    ChFi2d_FilletAlgo.cxx
    ChFi2d_FilletAlgo.hxx
    Extrema_ExtPExtS.cxx
    Font_FTFont.cxx
    GccEnt_QualifiedCirc.cxx
    Geom2dAdaptor_Curve.cxx
    IGESData_IGESEntity.cxx
    IGESData_DefSwitch.cxx
    IGESToBRep_CurveAndSurface.cxx
    LDOM_XmlReader.cxx
    math_TrigonometricFunctionRoots.cxx
    NCollection_ListNode.hxx
    ProjLib_CompProjectedCurve.cxx
    ProjLib_ComputeApproxOnPolarSurface.cxx
    Select3D_Box2d.hxx
    Select3D_PointData.hxx

5 years ago0025662: Project command produce wrong 2dcurve
aml [Thu, 15 Jan 2015 12:40:25 +0000]
0025662: Project command produce wrong 2dcurve

Concatenation algorithm fixed to work over periodic bspline surfaces.

Test case for issue CR25662

5 years ago0025649: crvtpoints command return wrong deflection in output.
aml [Thu, 15 Jan 2015 12:37:10 +0000]
0025649: crvtpoints command return wrong deflection in output.

Deflection computation algorithm changed to PSO+NewtonMinimum.

Correction of test case

5 years ago0025660: Project command produce wrong 2dcurve
aml [Thu, 15 Jan 2015 12:33:15 +0000]
0025660: Project command produce wrong 2dcurve

Changed starting point of Newton optimization.

Test case for issue CR25660

5 years ago0025596: GCPnts_TangentialDeflection creates wrong point distribution for visualization
aml [Fri, 12 Dec 2014 10:40:06 +0000]
0025596: GCPnts_TangentialDeflection creates wrong point distribution for visualization

Added check to small step after adding new point to prevent possible jump over local splash. If check failed then old step restored.

5 years ago0025466: Visualization - Impossible to change the display mode when a local context...
kgv [Thu, 15 Jan 2015 12:25:52 +0000]
0025466: Visualization - Impossible to change the display mode when a local context is opened

Remove irrelevant check from method AIS_InteractiveContext::SetDisplayMode().

Test case for issue CR25466

5 years ago0025664: Visualization - dynamic highlighting should not be discarded on re-displayin...
kgv [Tue, 13 Jan 2015 07:48:04 +0000]
0025664: Visualization - dynamic highlighting should not be discarded on re-displaying independent object

Clear list of immediate presentations in proper place - in AIS_LocalContext::manageDetected()
instead of AIS_LocalContext::Unhilight().

5 years ago0025700: Ensuring uniform control of the functionalities of the Boolean operations...
pkv [Wed, 14 Jan 2015 06:43:30 +0000]
0025700: Ensuring uniform control of the functionalities of the Boolean operations algorithm at the level of DRAW application

Changes:
1.
Class BOPTest_Chronometer
The class definition that depends on TBB has been removed

2.
For the following commands:
>bop s1 s2 [tol]
>bopcommon r s1 s2 [tol]
>bfuse r s1 s2 [tol]
>bcut s1 s2 [tol]
>btuc r s1 s2 [tol]
>bsection r s1 s2 [-n2d/-n2d1/-n2d2] [-na] [tol]
>mkvolume r b1 b2 ... [-c] [-ni] [-s] [tol]
>bopcheck Shape [level of check: 0 - 9] [-t -s] [-tol tol]
>bopargcheck Shape1 [[Shape2] [-F/O/C/T/S/U] [/R|F|T|V|E|I|P|C|S]] [#BF] [-tol tol]
>bfillds [-s -t] [tol]
the syntax has been changed. Parameter [tol] has been removed.

The value "tol"  (i.e. Fuzzy Value) is option for the algorithm.

If it is necessary, the value "tol" can be set by the command:
>bfuzzyvalue value

see
http://tracker.dev.opencascade.org/view.php?id=25614
for more details

3.
For the following commands:
>bopcheck Shape [level of check: 0 - 9] [-t -s] [-tol tol]
>bfillds [-s -t] [tol]
>bbuild r [-s -t]
>bbop r op [-s -t]
the syntax has been changed. Parameter [-s] has been removed.
Parameter [-s] was to provide the sequential mode of the computations.

The mode of the computations is option for the algorithm.

The mode of the computations can be set by the command:
 >brunparallel [0/1]
       1 -sets the parallel mode of the computations
       0 -sets the sequential mode of the computations

see
http://tracker.dev.opencascade.org/view.php?id=25614
for more details

5 years ago0025691: Visualization, TKService - fix font corruption on FreeType 2.5.4
kgv [Wed, 7 Jan 2015 20:29:06 +0000]
0025691: Visualization, TKService - fix font corruption on FreeType 2.5.4

5 years ago0023922: Systematic review of TODO tests
ski [Thu, 15 Jan 2015 12:06:54 +0000]
0023922: Systematic review of TODO tests

Small corrections for test cases with "TEST INCOMPLETE" result.

TODO statements with "TEST INCOMPLETE" were checked and corrected.

5 years ago0025657: Bad result of Fillet operation
jgv [Thu, 15 Jan 2015 12:04:05 +0000]
0025657: Bad result of Fillet operation

Comments have been precised.

Test case for issue CR25657

Fix of regression

Additional test case.

5 years ago0023626: It's impossible to open files containing localisation characters in the...
ski [Tue, 9 Dec 2014 13:24:00 +0000]
0023626: It's impossible to open files containing localisation characters in the name

Files containing localisation characters can be opened and saved now properly.

5 years ago0025523: Fail to read back solid written to STEP
ink [Thu, 15 Jan 2015 11:51:21 +0000]
0025523: Fail to read back solid written to STEP

Fixed a exception occurred during reading step file

Test case for issue CR25523

5 years ago0025634: Checking of compliance of vertices and pcurve fails
vro [Thu, 15 Jan 2015 11:47:07 +0000]
0025634: Checking of compliance of vertices and pcurve fails

A fix + a checkedge draw-command to check the fix.

Test case for issue CR25634

5 years ago0025616: Avoid Classes using "new" to allocate Instances but not defining a copy...
azn [Thu, 15 Jan 2015 11:41:27 +0000]
0025616: Avoid Classes using "new" to allocate Instances but not defining a copy Constructor

The empty copy constructor, assignemnts operator, default constructors added to the following classes:
The following classes use “new” function without Handles:
- Select3D_PointData
- BSB_T3Bits
- IntPatch_InfoPD
- LDOM_StringElem
- BinomAllocator
- ProjLib_OnSurface
- Standard_MMgrFactory

Useless declaration of default constructor have been deleted.

5 years ago0025532: Visualization - fix cross-references between AIS_ConnectedInteractive and...
dbp [Thu, 15 Jan 2015 11:37:12 +0000]
0025532: Visualization - fix cross-references between AIS_ConnectedInteractive and connected presentation

New test case added.

5 years ago0025222: Visualization - provide distance field builder in the Math/BVH package
dbp [Thu, 15 Jan 2015 11:33:23 +0000]
0025222: Visualization - provide distance field builder in the Math/BVH package

A distance field is a representation where, at each point within the field, the distance from that point to the closest point on the object is specified.
In addition to distance, other properties may be derived from the distance field, such as the direction to the surface, and when the distance field is signed, we may also determine if the point is internal or external to objects within the domain.
The distance field has been found to be a useful construction within the areas of computer vision, physics, and computer graphics. In particular, distance fields can be used for generating realistic visual effects and collision detection.

Fix compilation warning when using GCC.

5 years ago0025629: Visualization, AIS_InteractiveContext - code clean up
kgv [Wed, 24 Dec 2014 09:15:53 +0000]
0025629: Visualization, AIS_InteractiveContext - code clean up

Drop confusing method AIS_InteractiveContext::Clear() which is the same as ::Remove().
AIS_InteractiveContext::Display() - fix double viewer update on first display of presentation.
AIS_InteractiveContext::DisplayedObjects() - fix objects retrieval from local contexts.
AIS_InteractiveContext::Load() - do not bind object twice.

Drop code blocks for debug output.
Code clean up.

5 years ago0025650: Visualization - AIS_Line::ComputeSelection() should not ignore the selection...
san [Wed, 24 Dec 2014 07:37:09 +0000]
0025650: Visualization - AIS_Line::ComputeSelection() should not ignore the selection mode argument

Only selection mode 0 is supported from now on.

5 years ago0025669: Unable to compile BOPTest package in WOK
emv [Sat, 27 Dec 2014 05:18:30 +0000]
0025669: Unable to compile BOPTest package in WOK

package BOPTest
BOPTest_Chronometer.hxx has been added to FILES.

5 years agoCosmetic update testing cases.
mkv [Fri, 26 Dec 2014 10:02:51 +0000]
Cosmetic update testing cases.

5 years ago0025570: New Tcl sample scripts created for CAD Assistant
abv [Tue, 23 Dec 2014 04:03:42 +0000]
0025570: New Tcl sample scripts created for CAD Assistant

Three new sample scripts created during development of CAD Assistant for Android added in samples/tcl:

- Penrose.tcl: creation of Penrose triangle made of boxes resembling ones from OCC logo
- pencil.tcl: creation of colored pencil model
- snowflake.tcl: creation of 2d drawing of snowflake

5 years ago0025545: TopLoc_Location::Transformation() provokes data races
msv [Thu, 25 Dec 2014 15:31:11 +0000]
0025545: TopLoc_Location::Transformation() provokes data races

Get rid of postponed calculation of transformation.
Remove unused methods.
Add command OCC25545 to reproduce the bug with data races.

- Get rid of C++11 lambda construction
- make code compilable with no HAVE_TBB defined
- add test case bugs/fclasses/bug25545

5 years ago0025351: Visualization - provide pseudo random number generator in OCCT ray-tracing...
dbp [Tue, 23 Dec 2014 11:39:18 +0000]
0025351: Visualization - provide pseudo random number generator in OCCT ray-tracing core

5 years ago0025627: SelectedShape() and HasSelectedShape() of AIS_InteractiveContext class do...
vpa [Fri, 19 Dec 2014 12:24:09 +0000]
0025627: SelectedShape() and HasSelectedShape() of AIS_InteractiveContext class do not work as expected.

Location calculation in SelectedShape() was corrected;
Method HasSelectedShape() that does not take into account shape decomposition was added.

Test case for issue 25627

5 years ago0025651: GL_LUMINANCE8 should be defined for android case
ibs [Fri, 19 Dec 2014 15:40:31 +0000]
0025651: GL_LUMINANCE8 should be defined for android case

GL_LUMINANCE8 defined

5 years ago0025612: Introduce possibility to disable adaptive reconfigutation of triangles in...
oan [Thu, 25 Dec 2014 15:17:56 +0000]
0025612: Introduce possibility to disable adaptive reconfigutation of triangles in BRepMesh

Remarks from PDN: flag has been renamed to ControlSurfaceDeflection

Test-case for issue #25612

5 years ago0025489: GCPnts_TangentialDeflection gives incorrect distribution of points
aml [Thu, 25 Dec 2014 15:11:28 +0000]
0025489: GCPnts_TangentialDeflection gives incorrect distribution of points

Fixed last point handling: now we try to check interval with last point instead of adding it to output set of points.

Test case for issue CR25489

Correction of test case for issue CR25489

5 years ago0025600: Wrong result of Boolean FUSE operation
emv [Thu, 25 Dec 2014 15:08:44 +0000]
0025600: Wrong result of Boolean FUSE operation

class BOPTools_AlgoTools
1. method Standard_Boolean FindPointInFace(const TopoDS_Face& aF,
                                 const gp_Pnt& aP,
                                 gp_Dir& aDB,
                                 gp_Pnt& aPOut,
                                 Handle(IntTools_Context)& theContext,
                                 GeomAPI_ProjectPointOnSurf& aProjPL,
                                 const Standard_Real aDt,
                                 const Standard_Real aTolE)
Use different method of finding a point in the face if the start and projected points are close to each other.

2. method Standard_Real MinStep3D(const TopoDS_Edge& theE1,
                        const TopoDS_Face& theF1,
                        const BOPTools_ListOfCoupleOfShape& theLCS,
                        const gp_Pnt& aP)
The min 3D step has been increased for the spherical faces.

Test case for issue CR25600

Correction of test case for issue CR25600

5 years ago0025531: Difference in intersection result on Windows and Linux platform is very...
nbv [Thu, 25 Dec 2014 15:04:55 +0000]
0025531: Difference in intersection result on Windows and Linux platform is very significant

1. Dump of WLine is shown with more precise.
2. Equation solving with more precise.
3. Dump of Multy-line.
4. Code optimization.

Some test cases were updated in accordance with their new behaviour.

Correction of test cases for issue CR25531

5 years ago0025625: Boolean COMMON cannot be built
emv [Thu, 25 Dec 2014 15:00:32 +0000]
0025625: Boolean COMMON cannot be built

class BOPTools_AlgoTools2D
method void BOPTools_AlgoTools2D::Make2D (const TopoDS_Edge& aE,
                                   const TopoDS_Face& aF,
                                   Handle(Geom2d_Curve)& aC2D,
                                   Standard_Real& aFirst,
                                   Standard_Real& aLast,
                                   Standard_Real& aToler)

Perform projection with the tolerance of the edge.

Test case for issue CR25625

5 years ago0024411: SplitShape produces shape with incorrectly parameterized periodic 3D curve
azv [Thu, 25 Dec 2014 14:57:55 +0000]
0024411: SplitShape produces shape with incorrectly parameterized periodic 3D curve

Implemented additional flag into Geom_TrimmedCurve to adjust or not the periodic curve inside the first period.

API of Geom2d_TrimmedCurve is changed according to Geom_TrimmedCurve.

Test-case for issue #24411

5 years ago0025614: Provide API access to the new fuctionalities of Boolean Components
pkv [Thu, 25 Dec 2014 14:55:02 +0000]
0025614: Provide API access to the new fuctionalities of Boolean Components

I. New features:
1.1. class BOPAlgo_PaveFiller
method:
void BOPAlgo_PaveFiller::SetArguments(const TopTools_ListOfShape& theLS)
has been added to provide the setting argumemts  through
TopTools_ListOfShape

1.2. class BOPAlgo_Builder
method:
void BOPAlgo_Builder::SetArguments(const TopTools_ListOfShape& theLS)
has been added to provide the setting argumemts  through
TopTools_ListOfShape

1.3. class BOPAlgo_BOP
method:
void BOPAlgo_BOP::SetTools(const TopTools_ListOfShape& theLS)
has been added to provide the setting tools through
TopTools_ListOfShape

1.4. class BRepAlgoAPI_BuilderAlgo
construcror:
BRepAlgoAPI_BuilderAlgo::BRepAlgoAPI_BuilderAlgo
  (const BOPAlgo_PaveFiller& aPF)
has been added to provide the construction
of the object using BOPAlgo_PaveFiller object

method:
void BRepAlgoAPI_BuilderAlgo::SetArguments
 (const TopTools_ListOfShape& theLS)
has been added to provide the setting argumemts

method:
const TopTools_ListOfShape& BRepAlgoAPI_BuilderAlgo::Arguments()const
has been added to provide access to the argumemts

1.5. class BRepAlgoAPI_BooleanOperation
method:
void BRepAlgoAPI_BooleanOperation::SetTools
  (const TopTools_ListOfShape& theLS)
has been added to provide the setting tools

method:
const TopTools_ListOfShape& BRepAlgoAPI_BooleanOperation::Tools()const
has been added to provide access to the tools

1.6. class BRepAlgoAPI_Common
construcror:
BRepAlgoAPI_Common::BRepAlgoAPI_Common
(const BOPAlgo_PaveFiller& aPF)
has been added to provide the construction
of the object using BOPAlgo_PaveFiller object

1.7. class BRepAlgoAPI_Cut
construcror:
BRepAlgoAPI_Cut::BRepAlgoAPI_Cut
(const BOPAlgo_PaveFiller& aPF)
has been added to provide the construction
of the object using BOPAlgo_PaveFiller object

1.8. class BRepAlgoAPI_Fuse
construcror:
BRepAlgoAPI_Fuse::BRepAlgoAPI_Fuse
(const BOPAlgo_PaveFiller& aPF)
has been added to provide the construction
of the object using BOPAlgo_PaveFiller object

1.9. class BRepAlgoAPI_Section
construcror:
BRepAlgoAPI_Section::BRepAlgoAPI_Section
(const BOPAlgo_PaveFiller& aPF)
has been added to provide the construction
of the object using BOPAlgo_PaveFiller object

1.10. class BOPTest
method:
void BOPTest::APICommands(Draw_Interpretor& theCommands)
has been added to provide tcl commands to launch the algorithms
implemented in BRepAlgoAPI package using DRAWEXE application.

Commands:
 >bapibuild r
   performs General Fuse algorithm.
     r -the result of the operation

 >bapibop r type
   performs Boolean Operation agorithm
      r -the result of the operation
      type -type of the operation:
        0-common
        1-fuse
        2-cut
        3-cut21
        4-section

method:
void BOPTest::OptionCommands(Draw_Interpretor& theCommands)
has been added to provide tcl commands to set/get the options that is
necessary for the algorithms implemented in BRepAlgoAPI package.

Commands:
 >boptions
   dump the state of current options

  >brunparallel [0/1]
   1 -sets the parallel mode of the computations
   0 -sets the sequential mode of the computations

  >bfuzzyvalue value
    sets the fuzzy value

-------------------------------------------------------------------------------------------------------------
II. Changes:
II.1. class BRepAlgoAPI_BuilderAlgo
methods:
const TopTools_ListOfShape& BRepAlgoAPI_BuilderAlgo::Generated
  (const TopoDS_Shape& aS)
const TopTools_ListOfShape& BRepAlgoAPI_BuilderAlgo::Modified
  (const TopoDS_Shape& aS)
Standard_Boolean BRepAlgoAPI_BuilderAlgo::IsDeleted
  (const TopoDS_Shape& aS)
Standard_Boolean BRepAlgoAPI_BuilderAlgo::HasModified() const
Standard_Boolean BRepAlgoAPI_BuilderAlgo::HasGenerated() const
Standard_Boolean BRepAlgoAPI_BuilderAlgo::HasDeleted() const
has been redefined to provide access to the history

II.1. class BOPTest
method:
void BOPTest::APICommands(Draw_Interpretor& theCommands)
has been added to provide tcl commands to launch the algorithms
implemented in BRepAlgoAPI package using DRAWEXE application.

method:
void BOPTest::OptionCommands(Draw_Interpretor& theCommands)
has been added to provide tcl commands to set/get the options that is
necessary for the algorithms implemented in BRepAlgoAPI package.

II.2. class BRepAlgoAPI
method:
void BRepAlgoAPI::DumpOper(const Standard_CString theFilePath,
                           const TopoDS_Shape& theShape1,
                           const TopoDS_Shape& theShape2,
                           const TopoDS_Shape& theResult,
                           BOPAlgo_Operation theOperation,
                           Standard_Boolean isNonValidArgs)
has been removed. The contents has been shifted into the file:
BRepAlgoAPI_BooleanOperation.cxx

II.3. classes QANewModTopOpe_Glue, QANewModTopOpe_Intersection
the modifications have been done to provide the consistency with the
modifications in BRepAlgoAPI package [I].
-------------------------------------------------------------------------------------------------------------
III. Modified entities:
packages:
BOPAlgo
BRepAlgoAPI
BOPTest
QANewModTopOpe

Test cases for issue CR25614

5 years ago0025584: Wrong result obtained by PerformInfinitePoint Test
azv [Thu, 25 Dec 2014 14:14:37 +0000]
0025584: Wrong result obtained by PerformInfinitePoint Test

Implemented additional verification of periodicity of B-spline surfaces when calculating UV-bounds

Test case for issue CR25584

5 years ago0025592: Bad result of Fillet operation
jgv [Thu, 25 Dec 2014 13:47:08 +0000]
0025592: Bad result of Fillet operation

Comments have been added.

Test case for issue CR25592

5 years ago0025591: Command mkshell produces wrong shell
azv [Thu, 25 Dec 2014 13:42:49 +0000]
0025591: Command mkshell produces wrong shell

The functionality to decide, whether the edge is degenerated, was shared via BRepLib_MakeFace. The verification of producing degenerated edges was added to BRepLib_MakeShell.

Test case for issue CR25591

5 years ago0025608: TKernel, NCollection_UtfIterator - fix iteration of surrogate pairs in UTF-16
kgv [Sat, 13 Dec 2014 12:00:07 +0000]
0025608: TKernel, NCollection_UtfIterator - fix iteration of surrogate pairs in UTF-16

5 years ago0025275: Diferent result of reading operation from *.igs and *.stp file for WINDOWS...
nbv [Thu, 4 Dec 2014 06:51:24 +0000]
0025275: Diferent result of reading operation from *.igs and *.stp file for WINDOWS and LINUX platform

Symbol SUB (ASCII-code 0x1A) should be considered as End-Of-File both on WINDOWS and LINUX (and on other) system.

5 years ago0025580: Visualization, TKOpenGl - create GLushort index buffer in OpenGl_Quadric...
kgv [Tue, 9 Dec 2014 14:54:49 +0000]
0025580: Visualization, TKOpenGl - create GLushort index buffer in OpenGl_Quadric::createArrays() when sufficient

5 years ago0025604: To provide info on what has been done by DropSmallSolids operator
eap [Fri, 12 Dec 2014 17:09:46 +0000]
0025604: To provide info on what has been done by DropSmallSolids operator

5 years agoAdjusting new testing case for issue 25378
mkv [Tue, 16 Dec 2014 12:46:58 +0000]
Adjusting new testing case for issue 25378

5 years agoCorrection of the merge CR25519 and CR25593
oan [Mon, 15 Dec 2014 10:11:05 +0000]
Correction of the merge CR25519 and CR25593

5 years ago0025520: To provide info on what has been done by Shape Process and Shape Fix
bugmaster [Fri, 12 Dec 2014 11:19:09 +0000]
0025520: To provide info on what has been done by Shape Process and Shape Fix

Messages are registered in ShapeExtend_MsgRegistrator added to ShapeCutom and ShapeUpgrade packages
All operators of ShapeProcess_OperLibrary are instrumented with MsgRegistrator

0025520: To provide info on what has been done by Shape Process and Shape Fix

Update SHAPE.fr

Fix some messages (minor change)

5 years agoResolving compilation problem
oan [Fri, 12 Dec 2014 07:49:02 +0000]
Resolving compilation problem

5 years ago0025529: ShapeProcessAPI: introduce DropSmallSolids operator
myn [Thu, 11 Dec 2014 14:31:28 +0000]
0025529: ShapeProcessAPI: introduce DropSmallSolids operator

Implemented DropSmallSolids operator

Source code corrected and optimized; tests added

tests improved

5 years ago0024938: BRepMesh_IncrementalMesh hangs
apn [Thu, 11 Dec 2014 14:22:01 +0000]
0024938: BRepMesh_IncrementalMesh hangs

Added test case bugs/mesh/bug24938

Small corrections in test case bugs/mesh/bug24938

5 years ago0025378: Building of triangulation for distored surfaces can take very long using...
oan [Thu, 11 Dec 2014 14:15:42 +0000]
0025378: Building of triangulation for distored surfaces can take very long using BRepMesh_IncrementalMesh

New parameter MinSize has been introduced to BRepMesh and GCPnts_TangentialDeflection;

Check length of remaining part of curve for min size parameter instead of distance between two points to avoid large gaps in case highly distorted BSpline surfaces;

Produce fine mesh for sphere and fix other surface;

Test cases for issue CR25378

Correction of test cases for issue CR25378

5 years ago0025509: Wrong shape considered as valid by checkshape
pkv [Thu, 11 Dec 2014 13:53:12 +0000]
0025509: Wrong shape considered as valid by checkshape

New features:

1. class BRepCheck_Solid
The class is to check a solid per se.
The scan area is:
 i.  Shells that overlaps each other
     Status:  BRepCheck_InvalidImbricationOfShells

 ii.  Detached parts of the solid (vertices, edges)
       that have non-internal orientation
       Status:  BRepCheck_BadOrientationOfSubshape

 iii.  For closed, non-internal shells:
 iii.1 Shells containing entities  of the solid that
      are outside towards the shells
      Status:  BRepCheck_SubshapeNotInShape

 iii.2 Shells that encloses other Shells
     (for non-holes)
      Status:  BRepCheck_EnclosedRegion

Changes:

1. enumeration BRepCheck_Status
members:
 InvalidImbricationOfShells,
 EnclosedRegion,
has been added

2. class BRepCheck
method:
void BRepCheck::Print(const BRepCheck_Status stat,
                      Standard_OStream& OS)
has been modified to take into account II.1

3. class BRepCheck_Analyzer
method:
void BRepCheck_Analyzer::Put(const TopoDS_Shape& S,
                             const Standard_Boolean B)
has been modified to take into account I.1

4. class BRepTest
function:
void StructuralDump(Draw_Interpretor& theCommands,
 const BRepCheck_Analyzer &theAna,
 const Standard_CString   ShName,
 const Standard_CString   Pref,
 const TopoDS_Shape       &theShape)
has been modified to take into account I.1, II.1

Test cases for issue CR25509

Correction of test cases for issue CR25509

5 years ago0023493: Incorrect QAGetPixelColor usage
ski [Thu, 11 Dec 2014 13:47:12 +0000]
0023493: Incorrect QAGetPixelColor usage

Usage of QAGetPixelColor were checked and corrected.

Using simple comparison instead of regexp.

Improved usage of command vreadpixel for standard colors.

Command QAGetPixelColor was dropped from TKQADraw.

Procedures "checkcolor" and auxiliary "checkpoint" were moved to DrawResources/TestCommands.tcl

Some test cases using "checkcolor" for picking line color were simplified.

Procedures checkcolor and checkpoint were changed to handle situation when pixel is out of view.

Removed unnecessary use of command "vaspects -setwidth" in tests.

Revert -setwidth change in test bugs/vis/bug23525

5 years ago0025568: SIGSEGV in thrusections with edge without 3D curve
msv [Thu, 11 Dec 2014 13:42:45 +0000]
0025568: SIGSEGV in thrusections with edge without 3D curve

-Set algorithm flag NotDone if there is a non-degenerated edge with absent 3D curve.
-Check IsDone flag in thrusection command.
-Add test case bugs/modalg_5/bug25568.

Small correction of test case for issue CR25568

5 years ago0025558: It is impossible to restore attached shape
aml [Thu, 11 Dec 2014 13:40:37 +0000]
0025558: It is impossible to restore attached shape

Condition of adding one last knot corrected.

Test-case for issue #25558

5 years ago0025124: [Feature request] Removal of continuity checks for offset geometries
nbv [Wed, 10 Dec 2014 13:18:05 +0000]
0025124: [Feature request] Removal of continuity checks for offset geometries

Sometimes curve or surface, which is defined as C0, has continuity G1 or above. Offset can be built from these shapes.
Therefore, this extended checking was added into SetBasisCurve and SetBasisSurface methods.

Main changes in function BRepOffset_Tool::ExtentFace(...):
*  "return" is added if intersection (in 2D-space) between two edges in a face cannot be found.

Basis curve/surface continuity value found (if G1-checking is OK) is set up as BasisContinuity (see myBasisCurveContinuity and myBasisSurfContinuity members which is returned by GetBasisCurveContinuity and GetBasisSurfContinuity() methods). This fact is used in Geom2dAdaptor and in GeomAdaptor classes.

Possibility is entered, which allows for basis elements of offset curve/surface to avoid of C0-checking.

Test cases were changed according to their new behavior.

Test-cases for issue #25124

5 years ago0025193: Bad Intersection curveobtained by Surface/Surface Intersection Algorithm.
jgv [Thu, 11 Dec 2014 13:34:23 +0000]
0025193: Bad Intersection curveobtained by Surface/Surface Intersection Algorithm.

Test case for issue CR25193

Correction of test case for issue CR25193

5 years ago0025561: OCCT can't compile with OCCT_DEBUG flag
aml [Mon, 8 Dec 2014 06:22:35 +0000]
0025561: OCCT can't compile with OCCT_DEBUG flag

Restored function "Value" with old signature used in OCCT_DEBUG block.

5 years ago0025546: Visualization - remove unused methods and classes from package Aspect
kgv [Thu, 11 Dec 2014 13:29:53 +0000]
0025546: Visualization - remove unused methods and classes from package Aspect

Remove global methods Aspect::ToCString(), Aspect::ValuesOfFOSP(), Aspect::Inverse().
Remove class Aspect_Edge, Aspect_Array1OfEdge and Aspect_EdgeDefinitionError.
Remove enumerations Aspect_TypeOfFont, Aspect_TypeOfText, Aspect_CardinalPoints,
Aspect_TypeOfRenderingMode, Aspect_TypeOfColorSpace, Aspect_FormatOfSheetPaper.

update MFC samples

5 years ago0024643: No section curve between plane and cone
ifv [Thu, 11 Dec 2014 13:27:38 +0000]
0024643: No section curve between plane and cone

Test case for issue CR24643

Correction of test case for issue CR24643

5 years ago0025575: Visualization - remove V3d_Static.hxx
kgv [Tue, 9 Dec 2014 11:27:43 +0000]
0025575: Visualization - remove V3d_Static.hxx

5 years ago0025519: BRepMesh can break mesh regularity for BSpline surfaces
oan [Thu, 11 Dec 2014 13:19:31 +0000]
0025519: BRepMesh can break mesh regularity for BSpline surfaces

Compute parameters to produce regular grid and add new internal points according to calculated values.
Use intervals as an additional parameters to determine regular grid for BSpline surfaces.

Test case for issue CR25519

Correction of test case for issue CR25519

Correction of test cases for issue CR25519

5 years ago0025559: SIGSEGV in TKMath when computing max tolerance of curve on surface
aml [Thu, 11 Dec 2014 13:17:04 +0000]
0025559: SIGSEGV in TKMath when computing max tolerance of curve on surface

Fixed possible being outside the boundaries. Changed check math_Recipes to work with NaN, Inf, Ind.

Test case for issue CR25559

5 years ago0025547: static class mehtods not exported in BrepMesh_GeomTool
oan [Thu, 11 Dec 2014 13:14:38 +0000]
0025547: static class mehtods not exported in BrepMesh_GeomTool

Test case for issue CR25547

5 years ago0025555: Wrong result of classification of a point relative to solid
azv [Thu, 11 Dec 2014 13:06:35 +0000]
0025555: Wrong result of classification of a point relative to solid

Implemented additional verification that the point found by Extrema is placed inside the face. This way turns off searching the additional inner point.

Test case for issue CR25555

5 years ago0025468: GeomConvert_ApproxSurface should have a constructor for adaptors
azv [Fri, 5 Dec 2014 11:29:49 +0000]
0025468: GeomConvert_ApproxSurface should have a constructor for adaptors

Additional constructors were implemented into classes:
GeomConvert_ApproxCurve
GeomConvert_ApproxSurface
Geom2dConvert_ApproxCurve

5 years ago0025492: the selected subshape does not have topological relationship with orginal...
aba [Wed, 3 Dec 2014 15:21:00 +0000]
0025492: the selected subshape does not have topological relationship with orginal shape in OCC680:

returned identity owner location if the selectable object has identity transformation.

5 years ago0025557: Draw command "openoffset" fails on customer's shape with big values of offset
jgv [Thu, 11 Dec 2014 12:43:42 +0000]
0025557: Draw command "openoffset" fails on customer's shape with big values of offset

Test cases for issue CR25557

5 years ago0025453: SIGSEGV in BRepFill_Sweep::BuildShell
msv [Thu, 11 Dec 2014 12:40:05 +0000]
0025453: SIGSEGV in BRepFill_Sweep::BuildShell

Fixed the bug causing exception when the first edge in generated sweep occurs to be degenerated.

Comments have been added.

Test-case for issue #25453

5 years ago0025544: Visualization, TKOpenGl - support grayscale textures
kgv [Thu, 4 Dec 2014 12:31:31 +0000]
0025544: Visualization, TKOpenGl - support grayscale textures

Image_PixMap::ImgFormat - extend enumeration by ImgAlpha and ImgAlphaF.
OpenGl_Workspace::setTextureParams() - specify GL_REPLACE for 1-component textures with disabled modulation.
OpenGl_Texture::GetDataFormat() - return GL_LUMINANCE format for ImgGray format and GL_ALPHA for ImgAlpha.

vmarkerstest - override pixel format for grayscale images to ImgAlpha.

Add test case bugs/vis/bug25544_graytexture.

5 years ago0021593: Small improvement
oan [Wed, 3 Dec 2014 08:51:58 +0000]
0021593: Small improvement

New parameter for BRepMesh; Test case

5 years agoAdjusting new testing cases
bugmaster [Fri, 5 Dec 2014 11:39:29 +0000]
Adjusting new testing cases