MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0031453Community[OCCT] OCCT:Modeling Algorithmspublic2020-03-20 19:022021-04-01 14:26
Reporterblobfish 
Assigned Toszy 
PrioritynormalSeverityminor 
StatusnewResolutionopen 
PlatformLinuxOSDebianOS VersionBullseye
Product Version[OCCT] 7.4.0 
Target Version[OCCT] 7.6.0*Fixed in Version 
Summary0031453: Modeling Algorithms - simple chamfer smashes vertex tolerance
Descriptionchamfering a box causes the new vertices to have a much looser tolerance than expected. A simple blend in the same condition keeps Precision::Confusion.
Steps To Reproduce
pload MODELING
box b 20 20 20
explode b E
chamf c b b_1 1.0
maxtolerance c


output:
## Tolerances on the shape c  (nbFaces:7  nbEdges:15 nbVtx:10)

    Face   : Min 1.00000e-07    Max  1.00000e-07 
 
    Edge   : Min 1.00000e-07    Max  1.00000e-07 
 
    Vertex : Min 1.00000e-07    Max  1.00000e-04 
Additional information
and documentation updates
occt 7.4, actually 8bfae263c1
I have not tested with an older version, but I believe this is a regression as I haven't noticed this behavior before.
TagsNo tags attached.
Test case number
Attached Files

- Relationships

-  Notes
(0091096)
msv (developer)
2020-03-20 21:10

We should check if it is a regression.
(0099946)
blobfish (reporter)
2021-04-01 14:15

Problem:
  tolreached is never set for plane to plane intersection. So the edge
  tolerance is set to the 'loose' input tolerance and vertex tolerances
  are established from the edge. Interestingly, the edge tolerance
  gets fixed in a later 'SameParameter' operation and we are just
  left with the 'loose' vertex tolerances.

I was able to fix this by inserting:
  'tolreached = Min(tolreached,ChFi3d_EvalTolReached(S1,Pc1,S2,Pc2,C3d));'
to:
  src/ChFi3d/ChFi3d_Builder_0.cxx:3183

comments:
  That function call is probably overkill in a 'plane to plane'
  intersection, but it was the least intrusive change I could come up,
  short of just assigning precision::confusion. This appears to fix
  the problem, but I have NOT done any regression tests. I looked into
  using tolr1 and tolr2, but they are never updated by
  ProjLib_ProjectedCurve in the planar case.
    ChFi3d_Builder_0.cxx:3180 to:
    ChFi3d_Builder_0.cxx:1185 to:
    src/ProjLib/ProjLib_ProjectedCurve.cxx:419

- Issue History
Date Modified Username Field Change
2020-03-20 19:02 blobfish New Issue
2020-03-20 19:02 blobfish Assigned To => msv
2020-03-20 21:10 msv Assigned To msv => szy
2020-03-20 21:10 msv Note Added: 0091096
2021-04-01 14:15 blobfish Note Added: 0099946
2021-04-01 14:26 kgv Product Version => 7.5.0
2021-04-01 14:26 kgv Target Version => 7.6.0*
2021-04-01 14:26 kgv Summary simple chamfer smashes vertex tolerance => Modeling Algorithms - simple chamfer smashes vertex tolerance
2021-04-01 14:26 kgv Steps to Reproduce Updated View Revisions
2021-04-01 14:26 kgv Product Version 7.5.0 => 7.4.0


Copyright © 2000 - 2021 MantisBT Team
Powered by Mantis Bugtracker