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_CURVEINFO_H__
11 #define __MayaDM_CURVEINFO_H__
12 #include "MayaDMTypes.h"
13 #include "MayaDMConnectables.h"
14 #include "MayaDMAbstractBaseCreate.h"
15 namespace MayaDM
16 {
17 class CurveInfo : public AbstractBaseCreate
18 {
19 public:
20 public:
21 
CurveInfo()22 	CurveInfo():AbstractBaseCreate(){}
23 	CurveInfo(FILE* file,const std::string& name,const std::string& parent="",bool shared=false,bool create=true)
24 		:AbstractBaseCreate(file, name, parent, "curveInfo", shared, create){}
~CurveInfo()25 	virtual ~CurveInfo(){}
26 
getInputCurve()27 	void getInputCurve()const
28 	{
29 		fprintf(mFile,"\"%s.ic\"",mName.c_str());
30 	}
getArcLength()31 	void getArcLength()const
32 	{
33 		fprintf(mFile,"\"%s.al\"",mName.c_str());
34 	}
getControlPoints(size_t cp_i)35 	void getControlPoints(size_t cp_i)const
36 	{
37 		fprintf(mFile,"\"%s.cp[%i]\"",mName.c_str(),cp_i);
38 	}
getControlPoints()39 	void getControlPoints()const
40 	{
41 
42 		fprintf(mFile,"\"%s.cp\"",mName.c_str());
43 	}
getXValue(size_t cp_i)44 	void getXValue(size_t cp_i)const
45 	{
46 		fprintf(mFile,"\"%s.cp[%i].xv\"",mName.c_str(),cp_i);
47 	}
getXValue()48 	void getXValue()const
49 	{
50 
51 		fprintf(mFile,"\"%s.cp.xv\"",mName.c_str());
52 	}
getYValue(size_t cp_i)53 	void getYValue(size_t cp_i)const
54 	{
55 		fprintf(mFile,"\"%s.cp[%i].yv\"",mName.c_str(),cp_i);
56 	}
getYValue()57 	void getYValue()const
58 	{
59 
60 		fprintf(mFile,"\"%s.cp.yv\"",mName.c_str());
61 	}
getZValue(size_t cp_i)62 	void getZValue(size_t cp_i)const
63 	{
64 		fprintf(mFile,"\"%s.cp[%i].zv\"",mName.c_str(),cp_i);
65 	}
getZValue()66 	void getZValue()const
67 	{
68 
69 		fprintf(mFile,"\"%s.cp.zv\"",mName.c_str());
70 	}
getWeights(size_t wt_i)71 	void getWeights(size_t wt_i)const
72 	{
73 		fprintf(mFile,"\"%s.wt[%i]\"",mName.c_str(),wt_i);
74 	}
getWeights()75 	void getWeights()const
76 	{
77 
78 		fprintf(mFile,"\"%s.wt\"",mName.c_str());
79 	}
getKnots(size_t kn_i)80 	void getKnots(size_t kn_i)const
81 	{
82 		fprintf(mFile,"\"%s.kn[%i]\"",mName.c_str(),kn_i);
83 	}
getKnots()84 	void getKnots()const
85 	{
86 
87 		fprintf(mFile,"\"%s.kn\"",mName.c_str());
88 	}
89 protected:
90 	CurveInfo(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)91 		:AbstractBaseCreate(file, name, parent, nodeType, shared, create) {}
92 
93 };
94 }//namespace MayaDM
95 #endif//__MayaDM_CURVEINFO_H__
96