View Issue Details

IDProjectCategoryView StatusLast Update
0023683CommunityOCCT:Modeling Datapublic2013-04-29 15:24
ReporterRoman Lygin Assigned ToRoman Lygin  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformAOSL 
Product Version6.5.4 
Target Version6.6.0Fixed in Version6.6.0 
Summary0023683: Geom_BSplineSurface incorrectly determines continuity for periodic cases
Descriptionstatic KnotAnalysis() in Geom_BSplineSurface.cxx is consistent with Geom_BSplineCurve and Geom2d_BSplineCurve and lacks a check for periodic case. Due to that, the C0 v-periodic surface is determined as CN-continous.

The fix will move KnotAnalysis() into BSplCLib which will be called from Geom_BSplineCurve, Geom2d_BSplineCurve and Geom_BSplineSurface thereby ensuring full consistency and removing code duplication
Steps To ReproduceSee enclosed test file and C++ code. The test checks that the surface is C0-continous in both U and V. With the bug the case fails saying that the surface is C1-continous.
TagsNo tags attached.
Test case numberbugs moddata_3 bug23683

Attached Files

  • testcase.zip (9,325 bytes)

Activities

Roman Lygin

2012-12-30 12:29

developer  

testcase.zip (9,325 bytes)

Roman Lygin

2012-12-30 14:17

developer   ~0022892

Fix pushed into the git repository - see branch CR23683

jgv

2013-01-22 11:45

developer   ~0023056

No remarks

mkv

2013-01-25 16:37

tester   ~0023157

Dear BugMaster,

Branch CR23683 was rebased on the current master.

Branch CR23683 (and products from GIT master) was compiled on Linux and Windows platforms and tested.

Number of compiler warnings:

occt component :
Linux: 3 (3 on master)
Windows: 85 (85 on master)

products component :
Linux: 9 (9 on master)
Windows: 54 (54 on master)

Regressions:
http://occt-tests/CR23683-master-occt/Mandriva2010/summary.html
http://occt-tests/CR23683-master-occt/Windows-32-VC9/summary.html
mkface after_offset(002) C1 C2

Improvements:
No improvements

Testing on Linux:
Total MEMORY difference: 222666240 / 222928872
Total CPU difference: 8346.390000000165 / 8318.13000000054

Testing on Windows:
Total MEMORY difference: 298660484 / 298083108
Total CPU difference: 11356.890625 / 11645.671875

There are not serious differences in images found by testdiff.

ika

2013-04-11 11:27

developer   ~0024084

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.

Branch CR23683 is ready to be reviewed.
Dear ABV,
Please review.

ika

2013-04-11 18:41

developer   ~0024097

Duplicate code and checks was deleted, branch was updated.

abv

2013-04-11 19:36

manager   ~0024100

Reviewed; some refactoring is done to prevent modification of offset basis curve / surface in case if new basis curve / surface is C0 and cannot be brought to C1 (i.e. when exception is raised).

Please test

apn

2013-04-16 13:19

administrator   ~0024153

Dear BugMaster,

Branch CR23683 (and products from GIT master) was compiled on Linux and Windows platforms and tested without rebase.
SHA-1: 5e78a8581e5a9f31e6cd51cdd44e961677aacd0c

Number of compiler warnings:

occt component :
Linux: 2 (2 on master)
Windows: 11 (11 on master)

products component :
Linux: 0 (0 on master)
Windows: 50 (50 on master)

Regressions:
No regressions

Improvements:
No improvements

Testing cases:
bugs moddata_3 bug23683 - OK

Testing on Linux:
Total MEMORY difference: 244338708 / 244810388
Total CPU difference: 11930.099999999971 / 19944.319999999734

Testing on Windows:
Total MEMORY difference: 353863692 / 355661272
Total CPU difference: 16893.328125 / 20711.890625

There are not serious differences in images found by testdiff.

bugmaster

2013-04-22 11:55

administrator   ~0024237

Fix has been integrated into master of occt repository

Issue History

Date Modified Username Field Change
2012-12-30 12:29 Roman Lygin New Issue
2012-12-30 12:29 Roman Lygin Assigned To => jgv
2012-12-30 12:29 Roman Lygin File Added: testcase.zip
2012-12-30 14:17 Roman Lygin Note Added: 0022892
2012-12-30 14:17 Roman Lygin Status new => resolved
2013-01-22 11:45 jgv Note Added: 0023056
2013-01-22 11:45 jgv Status resolved => reviewed
2013-01-22 11:45 jgv Assigned To jgv => mkv
2013-01-25 16:37 mkv Note Added: 0023157
2013-01-25 16:44 mkv Assigned To mkv => abv
2013-01-25 16:44 mkv Status reviewed => assigned
2013-03-18 12:43 abv Assigned To abv => ika
2013-04-11 11:27 ika Note Added: 0024084
2013-04-11 11:27 ika Assigned To ika => abv
2013-04-11 11:27 ika Status assigned => resolved
2013-04-11 18:41 ika Note Added: 0024097
2013-04-11 19:36 abv Note Added: 0024100
2013-04-11 19:36 abv Assigned To abv => bugmaster
2013-04-11 19:36 abv Status resolved => reviewed
2013-04-12 09:59 abv Target Version => 6.6.0
2013-04-12 15:32 apn Assigned To bugmaster => apn
2013-04-16 12:43 apn Test case number => bugs moddata_3 bug23683
2013-04-16 13:19 apn Note Added: 0024153
2013-04-16 13:19 apn Assigned To apn => bugmaster
2013-04-16 13:19 apn Status reviewed => tested
2013-04-22 11:55 bugmaster Note Added: 0024237
2013-04-22 11:55 bugmaster Status tested => verified
2013-04-22 11:55 bugmaster Resolution open => fixed
2013-04-22 11:55 bugmaster Assigned To bugmaster => Roman Lygin
2013-04-23 13:34 aiv Status verified => closed
2013-04-29 15:24 aiv Fixed in Version => 6.6.0