2
Copyright (c) 2008-2009 NetAllied Systems GmbH
4
This file is part of MayaDataModel.
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
10
#ifndef __MayaDM_TRIM_H__
11
#define __MayaDM_TRIM_H__
12
#include "MayaDMTypes.h"
13
#include "MayaDMConnectables.h"
14
#include "MayaDMAbstractBaseCreate.h"
17
class Trim : public AbstractBaseCreate
22
Trim():AbstractBaseCreate(){}
23
Trim(FILE* file,const std::string& name,const std::string& parent="",bool shared=false,bool create=true)
24
:AbstractBaseCreate(file, name, parent, "trim", shared, create){}
27
void setLocatorU(size_t lu_i,double lu)
30
fprintf(mFile,"\tsetAttr \".lu[%i]\" %f;\n", lu_i,lu);
32
void setLocatorU(size_t lu_start,size_t lu_end,double* lu)
34
fprintf(mFile,"\tsetAttr \".lu[%i:%i]\" ", lu_start,lu_end);
35
size_t size = (lu_end-lu_start)*1+1;
36
for(size_t i=0;i<size;++i)
38
fprintf(mFile,"%f",lu[i]);
39
if(i+1<size) fprintf(mFile," ");
43
void startLocatorU(size_t lu_start,size_t lu_end)const
45
fprintf(mFile,"\tsetAttr \".lu[%i:%i]\"",lu_start,lu_end);
47
void appendLocatorU(double lu)const
49
fprintf(mFile," %f",lu);
51
void endLocatorU()const
55
void setLocatorV(size_t lv_i,double lv)
58
fprintf(mFile,"\tsetAttr \".lv[%i]\" %f;\n", lv_i,lv);
60
void setLocatorV(size_t lv_start,size_t lv_end,double* lv)
62
fprintf(mFile,"\tsetAttr \".lv[%i:%i]\" ", lv_start,lv_end);
63
size_t size = (lv_end-lv_start)*1+1;
64
for(size_t i=0;i<size;++i)
66
fprintf(mFile,"%f",lv[i]);
67
if(i+1<size) fprintf(mFile," ");
71
void startLocatorV(size_t lv_start,size_t lv_end)const
73
fprintf(mFile,"\tsetAttr \".lv[%i:%i]\"",lv_start,lv_end);
75
void appendLocatorV(double lv)const
77
fprintf(mFile," %f",lv);
79
void endLocatorV()const
83
void setSelected(unsigned int sl)
86
fprintf(mFile,"\tsetAttr \".sl\" %i;\n", sl);
88
void setShrink(bool sh)
90
if(sh == false) return;
91
fprintf(mFile,"\tsetAttr \".sh\" %i;\n", sh);
93
void setTolerance(double tol)
96
fprintf(mFile,"\tsetAttr \".tol\" %f;\n", tol);
98
void getInputCurve(size_t ic_i)const
100
fprintf(mFile,"\"%s.ic[%i]\"",mName.c_str(),ic_i);
102
void getInputCurve()const
105
fprintf(mFile,"\"%s.ic\"",mName.c_str());
107
void getInputSurface()const
109
fprintf(mFile,"\"%s.is\"",mName.c_str());
111
void getLocatorU(size_t lu_i)const
113
fprintf(mFile,"\"%s.lu[%i]\"",mName.c_str(),lu_i);
115
void getLocatorU()const
118
fprintf(mFile,"\"%s.lu\"",mName.c_str());
120
void getLocatorV(size_t lv_i)const
122
fprintf(mFile,"\"%s.lv[%i]\"",mName.c_str(),lv_i);
124
void getLocatorV()const
127
fprintf(mFile,"\"%s.lv\"",mName.c_str());
129
void getSelected()const
131
fprintf(mFile,"\"%s.sl\"",mName.c_str());
133
void getShrink()const
135
fprintf(mFile,"\"%s.sh\"",mName.c_str());
137
void getTolerance()const
139
fprintf(mFile,"\"%s.tol\"",mName.c_str());
141
void getUsedCurves(size_t uc_i)const
143
fprintf(mFile,"\"%s.uc[%i]\"",mName.c_str(),uc_i);
145
void getUsedCurves()const
148
fprintf(mFile,"\"%s.uc\"",mName.c_str());
150
void getSplitSurface()const
152
fprintf(mFile,"\"%s.ss\"",mName.c_str());
154
void getOutputSurface()const
156
fprintf(mFile,"\"%s.os\"",mName.c_str());
158
void getShouldBeLast()const
160
fprintf(mFile,"\"%s.sbl\"",mName.c_str());
163
Trim(FILE* file,const std::string& name,const std::string& parent,const std::string& nodeType,bool shared=false,bool create=true)
164
:AbstractBaseCreate(file, name, parent, nodeType, shared, create) {}
168
#endif//__MayaDM_TRIM_H__