View Issue Details

IDProjectCategoryView StatusLast Update
0025961Open CASCADEOCCT:Modeling Algorithmspublic2023-08-01 15:08
ReporternbvAssigned Tonbv 
PrioritynormalSeverityminor 
Status assignedResolutionopen 
Target VersionUnscheduled 
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 Files

  • diff_images.png (40,605 bytes)

Activities

nbv

2015-03-20 15:13

developer  

diff_images.png (40,605 bytes)

nbv

2015-03-20 15:28

developer   ~0038738

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
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
2019-08-12 16:37 msv Target Version 7.4.0 => 7.5.0
2020-09-14 22:58 msv Target Version 7.5.0 => 7.6.0
2021-08-29 18:53 msv Target Version 7.6.0 => 7.7.0
2022-10-24 10:42 szy Target Version 7.7.0 => 7.8.0
2023-08-01 15:08 dpasukhi Target Version 7.8.0 => Unscheduled