Anonymous | Login 2021-01-16 09:29 MSK Project: All Projects Community Open CASCADE
 My View | View Issues | Change Log | Roadmap

View Issue Details  Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0027637Open CASCADE[OCCT] OCCT:Modeling Algorithmspublic2016-06-24 13:132020-09-14 22:58
Reporternbv
Assigned Tonbv
PrioritynormalSeverityminor
StatusassignedResolutionopen
PlatformOSOS Version
Product Version
Target Version[OCCT] 7.6.0*Fixed in Version
Summary0027637: Method Geom_BSplineCurve::Segment() produces invalid B-spline curve while the source curve seems to be OK
DescriptionAfter applying Geom_BSplineCurve::Segment(...) method to the attached curves we obtain the result curve with several close poles and knots.

Result of Steps To Reproduce scrips:

SCRIPT # 1

Draw[]> dump cc1
*********** Dump of cc1 *************
BSplineCurve
Degree 8, 28 Poles, 5 Knots
Poles :
...
22 : -41.6415298559676, 11.5000002955484, 113.822875195299
23 : -41.4999999999997, 11.5000001477742, 113.822875425416
24 : -41.4999999999996, 11.5000001477742, 113.822875425416
25 : -41.4999999999994, 11.5000001477742, 113.822875425416
26 : -41.4999999999992, 11.5000001477742, 113.822875425416
27 : -41.4999999999991, 11.5000001477742, 113.822875425416
28 : -41.4999999999989, 11.5000001477742, 113.822875425416
Knots :

...
4 : 1.38173176294828 5
5 : 1.38173176294839 9

SCRIPT # 2

Draw[]> dump cc2
*********** Dump of cc2 *************
BSplineCurve
Degree 8, 30 Poles, 5 Knots
Poles :
...
22 : -41.614408772683, 11.5, 113.822875655532
23 : -41.4999999999999, 11.5, 113.822875655532
24 : -41.4999999999999, 11.5, 113.822875655532
25 : -41.4999999999998, 11.5, 113.822875655532
26 : -41.4999999999997, 11.5, 113.822875655532
27 : -41.4999999999997, 11.5, 113.822875655532
28 : -41.4999999999996, 11.5, 113.822875655532
29 : -41.4999999999996, 11.5, 113.822875655532
30 : -41.4999999999995, 11.5, 113.822875655532
Knots :

...
4 : 0.807999411490432 7
5 : 0.807999411490455 9

Steps To ReproduceSCRIPT # 1

Draw[]> restore scurv.brep c0
Draw[]> takesegment cc1 c0 1.0064553654290889 1.3817317629483903
Draw[]> dump cc1

SCRIPT # 2

Draw[]> restore scurv1.brep c1
Draw[]> reverse c1
Draw[]> takesegment cc2 c1 0.61918345724997570 0.80799941149045451
Draw[]> dump cc2
TagsNo tags attached.
Test case number
Attached Files scurv.brep (8,387 bytes) 2016-06-24 13:13
scurv1.brep (14,090 bytes) 2016-06-24 13:13
takesegment.cxx (814 bytes) 2016-06-24 13:34

 Relationships

 Notes nbv (developer) 2016-06-24 13:35 The code for "takesegment" DRAW-command is attached in takesegment.cxx file. msv (developer) 2016-10-25 18:30 Does not the command "segment" do the same as "takesegment"?

 Issue History Date Modified Username Field Change 2016-06-24 13:13 nbv New Issue 2016-06-24 13:13 nbv Assigned To => msv 2016-06-24 13:13 nbv File Added: scurv.brep 2016-06-24 13:13 nbv File Added: scurv1.brep 2016-06-24 13:16 nbv Relationship added related to 0027627 2016-06-24 13:34 nbv File Added: takesegment.cxx 2016-06-24 13:35 nbv Note Added: 0055441 2016-06-24 15:01 msv Summary Method Geom_BSplineCurve::Segment() produces invalid B-spline curve if the source curve seems to be OK => Method Geom_BSplineCurve::Segment() produces invalid B-spline curve while the source curve seems to be OK 2016-06-24 15:04 msv Assigned To msv => nbv 2016-06-24 15:04 msv Status new => assigned 2016-10-25 18:30 msv Note Added: 0059115 2016-10-25 18:44 msv Target Version 7.1.0 => 7.2.0 2017-07-24 09:33 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*