Skip to content

Instantly share code, notes, and snippets.

@fereria
Created February 23, 2014 05:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fereria/a27bc039b3023a1e79cc to your computer and use it in GitHub Desktop.
Save fereria/a27bc039b3023a1e79cc to your computer and use it in GitHub Desktop.
#Attributeの作成
#NumericAttribute は、シンプルなアトリビュートの定義 create(longName,shortName,Type,Default)
nAttr = om.MFnNumericAttribute()
cls.input1Attr = nAttr.create(cls.kInput1AttrLongName,cls.kInput1AttrName,om.MFnNumericData.kDouble,0)
nAttr.setKeyable(True)
nAttr.setStorable(1)
nAttr = om.MFnNumericAttribute()
cls.input2Attr = nAttr.create(cls.kInput2AttrLongName,cls.kInput2AttrName,om.MFnNumericData.kDouble,0)
nAttr.setKeyable(True)
nAttr.setStorable(1)
nAttr = om.MFnNumericAttribute()
cls.outputAttr = nAttr.create(cls.kOutputAttrLongName,cls.kOutputAttrName,om.MFnNumericData.kDouble,0)
nAttr.setWritable(False)
nAttr.setStorable(False)
#rampアトリビュート作成
nAttr = om.MRampAttribute()
cls.rampAttr = nAttr.createCurveRamp(cls.kRampAttrLongName,cls.kRampAttrName)
cls.addAttribute(cls.rampAttr)
#String型
nAttrB = om.MFnTypedAttribute()
stringData = om.MFnStringData().create("def")
strAttr = nAttrB.create("stringAttr", "sa", om.MFnData.kString, stringData)
#cls.addAttribute(cls.strAttr)
#compoundAttr用のアトリビュートを作成
nAttr = om.MFnNumericAttribute()
cAttr = nAttr.create("nums","nm",om.MFnNumericData.kFloat)
#compoundAttribute作成
nAttr = om.MFnCompoundAttribute()
cls.compAttr = nAttr.create(cls.kCompAttrLongName,cls.kCompAttrName)
nAttr.setArray(True)
nAttr.addChild(cAttr)
nAttr.addChild(strAttr)
cls.addAttribute(cls.compAttr)
#アトリビュートを追加
cls.addAttribute(cls.input1Attr)
cls.addAttribute(cls.input2Attr)
cls.addAttribute(cls.outputAttr)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment