DiscussionsIssue archiveOCCT:Modeling Algorithms

Archived issue #0024203

Command "sameparameter" in DRAW on attached edge set tolerance equal to 116.

Open CASCADEOCCT:Modeling Algorithmsclosed12 public notes

Search issues

Description

Command "sameparameter" in DRAW on attached edge set tolerance equal to 116.

Steps to reproduce

Draw[31]> restore Attachment 1 (BREP) e1
e1
Draw[32]> toler e1
Tolerance MAX=0.0047612081643267894 AVG=0.0030832977751849961 MIN=1.00000000000000
01e-005
FACE : MAX=0 AVG=0 MIN=0
EDGE : MAX=1.[revision removed]-005 AVG=1.[revision removed]-005 MIN=1.0000000000
000001e-005
VERTEX : MAX=0.0047612081643267894 AVG=0.0046199466627774941 MIN=0.00447868516122
81997

Draw[33]> samepar e1
Draw[34]> toler e1
Tolerance MAX=116.18676595408206 AVG=116.18676595408205 MIN=116.18676595408203
FACE : MAX=0 AVG=0 MIN=0
EDGE : MAX=116.18676595408203 AVG=116.18676595408203 MIN=116.18676595408203
VERTEX : MAX=116.18676595408206 AVG=116.18676595408206 MIN=116.18676595408206

Public activity

12 archived notes

Participants are labeled by their role within this record.

01Commenter 1
attached edge has two pcurves for two different surfaces:
TShape # 1 : EDGE 1101000 04DDFD30
    +3 -2
    Tolerance : 1e-005
    - Curve 3D : 1, range : 0 1
    - PCurve : 1 on surface 1, range : 0 1
  UV Points : 0.375079880811, 1.52240782033 0.420358757176, 0.754028389245
    - PCurve : 2 on surface 2, range : 0 1
  UV Points : 1, 4.48241175 1, 1.467509658

pcurve 1 on surface 1 is "good" and has distance from 3d curve inside edge tolerance.
But pcurve 2 on surface 2 has huge distance from 3d curve. It can be illustrated by command computetolerance, which calculates real distances between 3d and 2d curves:

Draw[33]> computetolerance s
Tolerance de 04DDFD30 : 81.3307

Command sameparameter calculate real distance between 3d and all 2d curves (and increases them a bit), so 116 it is almost correct tolerance for this edge, if we take in account all pcurves on all surfaces.
02Commenter 2
CR24203 is ready to review
03Commenter 3
New result:

Draw[]> restore Attachment 1 (BREP) e1
Draw[]> samepar e1
Draw[]> toler e1
Tolerance MAX=2.2681431145180113 AVG=2.2681431145180109 MIN=2.2681431145180104
FACE : MAX=0 AVG=0 MIN=0
EDGE : MAX=2.2681431145180104 AVG=2.2681431145180104 MIN=2.2681431145180104
VERTEX : MAX=2.2681431145180113 AVG=2.2681431145180113 MIN=2.2681431145180113
04Commenter 4
Ok
05Commenter 5
Dear Commenter 1,

Branch CR24203 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 55 (55 on master)
Windows: 1 (1 on master)

products component :
Linux: 20 (20 on master)
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24203-master-occt/Windows-32-VC9/bugs/modalg_5/bug24203.html
http://occt-tests/CR24203-master-occt/Debian60-64/bugs/modalg_5/bug24203.html
bugs modalg_5(010) bug24203: OK

Testing on Linux:
Total MEMORY difference: 358054052 / 357072508
Total CPU difference: 43353.09000000021 / 42990.139999999854

Testing on Windows:
Total MEMORY difference: 413550920 / 412488216
Total CPU difference: 31122.65625 / 32601.78125

There are not differences in images found by testdiff.
06Commenter 6
In new branch CR24203_1 resulting maximal tolerance of given edge is reduced to 0.19499639548485131.

Dear Igor. Please review it.
07Commenter 7
Ok
08Commenter 8
Dear Commenter 1,

Branch CR24203_1 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 55 (55 on master)
Windows: 1 (1 on master)

products component :
Linux: 20 (20 on master)
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24203-1-master-occt/Debian60-64/bugs/modalg_5/bug24203.html
http://occt-tests/CR24203-1-master-occt/Windows-32-VC9/bugs/modalg_5/bug24203.html
bugs modalg_5(010) bug24203: OK

Testing on Linux:
Total MEMORY difference: 358040688 / 357015712
Total CPU difference: 44684.01000000037 / 42990.139999999854

Testing on Windows:
Total MEMORY difference: 413479364 / 412430976
Total CPU difference: 29576.15625 / 32600.859375

There are not differences in images found by testdiff.
09Commenter 9
Dear Commenter 1,

There is the message
Warning: ShapeFix_Edge: Exception in SameParameter
in follwing test cases for DEBUG mode

bugs step(014) bug24135
heal (013) V7 W9 ZA1
heal (015) U8 V3 V7 W9 ZA!
heal (017) U9 V3-V8 W4 W5 W8 W9 X1 Y4 Y5 Y8 Y9 Z1-Z4 Z8 Z9 ZA1 ZA5 ZB1 ZB5
10Commenter 10
Dear Igor.

Please review Branch CR24203_2. Main changes in the file "Approx_SameParameter.cxx" and lines from 533 to 560.
11Commenter 11
Ok
12Commenter 12
Dear Commenter 1,

Branch CR24203_2 (and products from GIT master) was compiled on Linux and Windows platforms and tested for OPTIMISE and DEBUG modes.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 48 (48 on master)
Windows: 1 (1 on master)

products component :
Linux: 12 (12 on master)
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24203-2-master-occt-deb/Debian60-64/bugs/modalg_5/bug24203.html
http://occt-tests/CR24203-2-master-occt-deb/Windows-32-VC9/bugs/modalg_5/bug24203.html
bugs modalg_5(010) bug24203: OK

Testing on Linux:
Total MEMORY difference: 372303980 / 366200776
Total CPU difference: 44281.76000000015 / 44011.91000000015

Testing on Windows:
Total MEMORY difference: 409319472 / 417207712
Total CPU difference: 33033.25 / 32470.0

There are not differences in images found by testdiff.

Related records