64 import maya.OpenMaya 
as OpenMaya
 
   65 import maya.OpenMayaMPx 
as OpenMayaMPx
 
   68 kPluginCmdName=
"spHelix" 
   71 kPitchLongFlag = 
"-pitch" 
   73 kRadiusLongFlag = 
"-radius" 
   76 class scriptedCommand(OpenMayaMPx.MPxCommand):
 
   78         OpenMayaMPx.MPxCommand.__init__(self)
 
   84         nknots = spans+2*deg-1
 
   90         if argData.isFlagSet(kPitchFlag):
 
   91             pitch = argData.flagArgumentDouble(kPitchFlag, 0)
 
   92         if argData.isFlagSet(kRadiusFlag):
 
   93             radius = argData.flagArgumentDouble(kRadiusFlag, 0)
 
  100         for i 
in range(0, ncvs):
 
  102                 pitch * i, radius * math.sin(i) ) )
 
  104         for i 
in range(0, nknots):
 
  105             knotSequences.append( i )
 
  119                 curveFn.create( controlVertices,
 
  121                                 OpenMaya.MFnNurbsCurve.kOpen, 
 
  125                 curveFn.createWithEditPoints(controlVertices,
 
  126                                 3, OpenMaya.MFnNurbsCurve.kOpen,
 
  129             sys.stderr.write( 
"Error creating curve.\n" )
 
  135     return OpenMayaMPx.asMPxPtr( scriptedCommand() )
 
  140     syntax.addFlag(kPitchFlag, kPitchLongFlag, OpenMaya.MSyntax.kDouble)
 
  141     syntax.addFlag(kRadiusFlag, kRadiusLongFlag, OpenMaya.MSyntax.kDouble)
 
  145 def initializePlugin(mobject):
 
  146     mplugin = OpenMayaMPx.MFnPlugin(mobject, 
"Autodesk", 
"1.0", 
"Any")
 
  148         mplugin.registerCommand( kPluginCmdName, cmdCreator, syntaxCreator )
 
  150         sys.stderr.write( 
"Failed to register command: %s\n" % kPluginCmdName )
 
  154 def uninitializePlugin(mobject):
 
  155     mplugin = OpenMayaMPx.MFnPlugin(mobject)
 
  157         mplugin.deregisterCommand( kPluginCmdName )
 
  159         sys.stderr.write( 
"Failed to unregister command: %s\n" % kPluginCmdName )