1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-21 10:13:43 +03:00

434 Commits

Author SHA1 Message Date
nbv
4753a6fc1f 0026197: Incomplete intersection curve
Correct the algorithm to get right Start point for extension of the walking line.

Test case for issue CR26197

Correction of test case bugs/modalg_6/bug26197
2015-05-21 13:48:48 +03:00
pkv
b6ec1ef98c 0026224: Wrong result obtained by Common operator.
Changes:
class BOPTools_AlgoTools2D
 - method:
Standard_Integer BOPTools_AlgoTools2D::AttachExistingPCurve
(const TopoDS_Edge& aE2,
const TopoDS_Edge& aE1,
const TopoDS_Face& aF,
const Handle(IntTools_Context)& aCtx)
has been changed.
The treatment of the curves that need to be reversed has been modified
taking into account reversed parameter

Test case for issue CR26224
2015-05-21 12:57:19 +03:00
emv
3285a59aa0 0026218: Wrong result done by General Fuse algorithm
class BOPAlgo_PaveFiller
1. method
  void BOPAlgo_PaveFiller::MakeBlocks()
 Update of FaceInfo IN information before filling the maps.

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

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

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

Test case for issue CR26218

Correction of test case for issue CR26218
2015-05-21 12:52:49 +03:00
jgv
12945d7720 0026202: Wrong result of chamfer on cylindrical surface: wrong value of chord
Test case for issue CR26202
2015-05-14 17:05:38 +03:00
mkv
2ff806d1ab 0025271: Wrong result obtained by solid classifier algorithm
Shape name was corrected
2015-05-08 08:51:46 +03:00
nbv
9d32c463ad 0025890: Intersection algorithm produces curves overlaped
1. Function IntImp_Int2S::ChangePoint() has been added (see cdl for detail information).
2. Attempt to forbidden break WLine if it goes along surface boundary.

Code optimization.

2nd optimization

Test case for issue CR25890
2015-05-08 08:51:43 +03:00
mkv
97f3106c05 0026010: [OCCT 6.8.0 regression] BRepFeat_SplitShape returns invalid shapes 2015-05-06 16:48:29 +03:00
mkv
63073e35ce 0025844: Command checkshape does not detect error for case when degenerated edge does not contain geometric representation. 2015-05-06 16:44:28 +03:00
pkv
905522eef8 0025880: fuzzy booleans with multiple tools
New features:
class BOPTools_AlgoTools2D
method:
 Standard_Integer BOPTools_AlgoTools2D::AttachExistingPCurve
   (const TopoDS_Edge& aEold,
    const TopoDS_Edge& aEnew,
    const TopoDS_Face& aF,
    const Handle(IntTools_Context)& aCtx)
has been added.

Purpose:
  To attach P-Curve on surface of the face <aF>  from the edge <aEold>
   to the edge <aEnew>
   It returns 0 in case of success.

Changes:
1. class BOPTools_AlgoTools
method:
 Standard_Boolean BOPTools_AlgoTools::IsSplitToReverse
  (const TopoDS_Face& theFSp,
   const TopoDS_Face& theFSr,
   Handle(IntTools_Context)& theContext)

The condition for a point on the surface of a face has been changed.

2. class BOPAlgo_PaveFiller
method:
 void BOPAlgo_PaveFiller::MakePCurves()

The treatment of E/E common bocks has been changed
to use mechanism of attacment P-Curves [ I.1 ]

Test case for issue CR25880
2015-04-30 14:42:59 +03:00
mkv
76a2b7d1fb 0026152: Wrong result obtained by projection algorithm.
Test cases for issue CR26152
2015-04-30 14:37:40 +03:00
mkv
6ab722979b 0026130: PCurve creation failure 2015-04-30 14:34:11 +03:00
msv
46b2b6afa0 0025908: BSpline (U2 < U1) in HLRBRep_HLRToShape
Test case for issue CR25908
2015-04-30 14:26:06 +03:00
ink
062d7dfd62 0021727: BRepBuilderAPI_Copy (and possibly other similar tools) create new shape in Frozen state
Set the value of flag Frozen to false for shape created in BRepTools_Modifier. If shape is not newly created then value of flag Frozen don't changed.

Test-case for issue #21727
2015-04-30 14:11:07 +03:00
nbv
6b5b88d707 0024161: boolean operation hanging
The reason of hanging has been eliminated.

Test case for issue CR24161

Small correction of test case for this issue
2015-04-30 13:58:51 +03:00
pkv
f47b8d2b37 0025937: Failed Cut Edge or Face by HalfSpace.
Addressing the causes of warnings.

Test cases for issue CR25937
2015-04-30 13:51:04 +03:00
emv
5e18f91719 0026112: Exception is raised during perform of General Fuse operation
class BOPAlgo_WireSplitter
method
Standard_Boolean RefineAngle2D(const TopoDS_Vertex& aV,
                               const TopoDS_Edge& aE,
                               const TopoDS_Face& myFace,
                               const Standard_Real aA1,
                               const Standard_Real aA2,
                               Standard_Real& aA)

Protection from null vector.

Test case for issue CR26112
2015-04-30 13:33:11 +03:00
abv
6ca1fa7070 0026064: distmini of two edges locks up
Method Extrema_GenExtCC::Perform() refactored to avoid very inefficient (O(N^2)) algorithm of removal of duplicate points at the end. Instead, duplications are checked when new points are added.

Fields are initialized in constructors of the class Extrema_GenExtCC; unused instances of generic classes (duplications) ELCC and ELCC2d removed.

Test case bugs/modalg_6/bug26064 added.
2015-04-30 13:19:23 +03:00
mkv
ecd58be64a Correction of test-cases according to OCC23150 requirements (new format of checknbshapes command). 2015-04-24 14:56:15 +03:00
pkv
b85b0b0731 0026080: Wrong result obtained by General Fuse operator.
Changes:
class IntTools_FClass2d
- method:
 TopAbs_State IntTools_FClass2d::Perform
 (const gp_Pnt2d& _Puv,
 const Standard_Boolean RecadreOnPeriodic) const
 has been changed.
 The value of tolerance
For the value of tolerance for classification,
the minimum (among UResolution, VResolution) value is used.

Test case for issue CR26080
2015-04-23 18:22:59 +03:00
emv
681cfe76b0 0026098: The result of General Fuse operation is self-interfered shape
class BOPTools_AlgoTools
method static Standard_Real IntersectCurves2d(const gp_Pnt& aPV,
                                const TopoDS_Face& aF,
                                const Handle(Geom_Surface)& aS,
                                const TopoDS_Edge& aE1,
                                const TopoDS_Edge& aE2)
Check the validity of the 2d intersection before applying the result.

Test case for issue CR26098
2015-04-23 17:00:57 +03:00
apn
032158d63d 0024011: Can't offset a wire on face
Added test case bugs/modalg_6/bug24011
2015-04-23 16:38:53 +03:00
apn
b0deeecfba 0021624: BRepFeat_SplitShape produce invalid shape
Added test case bugs/modalg_6/bug21624
2015-04-23 16:34:15 +03:00
apn
35d1221827 0021351: Fail to compute derivatives of offset surface on trimmed surfaces on offsets on CN surfaces
Added test case bugs/modalg_6/bug21351
2015-04-23 16:29:58 +03:00
mkv
f3981c67c3 0022793: Boolean cut operation hangs computer
Test case for issue CR22793
2015-04-23 16:24:37 +03:00
apn
3eac3f55a5 0022644: Incorrect result of Boolean operations (Fuse, Cut, Common)
Added test cases bugs/modalg_6/bug22644_1 bug22644_2 bug22644_3
2015-04-16 16:37:34 +03:00
apn
cc2b0ec0e3 0023138: BRepAlgoAPI_Fuse produce invalid result
Added test case bugs/modalg_6/bug23138
2015-04-16 16:34:01 +03:00
apn
687574c09d 0021507: Bug in BOP: bcut produces invalid result without notice
Added test case bugs/modalg_6/bug21507
2015-04-16 16:29:48 +03:00
apn
67680042bc 0021821: Section of face by plane is not built due to small edges
Added test case bugs/modalg_6/bug21821
2015-04-16 14:10:25 +03:00
ifv
ce77f9998a 0026041: GeomLib_Tool::Parameter method fails
Test-case for issue #26041
2015-04-16 11:30:11 +03:00
nbv
1d19db8dad 0025593: Number of intersection points for 2d curves depends on the order of arguments in command "2dintersect"
1. Unification of the polygons creation (it is regardless of arguments order).
2. Output of 2dintersect DRAW-command was changed.
3. Geom2dGcc_Circ2d2TanRadGeo.cxx:
     Precise intersection point found by Extrema Curve-Curve method (dot product between every tangent vector and vector between points on two curves must be equal to zero).
4. Some comments have been translated from French to English.

Some test case have been updated.

Changes in accordance with the last remark

Test case for issue CR25593
2015-04-16 10:34:12 +03:00
pkv
138ac5300a 0024803: improve the result of v/v interference for two vertices case
Changes:
class BOPTools_AlgoTools
- method:
void BOPTools_AlgoTools::MakeVertex(BOPCol_ListOfShape& aLV,
                                    TopoDS_Vertex& aVnew)
has been changed.
The section for case of two vertices  has been added

Test case for issue CR24803
2015-04-09 16:28:55 +03:00
nbv
6f7c5420f8 0026008: Wrong intersection 2D-curves obtained for pair of faces.
The workaround has been deleted from ProjLib_ComputeApprox.cxx file.

Test case for issue CR26008
2015-04-09 16:12:05 +03:00
msv
24e40cc2dc 0026016: BRepPrimAPI_MakeRevol crash
Correctly treat the case when the line is a trimmed curve.

Test-case for issue #26016
2015-04-09 15:05:42 +03:00
mkv
269e9c3640 0007093: BRepLib::SameParameter() changes tolerance of shape, not involved into operation 2015-04-06 17:24:47 +03:00