MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0026927Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2015-11-25 14:192021-05-13 16:20
Reporteraml 
Assigned Tobugmaster 
PrioritynormalSeverityminor 
StatusclosedResolutionno change required 
PlatformWindowsOSVC++ 2010OS Version64 bit
Product Version[OCCT] 6.9.1 
Target Version[OCCT] 7.6.0*Fixed in Version 
Summary0026927: Make Intersection algorithm more adaptive
DescriptionIn some cases there are insufficient number of points on walking line, which are computed in scope of surface / surface intersection. As a result big distance between projection curves and 3-d curves obtained.

In case 24915 cylinder / cylinder intersection performed with bad number of points in bending part of intersection curves. The following data shows discrete curvature of points:

  [1707] 0.037705678409209582 double
  [1708] 0.038651495615726526 double
  [1709] 0.040295220088712960 double
  [1710] 0.043239356085594871 double
  [1711] 0.048650867598388436 double
  [1712] 0.058783197504702088 double
  [1713] 0.078030165459450906 double
  [1714] 0.11550925815709719 double
  [1715] 0.19260869420137852 double
  [1716] 0.36934346676956370 double
  [1717] 0.83621205320747938 double
  [1718] 1.9106883897253861 double
  [1719] 2.7878816486987574 double
  [1720] 2.2648710362924560 double
  [1721] 0.69490102039425350 double
  [1722] 0.15251393357787787 double
  [1723] 0.037838999041714082 double
  [1724] 0.016468938270034150 double
  [1725] 0.0089625815035841491 double
  [1726] 0.0059857141438395146 double
  [1727] 0.0042055089673148274 double
  [1728] 0.0030717487738050296 double
  [1729] 0.0023140418447547936 double
  [1730] 0.0017878986403497210 double
  [1731] 0.0014109697884378742 double
  [1732] 0.0011338428956967482 double
  [1733] 0.00092558903016010693 double
  [1734] 0.00076615027575940636 double
  [1735] 0.00064211956574854938 double
  [1736] 0.00054429800146004587 double

This curvature situation seem to be abnormal, it is necessary to add points to get more smooth curvature.

It is proposed to check possibility of implementation curvature-based approach (and make if it is possible) at least for cylinder / cylinder case.
Steps To Reproduce###test bugs modalg_5 bug24915 - old bug
test lowalgos intss bug24915
Additional information
and documentation updates
Investigation and development may use:
Razdan, A., Knot Placement for B-Spline Curve Approximation, Arizona State University, 1999.
http://prism.asu.edu/publications/papers/paper99_kpbsca.pdf [^]
TagsNo tags attached.
Test case number
Attached Filestxt file icon curvatureArray.txt (76,531 bytes) 2015-11-25 14:21

- Relationships
child of 0025929closedbugmaster Make Approx_ComputeLine algorithm adaptive 

-  Notes
(0048563)
aml (developer)
2015-11-25 14:22

File with whole curvature array in attachments section.
(0048585)
git (administrator)
2015-11-25 22:27

Branch CR26927 has been created by aml.

SHA-1: 0161c4b93fc2cd1aa11918ff7b13444e1dc2383e


Detailed log of new commits:

Author: aml
Date: Wed Nov 25 21:38:20 2015 +0300

    0026927: Make Intersection algorithm more adaptive
    
    Proof of concept solution.
(0048603)
git (administrator)
2015-11-26 13:56

Branch CR26927 has been updated forcibly by aml.

SHA-1: 8a3b991397d206bb35540dc339d12163f0b9af94
(0050924)
git (administrator)
2016-02-18 08:31

Branch CR26927 has been updated forcibly by aml.

SHA-1: c64f1fb7cab0e3e22c97825751fbdc6352c51660
(0099744)
ifv (developer)
2021-03-25 17:21

Analysis
(0099767)
ifv (developer)
2021-03-26 16:24

Solution implementation
(0100802)
ifv (developer)
2021-05-06 18:10
edited on: 2021-05-11 11:11

Debugging

(0100869)
ifv (developer)
2021-05-11 10:50

The branch CR26927 was created in 2015, when intersection algorithm had no functionality for adaptive distribution of sample points and this branch would be useful. Now intersection algorithm (case cylinder-cylinder) has similar functionality implemented by NBV later, results of tests "lowalgos intss bug24915" on master and "bugs modalg_5 bug24915" on branch CR26927 are similar. So the algorithm proposed in the CR26927 has no obvious advantages over current one. In my opinion there are no reasons for replacing current algorithm and the issue can be closed.
(0100870)
ifv (developer)
2021-05-11 10:50

Analysis
(0100948)
szy (manager)
2021-05-13 16:19

The issue can be closed because similar functionality is already implemented.
See ifv conclusion at "2021-05-11 10:50".

- Issue History
Date Modified Username Field Change
2015-11-25 14:19 aml New Issue
2015-11-25 14:19 aml Assigned To => msv
2015-11-25 14:19 aml Assigned To msv => aml
2015-11-25 14:19 aml Relationship added child of 0025929
2015-11-25 14:21 aml File Added: curvatureArray.txt
2015-11-25 14:22 aml Note Added: 0048563
2015-11-25 14:22 aml Status new => assigned
2015-11-25 14:41 aml Additional Information Updated View Revisions
2015-11-25 22:27 git Note Added: 0048585
2015-11-26 13:56 git Note Added: 0048603
2016-02-18 08:31 git Note Added: 0050924
2016-10-28 16:32 msv Target Version 7.1.0 => 7.2.0
2017-07-24 09:32 msv Target Version 7.2.0 => 7.3.0
2017-12-05 17:09 msv Target Version 7.3.0 => 7.4.0
2019-08-12 16:45 msv Target Version 7.4.0 => 7.5.0
2020-09-14 22:54 msv Target Version 7.5.0 => 7.6.0*
2021-03-25 17:21 ifv Note Added: 0099744
2021-03-26 16:24 ifv Note Added: 0099767
2021-04-13 15:11 szy Assigned To aml => ifv
2021-05-06 12:09 ifv Steps to Reproduce Updated View Revisions
2021-05-06 18:10 ifv Note Added: 0100802
2021-05-11 10:50 ifv Note Added: 0100869
2021-05-11 10:50 ifv Assigned To ifv => szy
2021-05-11 10:50 ifv Status assigned => resolved
2021-05-11 10:50 ifv Note Added: 0100870
2021-05-11 11:11 szy Note Edited: 0100802 View Revisions
2021-05-13 16:19 szy Note Added: 0100948
2021-05-13 16:19 szy Status resolved => closed
2021-05-13 16:19 szy Assigned To szy => bugmaster
2021-05-13 16:19 szy Resolution open => fixed
2021-05-13 16:20 szy Resolution fixed => no change required


Copyright © 2000 - 2021 MantisBT Team
Powered by Mantis Bugtracker