View Issue Details

IDProjectCategoryView StatusLast Update
0023771Open CASCADEOCCT:Data Exchangepublic2013-12-19 13:55
ReporterssvAssigned Toika  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformWindowsOSVC++ 2008 
Product Version6.5.4 
Target Version6.7.0Fixed in Version6.7.0 
Summary0023771: Writing offset-based surfaces of revolution to IGES
DescriptionIt seems like surfaces of revolution built on offset curves are not correctly written to IGES. At least, such applications as "Rhinoceros 5" and "Creo Elements" from PTC cannot handle them: such faces are just ignored.

Steps to reproduce:

pload ALL
test_offset
brepiges f1 f1.igs
brepiges f2 f2.igs

Here, "test_offset" is a custom command constructing two faces of revolution: one is built on explicitly defined circular curve, another -- on Geom2d_OffsetCurve. The second face (f2) cannot be read by the mentioned external software. However, it is successfully translated back from IGES by OCCT itself.
TagsNo tags attached.
Test case numberbugs xde bug23771_1 bug23771_2

Attached Files

  • TestOffset.cpp (1,657 bytes)
  • 001.png (66,267 bytes)
  • 002.png (43,536 bytes)

Activities

ssv

2013-02-19 16:48

developer  

TestOffset.cpp (1,657 bytes)

ssv

2013-02-19 16:48

developer  

001.png (66,267 bytes)

ssv

2013-02-19 16:48

developer  

002.png (43,536 bytes)

ika

2013-04-12 16:02

developer   ~0024120

Dear SSV,

the problem is in offset curves. OCCT writes it correctly, according IGES 5.3, but both "Rhinoceros" and "Creo Elements" can't read it. It seems like these tools haven't such ability.

ssv

2013-04-12 16:34

developer   ~0024122

Dear IKA,

Thank you for the analysis!

Dear BugMaster,

As there are no problems in OCCT, I propose to close this issue.

ika

2013-04-12 17:18

developer   ~0024124

"Rhinoceros" and "Creo Elements" can't write offset curves by themselves too. They write it like BSplines.

abv

2013-04-12 17:19

manager   ~0024125

I suggest to add a parameter in IGES translator to write offset curves as b-splines (yes by default), to make sure that the files written by OCCT are readable by other applications (even if they do not support full IGES spec).

ika

2013-04-16 14:30

developer   ~0024155

Parameter to write offset curves like b-splines was added.

Branch CR23771 is ready to be reviewed.

Dear GKA,
Please review.

gka

2013-04-16 16:05

developer   ~0024163

Branch CR23771 is ready to be reviewed.

Roman Lygin

2013-05-10 15:41

updater   ~0024357

Perhaps the default should not change.
Other applications that expect and can handle native types (i.e. offsets) should not be affected.

abv

2013-05-11 10:44

manager   ~0024360

The fact is, quite popular Rhino and Creo do not read those offsets. We should prefer default options which allows data to be correctly translated in most real-user cases, even if some better translation can happen in specific cases.

apn

2013-05-13 15:14

administrator   ~0024369

Dear BugMaster,

Branch CR23771 (and products from GIT master) was compiled on Linux and Windows platforms and tested without rebase.
SHA-1: 2388d7034f9e9a226eb5c8a5fad3f66e585256d0

Number of compiler warnings:

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

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

Regressions:
No regressions

Improvements:
No improvements

Testing cases:
bugs xde bug23771_1 bug23771_2 - OK

Testing on Linux:
Total MEMORY difference: 366303552 / 366120428
Total CPU difference: 43886.880000000994 / 43868.170000001046

Testing on Windows:
Total MEMORY difference: 419513360 / 421421640
Total CPU difference: 33103.125 / 32293.78125

There are not serious differences in images found by testdiff.

Related Changesets

occt: master 1939140c

2013-05-16 07:14:51

ika

Details Diff
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
Affected Issues
0023771
mod - src/GeomToIGES/GeomToIGES_GeomCurve.cxx Diff File
mod - src/IGESData/IGESData.cxx Diff File
mod - src/QABugs/QABugs_19.cxx Diff File
add - tests/bugs/xde/bug23771_1 Diff File
add - tests/bugs/xde/bug23771_2 Diff File

Issue History

Date Modified Username Field Change
2013-02-19 16:48 ssv New Issue
2013-02-19 16:48 ssv Assigned To => gka
2013-02-19 16:48 ssv File Added: TestOffset.cpp
2013-02-19 16:48 ssv File Added: 001.png
2013-02-19 16:48 ssv File Added: 002.png
2013-04-08 10:21 gka Assigned To gka => ika
2013-04-08 10:21 gka Status new => assigned
2013-04-12 16:02 ika Note Added: 0024120
2013-04-12 16:02 ika Assigned To ika => ssv
2013-04-12 16:02 ika Status assigned => feedback
2013-04-12 16:34 ssv Assigned To ssv =>
2013-04-12 16:34 ssv Assigned To => bugmaster
2013-04-12 16:34 ssv Note Added: 0024122
2013-04-12 17:18 ika Note Added: 0024124
2013-04-12 17:19 abv Note Added: 0024125
2013-04-12 17:19 abv Assigned To bugmaster => ika
2013-04-12 17:19 abv Status feedback => assigned
2013-04-16 14:30 ika Note Added: 0024155
2013-04-16 14:30 ika Assigned To ika => gka
2013-04-16 14:30 ika Status assigned => resolved
2013-04-16 16:05 gka Note Added: 0024163
2013-04-16 16:05 gka Status resolved => reviewed
2013-04-17 18:41 apn Assigned To gka => apn
2013-05-08 15:32 apn Test case number => bugs xde bug23771_1 bug23771_2
2013-05-10 15:41 Roman Lygin Note Added: 0024357
2013-05-11 10:44 abv Note Added: 0024360
2013-05-13 15:14 apn Note Added: 0024369
2013-05-13 15:14 apn Assigned To apn => bugmaster
2013-05-13 15:14 apn Status reviewed => tested
2013-05-20 10:56 ika Changeset attached => occt master 1939140c
2013-05-20 10:56 ika Assigned To bugmaster => ika
2013-05-20 10:56 ika Status tested => verified
2013-05-20 10:56 ika Resolution open => fixed
2013-05-20 16:53 bugmaster Target Version => 6.7.0
2013-12-19 13:53 bugmaster Status verified => closed
2013-12-19 13:55 bugmaster Fixed in Version => 6.7.0