dbp [Tue, 20 Jan 2015 09:56:54 +0000 (12:56 +0300)]
0025328: Visualization, TKOpenGl - support text rendering within built-in GLSL programs
ski [Thu, 5 Feb 2015 11:23:17 +0000 (14:23 +0300)]
0025734: GCC warnings in Android build
Warnings were fixed.
Fixed wrong re-initialization.
ski [Fri, 16 Jan 2015 13:22:44 +0000 (16:22 +0300)]
0023971: Possibility to extract all error messages from test log
It is possible now to extract all error messages from test log using key "-errors"
Conflicts:
src/DrawResources/TestCommands.tcl
ski [Thu, 5 Feb 2015 11:11:19 +0000 (14:11 +0300)]
0023992: it's required to save log information of test command in (specified) file
It is possible now to save log information of test command in specified file.
Print information on count of found test cases before tests start
Sound signal at the end of the test
Used meminfo -h to control memory
Titles of differences in images produced by testdiff command were changed.
kgv [Thu, 29 Jan 2015 12:16:09 +0000 (15:16 +0300)]
0025758: Visualization, TKOpenGl - texture initialization fails on Intel HD 4600 in ray tracing test
Unbind global texture sampler right after its usage.
kgv [Thu, 29 Jan 2015 10:14:49 +0000 (13:14 +0300)]
0025762: Visualization, TKOpenGl - fix debug assertion within OpenGl_Workspace::UploadRaytraceData()
pkv [Thu, 5 Feb 2015 09:49:05 +0000 (12:49 +0300)]
0025735: Wrong solid is considered as valid by checkshape
Changes:
class BRepCheck_Solid
method:
void BRepCheck_Solid::Minimum()
has been changed. The treatment of shells with INTERNAL faces has been added.
Added test case bugs/modalg_5/bug25735
Added TODOs in test cases according to issue 25735.
mkv [Fri, 30 Jan 2015 10:51:43 +0000 (13:51 +0300)]
0025632: IGES writer looses face orientation
Update new tensing cases for issue
aml [Thu, 29 Jan 2015 12:09:51 +0000 (15:09 +0300)]
0025631: Bounding box is too big for the face.
Fixed start and finish indexes of poles in case of trimmed bspline surface.
Test case for issue CR25631
akz [Thu, 29 Jan 2015 11:23:35 +0000 (14:23 +0300)]
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
ika [Thu, 29 Jan 2015 11:13:29 +0000 (14:13 +0300)]
0025632: IGES writer looses face orientation
Adding reversing surfaces before writing for reversed faces
Test case for issue CR25632
abv [Sun, 18 Jan 2015 14:08:40 +0000 (17:08 +0300)]
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.
vpa [Wed, 28 Jan 2015 09:21:58 +0000 (12:21 +0300)]
0025679: Visualization, TKOpenGl - View frustum culling clips wrong objects
Corrected area calculation for degenerated AABBs in BVH_Box;
Test case for issue 25679.
imn [Fri, 23 Jan 2015 10:31:01 +0000 (13:31 +0300)]
0025743: Add FixMode parameter to DropSmallSolids operator
nbv [Thu, 29 Jan 2015 11:00:11 +0000 (14:00 +0300)]
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
Roman Lygin [Thu, 29 Jan 2015 10:56:53 +0000 (13:56 +0300)]
0025712: Non-deterministic behavior of ShapeFix_Solid
Test-case for issue #25712
jgv [Thu, 29 Jan 2015 10:45:47 +0000 (13:45 +0300)]
0025704: BRepOffsetAPI_MakeOffset: some customer's cases are processed incorrect
Added test cases bugs/modalg_5/bug25704_1 - bug25704_6
azn [Thu, 18 Dec 2014 07:27:01 +0000 (10:27 +0300)]
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.
ysn [Thu, 29 Jan 2015 10:21:33 +0000 (13:21 +0300)]
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.
msv [Fri, 23 Jan 2015 15:07:15 +0000 (18:07 +0300)]
0025719: Boolean operations can crash
Suppress math_BFGS constructor that calls the method Perform that in its turn calls the virtual method IsSolutionReached.
abv [Thu, 29 Jan 2015 10:09:07 +0000 (13:09 +0300)]
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
azv [Fri, 23 Jan 2015 12:55:56 +0000 (15:55 +0300)]
0025582: SIGSEGV in thrusections of circle segments
Eliminating regressions
Fixed compilation warning ('di' : unreferenced formal parameter).
Added test bugs/modalg_5/bug25578
azv [Wed, 14 Jan 2015 07:00:06 +0000 (10:00 +0300)]
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
azv [Wed, 14 Jan 2015 14:26:30 +0000 (17:26 +0300)]
0025582: SIGSEGV in thrusections of circle segments
1. Implemented using of trimmed circular curve
2. Added test case
azv [Tue, 13 Jan 2015 14:44:38 +0000 (17:44 +0300)]
0025578: SIGSEGV in BRepSweep_Rotation in case of singularities
Eliminating degenerated edges
azv [Fri, 16 Jan 2015 07:32:51 +0000 (10:32 +0300)]
0025711: Get rid of static variable islambdadefined in AppParCurves_BSpGradient.gxx
apn [Mon, 26 Jan 2015 12:20:52 +0000 (15:20 +0300)]
0025346: Wrong result of General Fuse operation
Added test cases bugs/modalg_5/bug25346_1 bug25346_2
István Csanády [Thu, 8 Jan 2015 17:18:00 +0000 (20:18 +0300)]
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.
azv [Thu, 22 Jan 2015 14:42:06 +0000 (17:42 +0300)]
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.
azv [Tue, 30 Dec 2014 04:37:51 +0000 (07:37 +0300)]
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.
kgv [Thu, 22 Jan 2015 14:29:37 +0000 (17:29 +0300)]
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
emv [Thu, 22 Jan 2015 14:24:00 +0000 (17:24 +0300)]
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
pkv [Thu, 22 Jan 2015 14:19:07 +0000 (17:19 +0300)]
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
ski [Wed, 21 Jan 2015 11:56:10 +0000 (14:56 +0300)]
0025569: Tests 24959_1 and 24959_2 are not correct
Test cases were corrected to check triangulation deflection
nbv [Thu, 22 Jan 2015 14:06:33 +0000 (17:06 +0300)]
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
emv [Thu, 22 Jan 2015 13:54:54 +0000 (16:54 +0300)]
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.
dbp [Wed, 14 Jan 2015 08:04:27 +0000 (11:04 +0300)]
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%).
Roman Lygin [Thu, 22 Jan 2015 13:42:58 +0000 (16:42 +0300)]
0025694: Change STEP exporter to use AP214 IS by default
Test-case for issue #25694
aml [Fri, 26 Dec 2014 09:56:35 +0000 (12:56 +0300)]
0025663: Expand math_PSO class description
math_PSO class description extended.
mkv [Fri, 16 Jan 2015 10:32:55 +0000 (13:32 +0300)]
Adjusting new testing cases
san [Thu, 25 Dec 2014 16:09:57 +0000 (19:09 +0300)]
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
azn [Thu, 25 Dec 2014 07:00:13 +0000 (10:00 +0300)]
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
aml [Thu, 15 Jan 2015 12:40:25 +0000 (15:40 +0300)]
0025662: Project command produce wrong 2dcurve
Concatenation algorithm fixed to work over periodic bspline surfaces.
Test case for issue CR25662
aml [Thu, 15 Jan 2015 12:37:10 +0000 (15:37 +0300)]
0025649: crvtpoints command return wrong deflection in output.
Deflection computation algorithm changed to PSO+NewtonMinimum.
Correction of test case
aml [Thu, 15 Jan 2015 12:33:15 +0000 (15:33 +0300)]
0025660: Project command produce wrong 2dcurve
Changed starting point of Newton optimization.
Test case for issue CR25660
aml [Fri, 12 Dec 2014 10:40:06 +0000 (13:40 +0300)]
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.
kgv [Thu, 15 Jan 2015 12:25:52 +0000 (15:25 +0300)]
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
kgv [Tue, 13 Jan 2015 07:48:04 +0000 (10:48 +0300)]
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().
pkv [Wed, 14 Jan 2015 06:43:30 +0000 (09:43 +0300)]
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
kgv [Wed, 7 Jan 2015 20:29:06 +0000 (23:29 +0300)]
0025691: Visualization, TKService - fix font corruption on FreeType 2.5.4
ski [Thu, 15 Jan 2015 12:06:54 +0000 (15:06 +0300)]
0023922: Systematic review of TODO tests
Small corrections for test cases with "TEST INCOMPLETE" result.
TODO statements with "TEST INCOMPLETE" were checked and corrected.
jgv [Thu, 15 Jan 2015 12:04:05 +0000 (15:04 +0300)]
0025657: Bad result of Fillet operation
Comments have been precised.
Test case for issue CR25657
Fix of regression
Additional test case.
ski [Tue, 9 Dec 2014 13:24:00 +0000 (16:24 +0300)]
0023626: It's impossible to open files containing localisation characters in the name
Files containing localisation characters can be opened and saved now properly.
ink [Thu, 15 Jan 2015 11:51:21 +0000 (14:51 +0300)]
0025523: Fail to read back solid written to STEP
Fixed a exception occurred during reading step file
Test case for issue CR25523
vro [Thu, 15 Jan 2015 11:47:07 +0000 (14:47 +0300)]
0025634: Checking of compliance of vertices and pcurve fails
A fix + a checkedge draw-command to check the fix.
Test case for issue CR25634
azn [Thu, 15 Jan 2015 11:41:27 +0000 (14:41 +0300)]
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.
dbp [Thu, 15 Jan 2015 11:37:12 +0000 (14:37 +0300)]
0025532: Visualization - fix cross-references between AIS_ConnectedInteractive and connected presentation
New test case added.
dbp [Thu, 15 Jan 2015 11:33:23 +0000 (14:33 +0300)]
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.
kgv [Wed, 24 Dec 2014 09:15:53 +0000 (12:15 +0300)]
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.
san [Wed, 24 Dec 2014 07:37:09 +0000 (10:37 +0300)]
0025650: Visualization - AIS_Line::ComputeSelection() should not ignore the selection mode argument
Only selection mode 0 is supported from now on.
emv [Sat, 27 Dec 2014 05:18:30 +0000 (08:18 +0300)]
0025669: Unable to compile BOPTest package in WOK
package BOPTest
BOPTest_Chronometer.hxx has been added to FILES.
mkv [Fri, 26 Dec 2014 10:02:51 +0000 (13:02 +0300)]
Cosmetic update testing cases.
abv [Tue, 23 Dec 2014 04:03:42 +0000 (07:03 +0300)]
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
msv [Thu, 25 Dec 2014 15:31:11 +0000 (18:31 +0300)]
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
dbp [Tue, 23 Dec 2014 11:39:18 +0000 (14:39 +0300)]
0025351: Visualization - provide pseudo random number generator in OCCT ray-tracing core
vpa [Fri, 19 Dec 2014 12:24:09 +0000 (15:24 +0300)]
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
ibs [Fri, 19 Dec 2014 15:40:31 +0000 (18:40 +0300)]
0025651: GL_LUMINANCE8 should be defined for android case
GL_LUMINANCE8 defined
oan [Thu, 25 Dec 2014 15:17:56 +0000 (18:17 +0300)]
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
aml [Thu, 25 Dec 2014 15:11:28 +0000 (18:11 +0300)]
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
emv [Thu, 25 Dec 2014 15:08:44 +0000 (18:08 +0300)]
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
nbv [Thu, 25 Dec 2014 15:04:55 +0000 (18:04 +0300)]
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
emv [Thu, 25 Dec 2014 15:00:32 +0000 (18:00 +0300)]
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
azv [Thu, 25 Dec 2014 14:57:55 +0000 (17:57 +0300)]
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
pkv [Thu, 25 Dec 2014 14:55:02 +0000 (17:55 +0300)]
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
azv [Thu, 25 Dec 2014 14:14:37 +0000 (17:14 +0300)]
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
jgv [Thu, 25 Dec 2014 13:47:08 +0000 (16:47 +0300)]
0025592: Bad result of Fillet operation
Comments have been added.
Test case for issue CR25592
azv [Thu, 25 Dec 2014 13:42:49 +0000 (16:42 +0300)]
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
kgv [Sat, 13 Dec 2014 12:00:07 +0000 (15:00 +0300)]
0025608: TKernel, NCollection_UtfIterator - fix iteration of surrogate pairs in UTF-16
nbv [Thu, 4 Dec 2014 06:51:24 +0000 (09:51 +0300)]
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.
kgv [Tue, 9 Dec 2014 14:54:49 +0000 (18:54 +0400)]
0025580: Visualization, TKOpenGl - create GLushort index buffer in OpenGl_Quadric::createArrays() when sufficient
eap [Fri, 12 Dec 2014 17:09:46 +0000 (20:09 +0300)]
0025604: To provide info on what has been done by DropSmallSolids operator
mkv [Tue, 16 Dec 2014 12:46:58 +0000 (15:46 +0300)]
Adjusting new testing case for issue 25378
oan [Mon, 15 Dec 2014 10:11:05 +0000 (13:11 +0300)]
Correction of the merge CR25519 and CR25593
bugmaster [Fri, 12 Dec 2014 11:19:09 +0000 (14:19 +0300)]
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)
oan [Fri, 12 Dec 2014 07:49:02 +0000 (10:49 +0300)]
Resolving compilation problem
myn [Thu, 11 Dec 2014 14:31:28 +0000 (17:31 +0300)]
0025529: ShapeProcessAPI: introduce DropSmallSolids operator
Implemented DropSmallSolids operator
Source code corrected and optimized; tests added
tests improved
apn [Thu, 11 Dec 2014 14:22:01 +0000 (17:22 +0300)]
0024938: BRepMesh_IncrementalMesh hangs
Added test case bugs/mesh/bug24938
Small corrections in test case bugs/mesh/bug24938
oan [Thu, 11 Dec 2014 14:15:42 +0000 (17:15 +0300)]
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
pkv [Thu, 11 Dec 2014 13:53:12 +0000 (16:53 +0300)]
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
ski [Thu, 11 Dec 2014 13:47:12 +0000 (16:47 +0300)]
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
msv [Thu, 11 Dec 2014 13:42:45 +0000 (16:42 +0300)]
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
aml [Thu, 11 Dec 2014 13:40:37 +0000 (16:40 +0300)]
0025558: It is impossible to restore attached shape
Condition of adding one last knot corrected.
Test-case for issue #25558
nbv [Wed, 10 Dec 2014 13:18:05 +0000 (16:18 +0300)]
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
jgv [Thu, 11 Dec 2014 13:34:23 +0000 (16:34 +0300)]
0025193: Bad Intersection curveobtained by Surface/Surface Intersection Algorithm.
Test case for issue CR25193
Correction of test case for issue CR25193
aml [Mon, 8 Dec 2014 06:22:35 +0000 (09:22 +0300)]
0025561: OCCT can't compile with OCCT_DEBUG flag
Restored function "Value" with old signature used in OCCT_DEBUG block.
kgv [Thu, 11 Dec 2014 13:29:53 +0000 (16:29 +0300)]
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
ifv [Thu, 11 Dec 2014 13:27:38 +0000 (16:27 +0300)]
0024643: No section curve between plane and cone
Test case for issue CR24643
Correction of test case for issue CR24643
kgv [Tue, 9 Dec 2014 11:27:43 +0000 (14:27 +0300)]
0025575: Visualization - remove V3d_Static.hxx
oan [Thu, 11 Dec 2014 13:19:31 +0000 (16:19 +0300)]
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
aml [Thu, 11 Dec 2014 13:17:04 +0000 (16:17 +0300)]
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