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_MAKECIRCULARARC_H__
11 #define __MayaDM_MAKECIRCULARARC_H__
12 #include "MayaDMTypes.h"
13 #include "MayaDMConnectables.h"
14 #include "MayaDMAbstractBaseCreate.h"
15 namespace MayaDM
16 {
17 class MakeCircularArc : public AbstractBaseCreate
18 {
19 public:
20 public:
21 
MakeCircularArc()22 	MakeCircularArc():AbstractBaseCreate(){}
23 	MakeCircularArc(FILE* file,const std::string& name,const std::string& parent="",bool shared=false,bool create=true)
24 		:AbstractBaseCreate(file, name, parent, "makeCircularArc", shared, create){}
~MakeCircularArc()25 	virtual ~MakeCircularArc(){}
26 
setDegree(unsigned int d)27 	void setDegree(unsigned int d)
28 	{
29 		if(d == 3) return;
30 		fprintf(mFile,"\tsetAttr \".d\" %i;\n", d);
31 	}
setSections(int s)32 	void setSections(int s)
33 	{
34 		if(s == 8) return;
35 		fprintf(mFile,"\tsetAttr \".s\" %i;\n", s);
36 	}
getDegree()37 	void getDegree()const
38 	{
39 		fprintf(mFile,"\"%s.d\"",mName.c_str());
40 	}
getSections()41 	void getSections()const
42 	{
43 		fprintf(mFile,"\"%s.s\"",mName.c_str());
44 	}
getCenter()45 	void getCenter()const
46 	{
47 		fprintf(mFile,"\"%s.c\"",mName.c_str());
48 	}
getCenterX()49 	void getCenterX()const
50 	{
51 		fprintf(mFile,"\"%s.c.cx\"",mName.c_str());
52 	}
getCenterY()53 	void getCenterY()const
54 	{
55 		fprintf(mFile,"\"%s.c.cy\"",mName.c_str());
56 	}
getCenterZ()57 	void getCenterZ()const
58 	{
59 		fprintf(mFile,"\"%s.c.cz\"",mName.c_str());
60 	}
getNormal()61 	void getNormal()const
62 	{
63 		fprintf(mFile,"\"%s.nr\"",mName.c_str());
64 	}
getNormalX()65 	void getNormalX()const
66 	{
67 		fprintf(mFile,"\"%s.nr.nrx\"",mName.c_str());
68 	}
getNormalY()69 	void getNormalY()const
70 	{
71 		fprintf(mFile,"\"%s.nr.nry\"",mName.c_str());
72 	}
getNormalZ()73 	void getNormalZ()const
74 	{
75 		fprintf(mFile,"\"%s.nr.nrz\"",mName.c_str());
76 	}
getSweep()77 	void getSweep()const
78 	{
79 		fprintf(mFile,"\"%s.sw\"",mName.c_str());
80 	}
getOutputCurve()81 	void getOutputCurve()const
82 	{
83 		fprintf(mFile,"\"%s.oc\"",mName.c_str());
84 	}
85 protected:
86 	MakeCircularArc(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)87 		:AbstractBaseCreate(file, name, parent, nodeType, shared, create) {}
88 
89 };
90 }//namespace MayaDM
91 #endif//__MayaDM_MAKECIRCULARARC_H__
92