SINTEF / Splipy

Spline modelling made easy.
GNU General Public License v3.0
102 stars 18 forks source link

raise_order fails on certain periodic geometries #22

Closed VikingScientist closed 6 years ago

VikingScientist commented 7 years ago
from splipy import *                                                           
import splipy.curve_factory as cf                                              
import splipy.surface_factory as sf                                            

crv1 = cf.circle()                                                             
crv2 = cf.n_gon(4) * 3                                                         
srf  = sf.edge_curves(crv1, crv2)                                              

srf.raise_order(0,1)                                                           

Crashes with the following output:

Traceback (most recent call last):
  File "bug.py", line 9, in <module>
    srf.raise_order(0,1)
  File ".../splipy/SplineObject.py", line 450, in raise_order
    new_bases = [b.raise_order(r) for b, r in zip(self.bases, raises)]
  File ".../splipy/BSplineBasis.py", line 318, in raise_order
    return BSplineBasis(self.order + amount, knots, self.periodic)
  File ".../splipy/BSplineBasis.py", line 57, in __init__
    raise ValueError('knot vector has too few elements')
ValueError: knot vector has too few elements
VikingScientist commented 6 years ago

Apperently this was fixed in 48a9d13cd7353b9624b20135c0dabb34ecbca949