MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0025961Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2015-03-20 11:292017-12-05 17:08
Reporternbv 
Assigned Tonbv 
PrioritynormalSeverityminor 
StatusassignedResolutionopen 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.4.0*Fixed in Version 
Summary0025961: Wrong result of projection point on the ellipse
DescriptionIf ellipse has major radius much more than minor radius we will not be able to find minimal distance between this ellipse and some point.
Steps To ReproduceDraw[]> ellipse ce 15793.1884865181, -5613.90386522167, -2450 0.566529531797242, 0.824041436823172, 4.04832179340053e-023 249106758.909924, 18
Draw[]> dset x1 15810.404909670384
Draw[]> dset y1 -5625.7401757733878
Draw[]> dset z1 -2468.0000000000000

Draw[]> proj ce x1 y1 z1
# parameter 1 = 3.141592653589798
#ext_1 parameter 2 = 4.7123890642550172
#ext_2 parameter 3 = 6.2831853071795809
#ext_3 parameter 4 = 6.2831853071795809
#ext_4

Draw[]> length ext_1
The length ext_1 is 249106779.80259019
Draw[]> length ext_2
The length ext_2 is 36.000000000000043
Draw[]> length ext_3
The length ext_3 is 249106738.01725906
Draw[]> length ext_4
The length ext_4 is 249106738.01725906

I.e. minimal distance between ellipse and point is 36.000000000000043.

However, try the following script:
Draw[]> cval ce pi/2 xx yy zz

Draw[]> dset sd (xx-x1)*(xx-x1)+(yy-y1)*(yy-y1)+(zz-z1)*(zz-z1)
# 436.50347299786017
Draw[]> dval sqrt(sd)
# 20.892665531182473

Consequently, there is a point nearer to the given with distance 20.892665531182473.
TagsNo tags attached.
Test case number
Attached Filespng file icon diff_images.png (40,605 bytes) 2015-03-20 15:13

- Relationships

-  Notes
(0038738)
nbv (developer)
2015-03-20 15:28

The problem has been detected after fixing bug #25416 (differences in images were detected - see diff_images.png file).

Intersection algorithm finds IntPatch_RLine and IntPatch_GLine (ellipse). These lines seem to be coincided (RLine is a part of GLine). However, it is not detected (in the function IsRLineGood(), file IntPatch_ImpImpIntersection_0.gxx) because computed distance between GLine and points of RLine is too big. Consequently, RLine is not excluded.

- Issue History
Date Modified Username Field Change
2015-03-20 11:29 nbv New Issue
2015-03-20 11:29 nbv Assigned To => msv
2015-03-20 11:30 nbv Steps to Reproduce Updated View Revisions
2015-03-20 11:31 nbv Relationship added related to 0025416
2015-03-20 12:45 msv Assigned To msv => nbv
2015-03-20 12:45 msv Status new => assigned
2015-03-20 15:13 nbv File Added: diff_images.png
2015-03-20 15:28 nbv Note Added: 0038738
2015-04-06 14:02 abv Target Version 6.9.0 => 7.1.0
2016-10-25 19:04 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:08 msv Target Version 7.3.0 => 7.4.0*


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker