vro [Thu, 23 May 2013 08:09:09 +0000 (12:09 +0400)]
0023850: TDataStd_ByteArray is too slow on storage on disk
Optimization of a byte-array for XML persistence (binary persistence is ok).
A possible bug is corrected (size of an array is extended a little).
Same improvement for storage of a TDataStd_TreeNode.
Improvement of speed of storage of several Ocaf attributes in XML file format.
Also, format of storage of a double value is extended to keep 17 digits after a decimal point (it was used only 15 digits before).
Several draw-commands are added to manipulate the basic Ocaf attributes:
BooleanArray
BooleanList
IntegerList
RealList
A test-script for OCAF document successfully saved and opened from disk in XML file format.
+ 1 is added to keep '\0'
Removed several spaces in source files.
PLib_LocalArray is renamed to NCollection_LocalArray and became a template. It is used as a local array for Standard_Character in XML OCAF drivers, and as a local array of Standard_Real in PLib package.
Small correction of test case for this fix
omy [Thu, 23 May 2013 08:02:14 +0000 (12:02 +0400)]
0023901: Memory leaks in tests.
1. Removed cyclic reference. Removed field myCommonBlock from BOPDS_PaveBlock;
2. Added data map myMapPBCB in BOPDS_DS. It contains pairs (PaveBlock, CommonBlock);
3. All methods about common block have been shifted from BOPDS_PaveBlock to BOPDS_DS;
4. Test case bugs moddata_2 pro19422_2 has been rewritten to build the correct result.
Test case corrected (TODO removed)
emv [Thu, 23 May 2013 07:55:08 +0000 (11:55 +0400)]
0023933: Self intersection reported after Fuse operation.
Additional check has been added in IntTools_BeanFaceIntersector::FastComputeExactIntersection() to prevent
creating an Edge/Face intersection for the case when edge lies on the surface of the face, but not on the face itself.
Adding test case for this fix
emv [Thu, 16 May 2013 13:55:09 +0000 (17:55 +0400)]
0023906: Performance of the projection algorithm in some cases became lower after integration of the fix for the bug 0022610.
New search algorithm Extrema_ExtAlgo_Tree used in projection algorithm in Boolean Operations.
Extrema is set to search only min distance.
Add test case for this fix
Draw command projponf has been modified to provide possibility to change the default parameters of Extrema_ExtPS algorithm:
projponf f pnt [extrema flag: -min/-max/-minmax] [extrema algo: -g(grad)/-t(tree)]
-min - Extrema_ExtFlag_MIN;
-max - Extrema_ExtFlag_MAX;
-minmax - Extrema_ExtFlag_MINMAX (default);
-g - Extrema_ExtAlgo_Grad (default);
-t - Extrema_ExtAlgo_Tree;
Examples:
projponf f pnt -min - the parameters are Extrema_ExtFlag_MIN and Extrema_ExtAlgo_Grad;
projponf f pnt -t - the parameters are Extrema_ExtFlag_MINMAX and Extrema_ExtAlgo_Tree;
projponf f pnt -min -t - the parameters are Extrema_ExtFlag_MIN and Extrema_ExtAlgo_Tree;
ika [Thu, 16 May 2013 07:14:51 +0000 (11:14 +0400)]
0023771: Writing offset-based surfaces of revolution to IGES
Parameter to write offset curves like b-splines was added
Change function, which convert offset curves to b-splines
Added test command "test_offset"
Added test cases bugs/xde/bug23771_1 bug23771_2
vro [Thu, 16 May 2013 07:07:43 +0000 (11:07 +0400)]
0023912: TDataStd_ExtStringArray::Value() returns a copy of TCollection_ExtendedString, but it might return a reference.
Since now TDataStd_ExtStringArray::Value() returns a constant reference to the string value.
Also, a draw-command GetExtStringArray is modified to manipulate with the string by a constant reference.
Added test case bugs/caf/bug23912
0023843: scanf without field width limits can crash with huge input data.
Corrected width specifiers and use of buffer arrays in *printf and *scanf functions.
Removed unreferenced variable warning.
Got rid of compiler warning (returning address of local variable or temporary).
In parallel mode, limit number of jobs in the queue to avoid slowdown occurring with long queues
Obsolete DRAW tools removed
Improvement of processing of test log:
- log is collected as list and not as string for better performance
- short table of test cases (TOC) is added in HTML log
- algorithm to combine test cases in one row in HTML log is improved to avoid long lines (group bugs)
Parse rules corrected to ignore irrelevant debug messages, and to correctly report tests 3rdparty export as skipped or BAD when Gl2Ps is missing or is built in incompatible mode on windows
Tests corrected to pass in Debug mode on Windows
0023901: Memory leaks in tests
Removed a field from BOPDS_PaveBlock that contained the BOPDS_PaveBlock object itself.
Function RealPaveBlock() now returns a const handle, not a const reference to handle.
Removed const modifier because function now returns an object, not a reference to it.
0023830: BRepExtrema_DistShapeShape does not find intersection of face with edge
Data member myIsDivergent was added to class math_FunctionSetRoot.
The member is initialized in method Perform start by Standard_False. The member is changed in the method to Standard_True if an approximation point is located outside of search set.
Method IsDivergent was added to class math_FunctionSetRoot.
The method returns value of myIsDivergent.
Parameter theStopOnDivergent with default value Standard_False was added to
a constructor and method Perform of class math_FunctionSetRoot.
The parameter shows whether return from method Perform if myIsDivergent
became Standard_True.
Class Extrema_GenExtCS was optimized for dynamic memory consumption:
the class surface values are not stored now.
Method Perform of class Extrema_GenExtCS was improved for local extreme
search in case of iteration algorithm divergence. Size of the algorithm
grid cell for initial approximation is reduced by 2 in the case. The count
of the reduces is limited.
Build fix in *.cdl.
Case of extrusion was carried out of the repeat loop.
Division method of the 3-dimensional grid (curve param, surface first
param, surface second param) by two was replaced by method of moving the
grid.
The moving method is about two times faster than division method.
Now grid moving method is depending on some average linear sizes of the curve and the surface.
In case (theStopOnDivergent && myIsDivergent) method math_FunctionSetRoot::Perform sets Done to Standard_False and discard it's last solution.
Test case for the bug fix.
Test case correction
Initial approximation was corrected for search of maximum in Extrema_GenExtCS::Perform.
Test case bugs moddata_3 bug23830 was formatted.
Roman Lygin [Wed, 17 Apr 2013 11:26:49 +0000 (15:26 +0400)]
CR23683: Geom_BSplineSurface incorrectly determines continuity for periodic cases
Add a checking into files Geom_OffsetSurface.cxx, Geom_OffsetCurve.cxx, Geom2d_OffsetCurve.cxx , which try to make continuity of bspline surfaces and curves more than C0 to build offset.
Delete duplicate code and checkings
Prevent change of offset curve / surface when exception is raised due to attempt to set new C0 basis curve / surface
Added new QA command OCC23683. Added test case bugs/moddata_3/bug23683
0023881: BRepAlgoAPI_Section HasAncestorFaceOn1 returned False on the boundary(6.6.0 beta).
The methods HasAncestorFaceOn1() and HasAncestorFaceOn1() return true only in the case when their first argument is the new edge built from intersection curve and not an existing common edge.
PCurveOn1() and PCurveOn2() have been removed.
Methods PCurveOn1() and PCurveOn2() removed from BRepAlgo_Section class.
Added test case bugs/modalg_5/bug23881
aba [Mon, 15 Apr 2013 14:06:26 +0000 (18:06 +0400)]
0023709: Redesign of hlrtest command: vhlr and vhlrtype commands were added; hlr type changing was added to AIS_Shape, AIS_Drawer and Prs3d_Drawer
QuickHLR and ExactHLR items removed from AIS_DisplayMode enumeration as unused.
Minor coding style and CDL documentation corrections applied.
Compiler error in AIS_Shape::SetTypeOfHLR() corrected
Corrections in HLR algorithm.
Compiler error in AIS_Shape::TypeOfHLR() corrected
Added test cases bugs vis bug23709_1/bug23709_2/bug23709_3/bug23709_4
0023882: Memory leak is reported on BOP in test bugs fclasses bug7287_5.
Test cases which check Boolean Operation algorithm on memory leaks have been rewritten to test the whole algorithm and not a part of it.
0023853: BOP regression (2) - BRepAlgoAPI_Cut.
Modifications:
Changed the way of finding the angle between the faces.
New static functions:
GetFaceDir - builds direction for the face;
FindPointInFace - finds the point in the face in bi normal direction.
New square values have been set in the following test cases:
boolean bopcommon_complex J1
bugs modalg_2 bug202085_6
bug202085_7
bug202085_8
bug202085_9
bug202085_10.
"TODO" marks have been removed from these cases.
Added test cases bugs modalg_5 bug23853
0023876: New Boolean Operation algorithm works incorrect with cylinder made by revolution and torus.
Added treatment for surfaces periodic in the V parametric direction.
Added test case bugs modalg_5/bug23876
0023818: Extend OSD_MemInfo to report C heap statistics
A new counter MemHeapUsage was added to OSD_MemInfo class to examine program heap size
DRAW command meminfo got new option -h (--heap ) to use new counter data
The following testcases were changed to use new option -h of DRAW command meminfo
myCounters[MemHeapUsage] now will always be refilled every time the OSD_MemInfo::Update() function is called.
Fixed testcases to use meminfo -h instead of meminfo -w to detect memory leaks more properly.
0023439: Integration of test grid "xigs" into the new testing system
Loop back tests for iges and step files with possibility of generation of reference data.
Clean up of test scripts (removal of obsolete code, adding comments, corrected formatting)
two fixes were done (same like bug 23722 and bug 23736)
Cancelling checking for number of warnings
rewrite some test scripts in cause of this and fix 23794
Tolerance checking was weakened.
Fix to check instability on Linux (bug 23822) was added.
TODO messages was added to tests which have different results on Windows and Mandriva2010
Ability to update this TODO in regeneration mode was added.
Add fix to bug 23852
Test groups were recomposed.
'dataexch' was renamed to 'de'.
CPU limit was decreased from 2000 sec. to 1500 sec.
0023870: Integration of new options of sweeping into BRepOffsetAPI_MakePipe algorithm.
Adding test cases for this fix
Test cases correction
Correction of instability.
oan [Fri, 22 Mar 2013 13:44:31 +0000 (17:44 +0400)]
0022818: Wrong triangulation of Revolution surface with slice angle <= 180 degree
Take face attributes into account to calculate 2d tolerance
Adding test cases for this fix
Correction according additional bug CR23832
jgv [Fri, 22 Mar 2013 13:31:43 +0000 (17:31 +0400)]
0023845: New auxiliary method concatenating a wire into an edge based on C0-continuous curve.
Fix of exception in old method (ConcatenateWire).
Adding test case for this fix
ika [Thu, 21 Mar 2013 11:34:43 +0000 (15:34 +0400)]
0023832: sprops and triarea commands return incorrect value of a mass for shape of revolution
incorrect way of creation faces in test scripts has been fixed
dbv [Fri, 15 Mar 2013 07:47:42 +0000 (11:47 +0400)]
0023769: Eliminate the dependence on X11 libs on Mac OS X
Removed ImageUtility package as it is no longer used.
Disabled Xw package building on Mac OS X when Cocoa used.