View Issue Details

IDProjectCategoryView StatusLast Update
0026979CommunityOCCT:Modeling Algorithmspublic2021-08-16 12:04
Reportervanderzee Assigned Tobugmaster  
PrioritynormalSeveritymajor 
Status closedResolutionfixed 
PlatformLinuxOSUbuntu 
Product Version6.9.1 
Target Version7.6.0Fixed in Version7.6.0 
Summary0026979: Modeling Algorithms - Parabola curve intersection with variety of surfaces produces incorrect results
DescriptionWhen I use GeomAPI_IntCS to try to compute the intersection of a trimmed parabola with a surface, I often get incorrect results. In all cases that I have encountered, the problem is that intersections that should be detected are not being detected.

The results appear to be correct for several specific types of surfaces, namely Geom_ConicalSurface, Geom_CylindricalSurface, Geom_Plane, Geom_SphericalSurface, and Geom_RectangularTrimmedSurface based on these. However, the results are not correct for Geom_BezierSurface, Geom_BSplineSurface, Geom_ToroidalSurrface, Geom_SurfaceOfLinearExtrusion, and Geom_SurfaceofRevolution -- or at least for certain instances of these and a certain parabola.

I do not include explicit tests of ConicalSurface and Geom_Plane here, but in my own testing of those, they seem to work correctly.

The behavior is similar in several versions prior to 6.9.1, but I tested it in 6.9.1 to be sure that the problem still exists.
Steps To ReproduceTest lowalgos intcs bug26979
TagsNo tags attached.
Test case numberlowalgos/intcs/bug26979

Attached Files

  • testParabolaSurfaceIntersect.cpp (15,138 bytes)

Activities

vanderzee

2015-12-11 01:42

reporter  

testParabolaSurfaceIntersect.cpp (15,138 bytes)

git

2021-08-02 12:50

administrator   ~0102925

Branch CR26979 has been created by knosulko.

SHA-1: a44f807b4e80603532d6e74b83da9173cfce9e1b


Detailed log of new commits:

Author: knosulko
Date: Thu Jul 29 11:00:09 2021 +0300

    0026979: Parabola curve intersection with variety of surfaces produces incorrect results.
    
    Method Intf_Tool::ParabBox now properly estimates the number of segments for a 3D parabola.

git

2021-08-03 20:57

administrator   ~0102965

Branch CR26979 has been updated by knosulko.

SHA-1: e45f874ec5fc442ddeb77bcb1b0bd0148a02e6d5


Detailed log of new commits:

Author: knosulko
Date: Tue Aug 3 17:55:17 2021 +0300

    #fix duplicates

git

2021-08-12 12:00

administrator   ~0103149

Branch CR26979 has been updated by knosulko.

SHA-1: 7200526c4cec158ca060b0bbbefa873f39c128fd


Detailed log of new commits:

Author: knosulko
Date: Thu Aug 12 11:57:49 2021 +0300

    add test bug26979

git

2021-08-12 17:47

administrator   ~0103163

Branch CR26979 has been updated forcibly by knosulko.

SHA-1: 00403807cf511f983eb3a0ea3bd0c7130ed83321

user1071

2021-08-13 11:41

  ~0103175

Branch CR26979 is ready for review.
Test results: http://jenkins-test-occt.nnov.opencascade.com/view/CR26979-master-KNOSULKO/view/COMPARE/

Branches for Integration:
OCCT - CR26979

Products - Not

ifv

2021-08-13 12:13

developer   ~0103177

1. Steps to Reproduce: it is not necessary to put test script, it is enough only test name.

2. Intf_Tool.cxx:
remove tabulations from lines 1160-1164, 1191 - 1192 and format code.

3. test script:
replace line 2 by description from bug tracker:
puts "0026979: Modeling Algorithms - Parabola curve intersection with variety of surfaces produces incorrect results"
remove lines 5-7 with comments
BugNumber: CR26979 is branch name, bug number is 0026979 or OCC26979

kgv

2021-08-13 12:25

developer   ~0103178

Last edited: 2021-08-13 12:25

Igor,

> 1. Steps to Reproduce: it is not necessary to put test script,
> it is enough only test name.
It is preferred (at least for me ;)) to keep an original self-sufficient script within "Steps To Reproduce".
So that one may copy-paste original script into Draw to verify bug on different versions of OCCT with minimal efforts.

New test cases added by a patch will be filled in by Bugmaster within a dedicated field "Test case number".

ifv

2021-08-13 12:41

developer   ~0103180

Kirill,
there are no original scripts from customer, he provided only C++ code and problem description.

git

2021-08-13 13:33

administrator   ~0103181

Branch CR26979 has been updated by knosulko.

SHA-1: 74f35d33c99fd279d31d160c72f57eadd69600e1


Detailed log of new commits:

Author: knosulko
Date: Fri Aug 13 13:33:29 2021 +0300

    #fix remarks

git

2021-08-13 13:36

administrator   ~0103182

Branch CR26979 has been updated forcibly by knosulko.

SHA-1: abdab92df5c3ea637bbb9d9f2fea5bce5c6e9945

git

