View Issue Details

IDProjectCategoryView StatusLast Update
0031688Open CASCADEOCCT:Visualizationpublic2020-12-02 17:13
ReportervsvAssigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Product Version7.5.0 
Target Version7.5.0Fixed in Version7.5.0 
Summary0031688: Visualization - Wrong ISO lines for a face created from BSpline
DescriptionIf a planar face is created from closed BSpline curve then in case of big number of ISO lines they are shown outside of the face.
Steps To ReproduceDraw script to reproduce:
pload MODELING VISUALIZATION
pbsplinecurve aa 2 4 0 1 1 1 2 1 3 1  0 0 0 1  1 2 0 1  2 0 0 1
mkedge ee aa
wire ww ee
mkplane ff ww
vinit
vdisplay ff
visos ff 50 50 1
vfit
TagsNo tags attached.
Test case numberbugs/vis/bug31688

Attached Files

  • IsoLinesBug.png (12,382 bytes)
  • IsoLinesTriangle.png (3,963 bytes)
  • bug31688_OK.png (5,277 bytes)
  • broken_face.brep (10,033 bytes)

Relationships

related to 0030160 closedazv DBRep_IsoBuilder builds wrong isolines for planar faces 

Activities

vsv

2020-07-24 17:54

developer  

IsoLinesBug.png (12,382 bytes)

kgv

2020-08-05 17:31

developer  

IsoLinesTriangle.png (3,963 bytes)

git

2020-08-27 15:49

administrator   ~0093670

Branch CR31688 has been created by mkrylova.

SHA-1: 13dd0704c9122cf46701129575a9542e0a361d0a


Detailed log of new commits:

Author: mkrylova
Date: Thu Aug 27 15:12:22 2020 +0300

    0031688: Visualization - Wrong ISO lines for a face created from BSpline
    
    Added a check to see if the ISO line intersects at least one segment of the shape

kgv

2020-08-27 19:15

developer   ~0093673

The problem with current solution is that it breaks scenarios with open boundaries (face without outer wire) and leaking boundaries (outer wire is broken and has gaps).

Example of such scenario is test case v3d/face/G1.

git

2020-08-28 12:23

administrator   ~0093682

Branch CR31688_1 has been created by mkrylova.

SHA-1: 2761327d180420501028d789f2e4f5642069877f


Detailed log of new commits:

Author: mkrylova
Date: Thu Aug 27 15:12:22 2020 +0300

    0031688: Visualization - Wrong ISO lines for a face created from BSpline
    
    Added a check to see if the ISO line intersects the shape

szy

2020-09-23 12:34

manager   ~0095231

Review, please.

kgv

2020-09-23 12:47

developer   ~0095234

Note that alternative to applying workarounds to isolines builder could be fixing 2D bounding box (in surface parametric space) returned for a Face in the bug.

UV-range looks larger than it necessary to be - and this is where unexpected isolines appear.

emv

2020-09-23 13:09

developer   ~0095236

The fix seems to be valid, the iso-lines should definitely be inside the trimming range. Please add the test case and run testing on jenkins.

emv

2020-09-23 13:32

developer   ~0095237

Sorry, Kirill, didn't notice your message. I agree, that it is better if bounding box will be fixed. But the trimming is based on discretization of the edges (or 2d curves) of the face, not by the edge itself (as it is done in AXON). So even if 2d box (BRepTools::UVBounds) will be tight, box based on discretization might be different. So, probably it is better to change the way the box is built and use the same UV bounds computed using discretization points for filling the parameters theUIsoParams and theVIsoParams? And report another issue for fixing BRepTools::UVBounds for this face.

git

2020-09-23 14:18

administrator   ~0095238

Branch CR31688_2 has been created by kgv.

SHA-1: b05995d0bef6eb7660561d490b0e515521459b6c


Detailed log of new commits:

Author: mkrylova
Date: Thu Aug 27 15:12:22 2020 +0300

    0031688: Visualization - Wrong ISO lines for a face created from BSpline
    
    Added a check to see if the ISO line intersects the shape

git

2020-09-23 14:39

administrator   ~0095239

Branch CR31688_2 has been updated forcibly by kgv.

SHA-1: 5995ac65ae907d4fda8b8db02d0b25ba19a12b99

kgv

2020-09-23 15:56

developer  

bug31688_OK.png (5,277 bytes)

kgv

2020-09-23 17:34

developer  

broken_face.brep (10,033 bytes)

kgv

2020-09-23 17:35

developer   ~0095244

Image diff shows that broken_face.brep now loses isolines on V range - to be analyzed if it is possible to avoid...

git

2020-09-24 10:26

administrator   ~0095257

Branch CR31688_3 has been created by kgv.

SHA-1: 8b0baca4aecdca8454d98a949be861eaab0290a8


Detailed log of new commits:

Author: mkrylova
Date: Thu Aug 27 15:12:22 2020 +0300

    0031688: Visualization - Wrong ISO lines for a face created from BSpline
    
    Added a check to see if the ISO line intersects the bounding contour.

kgv

2020-09-24 12:55

developer   ~0095264

Eugeny,

could you please take a look onto updated patch in OCCT branch CR31688_3?

