ModelRoot cakePath.egg
PandaNode
PandaNode NurbsPath T:m(pos 0 -194.999 0)
Mopath: no valid curves in nodePath: cakePath.egg
Mopath: Mopath has no curves
Mopath: Mopath has no curves
...
...
...
So I open cakePath.egg, use " NurbsCurve " replace " NurbsPath ", then:
ModelRoot cakePath.egg
PandaNode
PandaNode NurbsCurve T:m(pos 0 -194.999 0)
Mopath: no valid curves in nodePath: cakePath.egg
Mopath: Mopath has no curves
Mopath: Mopath has no curves
...
...
...
Oh, it’s probably mad because you specified ‘order 0’, which isn’t a valid order. (Order runs from 1 to 4, and is most often 4. But the order also determines the number of knots you must provide.)
Was there an error message when you loaded the egg file the first time?
Known pipe types:
glxGraphicsPipe
(all display modules loaded.)
:display:glxdisplay(warning): No suitable FBConfig contexts available; using XVisual only.
depth_bits=24 color_bits=24 alpha_bits=8 stencil_bits=8 back_buffers=1 force_hardware=1
:net(error): Unable to open TCP connection to server 127.0.0.1 on port 5185
:pstats(error): Couldn't connect to PStatServer at localhost:5185
# m = loader.loadModel(cakePath)
# m.ls()
ModelRoot cakePath.egg
PandaNode
PandaNode NurbsCurve T:m(pos 0 -194.999 0)
# mp = Mopath.Mopath()
# mp.loadFile(cakePath)
Mopath: no valid curves in nodePath: cakePath.egg
Mopath: Mopath has no curves
Mopath: Mopath has no curves
Mopath: Mopath has no curves
...
...
You should be seeing an error message, but you will only see it the very first time you load an egg file after changing it (subsequent loads will be cached and won’t generate error messages).
The number of knots must be exactly the number of CV’s plus the order. So, for an order 1 curve, you must have one more knots than you have CV’s. But I really doubt you wanted an order 1 curve; that’s just a collection of disconnected points. You almost certainly meant to create an order 4 curve, which means you must have four more knots than CV’s.
I don’t think Panda ships with any examples of NURBS curves, but NURBS are fairly standard and you should be able to find examples elsewhere on the internet.