~ubuntu-branches/ubuntu/wily/opencollada/wily-proposed

« back to all changes in this revision

Viewing changes to Externals/MayaDataModel/include/MayaDMInsertKnotCurve.h

  • Committer: Package Import Robot
  • Author(s): Matteo F. Vescovi
  • Date: 2015-05-14 17:23:27 UTC
  • Revision ID: package-import@ubuntu.com-20150514172327-f862u8envms01fra
Tags: upstream-0.1.0~20140703.ddf8f47+dfsg1
ImportĀ upstreamĀ versionĀ 0.1.0~20140703.ddf8f47+dfsg1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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_INSERTKNOTCURVE_H__
 
11
#define __MayaDM_INSERTKNOTCURVE_H__
 
12
#include "MayaDMTypes.h"
 
13
#include "MayaDMConnectables.h"
 
14
#include "MayaDMAbstractBaseCreate.h"
 
15
namespace MayaDM
 
16
{
 
17
class InsertKnotCurve : public AbstractBaseCreate
 
18
{
 
19
public:
 
20
public:
 
21
 
 
22
        InsertKnotCurve():AbstractBaseCreate(){}
 
23
        InsertKnotCurve(FILE* file,const std::string& name,const std::string& parent="",bool shared=false,bool create=true)
 
24
                :AbstractBaseCreate(file, name, parent, "insertKnotCurve", shared, create){}
 
25
        virtual ~InsertKnotCurve(){}
 
26
 
 
27
        void setParameter(size_t p_i,double p)
 
28
        {
 
29
                if(p == 0.0) return;
 
30
                fprintf(mFile,"\tsetAttr \".p[%i]\" %f;\n", p_i,p);
 
31
        }
 
32
        void setParameter(size_t p_start,size_t p_end,double* p)
 
33
        {
 
34
                fprintf(mFile,"\tsetAttr \".p[%i:%i]\" ", p_start,p_end);
 
35
                size_t size = (p_end-p_start)*1+1;
 
36
                for(size_t i=0;i<size;++i)
 
37
                {
 
38
                        fprintf(mFile,"%f",p[i]);
 
39
                        if(i+1<size) fprintf(mFile," ");
 
40
                }
 
41
                fprintf(mFile,";\n");
 
42
        }
 
43
        void startParameter(size_t p_start,size_t p_end)const
 
44
        {
 
45
                fprintf(mFile,"\tsetAttr \".p[%i:%i]\"",p_start,p_end);
 
46
        }
 
47
        void appendParameter(double p)const
 
48
        {
 
49
                fprintf(mFile," %f",p);
 
50
        }
 
51
        void endParameter()const
 
52
        {
 
53
                fprintf(mFile,";\n");
 
54
        }
 
55
        void setNumberOfKnots(size_t nk_i,int nk)
 
56
        {
 
57
                if(nk == 1) return;
 
58
                fprintf(mFile,"\tsetAttr \".nk[%i]\" %i;\n", nk_i,nk);
 
59
        }
 
60
        void setNumberOfKnots(size_t nk_start,size_t nk_end,int* nk)
 
61
        {
 
62
                fprintf(mFile,"\tsetAttr \".nk[%i:%i]\" ", nk_start,nk_end);
 
63
                size_t size = (nk_end-nk_start)*1+1;
 
64
                for(size_t i=0;i<size;++i)
 
65
                {
 
66
                        fprintf(mFile,"%i",nk[i]);
 
67
                        if(i+1<size) fprintf(mFile," ");
 
68
                }
 
69
                fprintf(mFile,";\n");
 
70
        }
 
71
        void startNumberOfKnots(size_t nk_start,size_t nk_end)const
 
72
        {
 
73
                fprintf(mFile,"\tsetAttr \".nk[%i:%i]\"",nk_start,nk_end);
 
74
        }
 
75
        void appendNumberOfKnots(int nk)const
 
76
        {
 
77
                fprintf(mFile," %i",nk);
 
78
        }
 
79
        void endNumberOfKnots()const
 
80
        {
 
81
                fprintf(mFile,";\n");
 
82
        }
 
83
        void setAddKnots(bool add)
 
84
        {
 
85
                if(add == true) return;
 
86
                fprintf(mFile,"\tsetAttr \".add\" %i;\n", add);
 
87
        }
 
88
        void setInsertBetween(bool ib)
 
89
        {
 
90
                if(ib == false) return;
 
91
                fprintf(mFile,"\tsetAttr \".ib\" %i;\n", ib);
 
92
        }
 
93
        void getInputCurve()const
 
94
        {
 
95
                fprintf(mFile,"\"%s.ic\"",mName.c_str());
 
96
        }
 
97
        void getParameter(size_t p_i)const
 
98
        {
 
99
                fprintf(mFile,"\"%s.p[%i]\"",mName.c_str(),p_i);
 
100
        }
 
101
        void getParameter()const
 
102
        {
 
103
 
 
104
                fprintf(mFile,"\"%s.p\"",mName.c_str());
 
105
        }
 
106
        void getNumberOfKnots(size_t nk_i)const
 
107
        {
 
108
                fprintf(mFile,"\"%s.nk[%i]\"",mName.c_str(),nk_i);
 
109
        }
 
110
        void getNumberOfKnots()const
 
111
        {
 
112
 
 
113
                fprintf(mFile,"\"%s.nk\"",mName.c_str());
 
114
        }
 
115
        void getAddKnots()const
 
116
        {
 
117
                fprintf(mFile,"\"%s.add\"",mName.c_str());
 
118
        }
 
119
        void getInsertBetween()const
 
120
        {
 
121
                fprintf(mFile,"\"%s.ib\"",mName.c_str());
 
122
        }
 
123
        void getOutputCurve()const
 
124
        {
 
125
                fprintf(mFile,"\"%s.oc\"",mName.c_str());
 
126
        }
 
127
protected:
 
128
        InsertKnotCurve(FILE* file,const std::string& name,const std::string& parent,const std::string& nodeType,bool shared=false,bool create=true)
 
129
                :AbstractBaseCreate(file, name, parent, nodeType, shared, create) {}
 
130
 
 
131
};
 
132
}//namespace MayaDM
 
133
#endif//__MayaDM_INSERTKNOTCURVE_H__