http://jenkins-test-12.nnov.opencascade.com:8080/view/CR31688_3-master-KGV/view/COMPARE/

emv

2020-09-24 16:17

developer   ~0095274

Reviewed.
For integration:
OCCT - CR31688_3
Products - none.

bugmaster

2020-09-27 14:12

administrator   ~0095367

Combination -
OCCT branch : IR-2020-09-25
master SHA - d7bc5c833ec064bd103ebbff2882146ad5a7e7de
a206de37fbfa0bf71bd534ae47192bbec23b8522
Products branch : IR-2020-09-25 SHA - a8c0c30ba368a2503bbdf9800228ace93993dfff
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: 18039.260000000093 / 17637.5100000001 [+2.28%]
Products
Total CPU difference: 12124.200000000114 / 12092.06000000011 [+0.27%]
Windows-64-VC14:
OCCT
Total CPU difference: 19753.9375 / 18982.296875 [+4.07%]
Products
Total CPU difference: 13527.921875 / 13315.40625 [+1.60%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

git

2020-09-27 14:29

administrator   ~0095384

Branch CR31688_3 has been deleted by inv.

SHA-1: 8b0baca4aecdca8454d98a949be861eaab0290a8

git

2020-09-27 14:29

administrator   ~0095387

Branch CR31688_2 has been deleted by inv.

SHA-1: 5995ac65ae907d4fda8b8db02d0b25ba19a12b99

git

2020-09-27 14:30

administrator   ~0095406

Branch CR31688_1 has been deleted by inv.

SHA-1: 2761327d180420501028d789f2e4f5642069877f

git

2020-09-27 14:30

administrator   ~0095407

Branch CR31688 has been deleted by inv.

SHA-1: 13dd0704c9122cf46701129575a9542e0a361d0a

Related Changesets

occt: master 0e57793f

2020-08-27 12:12:22

mkrylova


Committer: bugmaster Details Diff
0031688: Visualization - Wrong ISO lines for a face created from BSpline

Added a check to see if the ISO line intersects the bounding contour.
Affected Issues
0031688
mod - src/StdPrs/StdPrs_Isolines.cxx Diff File
mod - src/StdPrs/StdPrs_ToolRFace.cxx Diff File
mod - src/StdPrs/StdPrs_ToolRFace.hxx Diff File
add - tests/bugs/vis/bug31688 Diff File

Issue History

Date Modified Username Field Change
2020-07-24 17:54 vsv New Issue
2020-07-24 17:54 vsv Assigned To => kgv
2020-07-24 17:54 vsv File Added: IsoLinesBug.png
2020-07-24 18:01 kgv Steps to Reproduce Updated
2020-07-24 18:04 kgv Relationship added related to 0030160
2020-08-04 16:14 kgv Assigned To kgv => mkrylova
2020-08-04 16:14 kgv Status new => assigned
2020-08-05 17:31 kgv File Added: IsoLinesTriangle.png
2020-08-27 15:49 git Note Added: 0093670
2020-08-27 15:57 mkrylova Assigned To mkrylova => osa
2020-08-27 15:57 mkrylova Status assigned => resolved
2020-08-27 19:15 kgv Note Added: 0093673
2020-08-28 12:23 git Note Added: 0093682
2020-09-23 12:34 szy Note Added: 0095231
2020-09-23 12:34 szy Assigned To osa => emv
2020-09-23 12:34 szy Status resolved => assigned
2020-09-23 12:47 kgv Note Added: 0095234
2020-09-23 13:09 emv Note Added: 0095236
2020-09-23 13:09 emv Assigned To emv => mkrylova
2020-09-23 13:32 emv Note Added: 0095237
2020-09-23 14:18 git Note Added: 0095238
2020-09-23 14:39 git Note Added: 0095239
2020-09-23 15:56 kgv File Added: bug31688_OK.png
2020-09-23 17:34 kgv File Added: broken_face.brep
2020-09-23 17:35 kgv Note Added: 0095244
2020-09-24 10:26 git Note Added: 0095257
2020-09-24 12:55 kgv Note Added: 0095264
2020-09-24 12:55 kgv Assigned To mkrylova => emv
2020-09-24 12:55 kgv Status assigned => resolved
2020-09-24 16:17 emv Note Added: 0095274
2020-09-24 16:17 emv Assigned To emv => bugmaster
2020-09-24 16:17 emv Status resolved => reviewed
2020-09-27 12:15 bugmaster Test case number => bugs/vis/bug31688
2020-09-27 14:12 bugmaster Note Added: 0095367
2020-09-27 14:12 bugmaster Status reviewed => tested
2020-09-27 14:13 bugmaster Changeset attached => occt master 0e57793f
2020-09-27 14:13 bugmaster Status tested => verified
2020-09-27 14:13 bugmaster Resolution open => fixed
2020-09-27 14:29 git Note Added: 0095384
2020-09-27 14:29 git Note Added: 0095387
2020-09-27 14:30 git Note Added: 0095406
2020-09-27 14:30 git Note Added: 0095407
2020-12-02 16:43 emo Fixed in Version => 7.5.0
2020-12-02 17:13 emo Status verified => closed