1 /*
2     Copyright (c) 2008-2009 NetAllied Systems GmbH
3 
4     This file is part of MayaDataModel.
5 
6     Licensed under the MIT Open Source License,
7     for details please see LICENSE file or the website
8     http://www.opensource.org/licenses/mit-license.php
9 */
10 #ifndef __MayaDM_FILLETCURVE_H__
11 #define __MayaDM_FILLETCURVE_H__
12 #include "MayaDMTypes.h"
13 #include "MayaDMConnectables.h"
14 #include "MayaDMAbstractBaseCreate.h"
15 namespace MayaDM
16 {
17 class FilletCurve : public AbstractBaseCreate
18 {
19 public:
20 public:
21 
FilletCurve()22 	FilletCurve():AbstractBaseCreate(){}
23 	FilletCurve(FILE* file,const std::string& name,const std::string& parent="",bool shared=false,bool create=true)
24 		:AbstractBaseCreate(file, name, parent, "filletCurve", shared, create){}
~FilletCurve()25 	virtual ~FilletCurve(){}
26 
setRadius(double r)27 	void setRadius(double r)
28 	{
29 		if(r == 1) return;
30 		fprintf(mFile,"\tsetAttr \".r\" %f;\n", r);
31 	}
setDepth(double d)32 	void setDepth(double d)
33 	{
34 		if(d == 0) return;
35 		fprintf(mFile,"\tsetAttr \".d\" %f;\n", d);
36 	}
setBias(double b)37 	void setBias(double b)
38 	{
39 		if(b == 0) return;
40 		fprintf(mFile,"\tsetAttr \".b\" %f;\n", b);
41 	}
setCurveParameter1(double cp1)42 	void setCurveParameter1(double cp1)
43 	{
44 		if(cp1 == 0.0) return;
45 		fprintf(mFile,"\tsetAttr \".cp1\" %f;\n", cp1);
46 	}
setCurveParameter2(double cp2)47 	void setCurveParameter2(double cp2)
48 	{
49 		if(cp2 == 0.0) return;
50 		fprintf(mFile,"\tsetAttr \".cp2\" %f;\n", cp2);
51 	}
setTrim(bool t)52 	void setTrim(bool t)
53 	{
54 		if(t == false) return;
55 		fprintf(mFile,"\tsetAttr \".t\" %i;\n", t);
56 	}
setJoin(bool jn)57 	void setJoin(bool jn)
58 	{
59 		if(jn == false) return;
60 		fprintf(mFile,"\tsetAttr \".jn\" %i;\n", jn);
61 	}
setCircular(bool cir)62 	void setCircular(bool cir)
63 	{
64 		if(cir == true) return;
65 		fprintf(mFile,"\tsetAttr \".cir\" %i;\n", cir);
66 	}
setFreeformBlend(bool fb)67 	void setFreeformBlend(bool fb)
68 	{
69 		if(fb == false) return;
70 		fprintf(mFile,"\tsetAttr \".fb\" %i;\n", fb);
71 	}
setBlendControl(bool bc)72 	void setBlendControl(bool bc)
73 	{
74 		if(bc == false) return;
75 		fprintf(mFile,"\tsetAttr \".bc\" %i;\n", bc);
76 	}
getPrimaryCurve()77 	void getPrimaryCurve()const
78 	{
79 		fprintf(mFile,"\"%s.pc\"",mName.c_str());
80 	}
getSecondaryCurve()81 	void getSecondaryCurve()const
82 	{
83 		fprintf(mFile,"\"%s.sc\"",mName.c_str());
84 	}
getOutputCurve()85 	void getOutputCurve()const
86 	{
87 		fprintf(mFile,"\"%s.oc\"",mName.c_str());
88 	}
getDetachedCurve1()89 	void getDetachedCurve1()const
90 	{
91 		fprintf(mFile,"\"%s.dc1\"",mName.c_str());
92 	}
getDetachedCurve2()93 	void getDetachedCurve2()const
94 	{
95 		fprintf(mFile,"\"%s.dc2\"",mName.c_str());
96 	}
getRadius()97 	void getRadius()const
98 	{
99 		fprintf(mFile,"\"%s.r\"",mName.c_str());
100 	}
getDepth()101 	void getDepth()const
102 	{
103 		fprintf(mFile,"\"%s.d\"",mName.c_str());
104 	}
getBias()105 	void getBias()const
106 	{
107 		fprintf(mFile,"\"%s.b\"",mName.c_str());
108 	}
getCurveParameter1()109 	void getCurveParameter1()const
110 	{
111 		fprintf(mFile,"\"%s.cp1\"",mName.c_str());
112 	}
getCurveParameter2()113 	void getCurveParameter2()const
114 	{
115 		fprintf(mFile,"\"%s.cp2\"",mName.c_str());
116 	}
getTrim()117 	void getTrim()const
118 	{
119 		fprintf(mFile,"\"%s.t\"",mName.c_str());
120 	}
getJoin()121 	void getJoin()const
122 	{
123 		fprintf(mFile,"\"%s.jn\"",mName.c_str());
124 	}
getCircular()125 	void getCircular()const
126 	{
127 		fprintf(mFile,"\"%s.cir\"",mName.c_str());
128 	}
getFreeformBlend()129 	void getFreeformBlend()const
130 	{
131 		fprintf(mFile,"\"%s.fb\"",mName.c_str());
132 	}
getBlendControl()133 	void getBlendControl()const
134 	{
135 		fprintf(mFile,"\"%s.bc\"",mName.c_str());
136 	}
137 protected:
138 	FilletCurve(FILE* file,const std::string& name,const std::string& parent,const std::string& nodeType,bool shared=false,bool create=true)
AbstractBaseCreate(file,name,parent,nodeType,shared,create)139 		:AbstractBaseCreate(file, name, parent, nodeType, shared, create) {}
140 
141 };
142 }//namespace MayaDM
143 #endif//__MayaDM_FILLETCURVE_H__
144