2021-08-13 15:48

administrator   ~0103184

Branch CR26979 has been updated forcibly by knosulko.

SHA-1: eb62b018df93957c33612bcab6e212fcda411f7b

ifv

2021-08-13 16:08

developer   ~0103189

Branch CR26979 semms to be valid
Branches for Integration:
OCCT - CR26979

Products - Not

bugmaster

2021-08-14 13:23

administrator   ~0103206

Combination -
OCCT branch : IR-2021-08-13
master SHA - 7b5f784419eb9fd9a1d3dc69eff89d3e720d6e97
a87b7ddc8cb44606b91e3f37113847c3f5f50fdc
Products branch : IR-2021-08-13 SHA - 8dc957c07e49e8db2f1330ec126160fe1c7eb89d
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 17368.20000000041 / 17370.70000000038 [-0.01%]
Products
Total CPU difference: 11492.330000000085 / 11466.840000000084 [+0.22%]
Windows-64-VC14:
OCCT
Total CPU difference: 19143.8125 / 19180.875 [-0.19%]
Products
Total CPU difference: 12803.65625 / 12837.4375 [-0.26%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

git

2021-08-14 14:01

administrator   ~0103209

Branch CR26979 has been deleted by mnt.

SHA-1: eb62b018df93957c33612bcab6e212fcda411f7b

ifv

2021-08-16 12:04

developer   ~0103233

Review

Related Changesets

occt: master 7b5f7844

2021-07-29 08:00:09

user1071


Committer: bugmaster Details Diff
0026979: Parabola curve intersection with variety of surfaces produces incorrect results.

Method Intf_Tool::ParabBox now properly estimates the number of segments for a 3D parabola.
Fix input arguments of called Bnd_Box::Get method in Intf_Tool::HyprBox method.
Affected Issues
0026979
mod - src/Intf/Intf_Tool.cxx Diff File
add - tests/lowalgos/intcs/bug26979 Diff File

Issue History

Date Modified Username Field Change
2015-12-11 01:42 vanderzee New Issue
2015-12-11 01:42 vanderzee Assigned To => msv
2015-12-11 01:42 vanderzee File Added: testParabolaSurfaceIntersect.cpp
2015-12-11 09:48 msv Assigned To msv => ifv
2015-12-11 09:49 msv Status new => assigned
2015-12-11 09:50 msv Target Version => 7.1.0
2016-10-28 11:54 msv Target Version 7.1.0 => 7.2.0
2017-07-21 11:34 msv Target Version 7.2.0 => 7.3.0
2017-12-05 17:09 msv Target Version 7.3.0 => 7.4.0
2019-08-12 16:44 msv Target Version 7.4.0 => 7.5.0
2020-09-14 22:55 msv Target Version 7.5.0 => 7.6.0
2021-07-07 10:23 ifv Assigned To ifv => user1069
2021-08-02 12:50 git Note Added: 0102925
2021-08-03 20:57 git Note Added: 0102965
2021-08-07 14:12 kgv Summary Parabola curve intersection with variety of surfaces produces incorrect results => Modeling Algorithms - Parabola curve intersection with variety of surfaces produces incorrect results
2021-08-12 12:00 git Note Added: 0103149
2021-08-12 17:47 git Note Added: 0103163
2021-08-13 10:46 user1071 Status assigned => resolved
2021-08-13 11:41 ifv Status resolved => assigned
2021-08-13 11:41 user1071 Note Added: 0103175
2021-08-13 11:41 user1071 Assigned To user1069 => ifv
2021-08-13 11:41 user1071 Status assigned => resolved
2021-08-13 11:41 user1071 Steps to Reproduce Updated
2021-08-13 12:13 ifv Note Added: 0103177
2021-08-13 12:13 ifv Assigned To ifv => user1071
2021-08-13 12:13 ifv Status resolved => assigned
2021-08-13 12:22 user1071 Steps to Reproduce Updated
2021-08-13 12:25 kgv Note Added: 0103178
2021-08-13 12:25 kgv Note Edited: 0103178
2021-08-13 12:41 ifv Note Added: 0103180
2021-08-13 13:33 git Note Added: 0103181
2021-08-13 13:36 git Note Added: 0103182
2021-08-13 13:37 user1071 Assigned To user1071 => ifv
2021-08-13 13:37 user1071 Status assigned => resolved
2021-08-13 15:48 git Note Added: 0103184
2021-08-13 16:08 ifv Note Added: 0103189
2021-08-13 16:08 ifv Assigned To ifv => bugmaster
2021-08-13 16:08 ifv Status resolved => reviewed
2021-08-14 13:23 bugmaster Note Added: 0103206
2021-08-14 13:23 bugmaster Status reviewed => tested
2021-08-14 13:28 bugmaster Test case number => lowalgos/intcs/bug26979
2021-08-14 13:31 bugmaster Changeset attached => occt master 7b5f7844
2021-08-14 13:31 bugmaster Status tested => verified
2021-08-14 13:31 bugmaster Resolution open => fixed
2021-08-14 14:01 git Note Added: 0103209
2021-08-16 12:04 ifv Note Added: 0103233