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_IMAGEPLANE_H__ 11 #define __MayaDM_IMAGEPLANE_H__ 12 #include "MayaDMTypes.h" 13 #include "MayaDMConnectables.h" 14 #include "MayaDMDependNode.h" 15 namespace MayaDM 16 { 17 class ImagePlane : public DependNode 18 { 19 public: 20 public: 21 ImagePlane()22 ImagePlane():DependNode(){} 23 ImagePlane(FILE* file,const std::string& name,const std::string& parent="",bool shared=false,bool create=true) 24 :DependNode(file, name, parent, "imagePlane", shared, create){} ~ImagePlane()25 virtual ~ImagePlane(){} 26 setType(unsigned int t)27 void setType(unsigned int t) 28 { 29 if(t == 0) return; 30 fprintf(mFile,"\tsetAttr \".t\" %i;\n", t); 31 } setImageName(const string & imn)32 void setImageName(const string& imn) 33 { 34 if(imn == "NULL") return; 35 fprintf(mFile,"\tsetAttr \".imn\" -type \"string\" "); 36 imn.write(mFile); 37 fprintf(mFile,";\n"); 38 } setUseFrameExtension(bool ufe)39 void setUseFrameExtension(bool ufe) 40 { 41 if(ufe == false) return; 42 fprintf(mFile,"\tsetAttr \".ufe\" %i;\n", ufe); 43 } setFrameExtension(int fe)44 void setFrameExtension(int fe) 45 { 46 if(fe == 1) return; 47 fprintf(mFile,"\tsetAttr \".fe\" %i;\n", fe); 48 } setFrameOffset(int fo)49 void setFrameOffset(int fo) 50 { 51 if(fo == 0) return; 52 fprintf(mFile,"\tsetAttr \".fo\" %i;\n", fo); 53 } setCoverage(const short2 & cov)54 void setCoverage(const short2& cov) 55 { 56 if(cov == short2(1, 1)) return; 57 fprintf(mFile,"\tsetAttr \".cov\" -type \"short2\" "); 58 cov.write(mFile); 59 fprintf(mFile,";\n"); 60 } setCoverageX(short cvx)61 void setCoverageX(short cvx) 62 { 63 if(cvx == 0) return; 64 fprintf(mFile,"\tsetAttr \".cov.cvx\" %i;\n", cvx); 65 } setCoverageY(short cvy)66 void setCoverageY(short cvy) 67 { 68 if(cvy == 0) return; 69 fprintf(mFile,"\tsetAttr \".cov.cvy\" %i;\n", cvy); 70 } setCoverageOrigin(const short2 & co)71 void setCoverageOrigin(const short2& co) 72 { 73 if(co == short2(0, 0)) return; 74 fprintf(mFile,"\tsetAttr \".co\" -type \"short2\" "); 75 co.write(mFile); 76 fprintf(mFile,";\n"); 77 } setCoverageOriginX(short cox)78 void setCoverageOriginX(short cox) 79 { 80 if(cox == 0) return; 81 fprintf(mFile,"\tsetAttr \".co.cox\" %i;\n", cox); 82 } setCoverageOriginY(short coy)83 void setCoverageOriginY(short coy) 84 { 85 if(coy == 0) return; 86 fprintf(mFile,"\tsetAttr \".co.coy\" %i;\n", coy); 87 } setFit(unsigned int f)88 void setFit(unsigned int f) 89 { 90 if(f == 1) return; 91 fprintf(mFile,"\tsetAttr \".f\" %i;\n", f); 92 } setDisplayMode(unsigned int dm)93 void setDisplayMode(unsigned int dm) 94 { 95 if(dm == 3) return; 96 fprintf(mFile,"\tsetAttr \".dm\" %i;\n", dm); 97 } setDisplayOnlyIfCurrent(bool dic)98 void setDisplayOnlyIfCurrent(bool dic) 99 { 100 if(dic == false) return; 101 fprintf(mFile,"\tsetAttr \".dic\" %i;\n", dic); 102 } setColorGain(const float3 & cg)103 void setColorGain(const float3& cg) 104 { 105 if(cg == float3(1.0f,1.0f,1.0f)) return; 106 fprintf(mFile,"\tsetAttr \".cg\" -type \"float3\" "); 107 cg.write(mFile); 108 fprintf(mFile,";\n"); 109 } setColorGainR(float cgr)110 void setColorGainR(float cgr) 111 { 112 if(cgr == 0.0) return; 113 fprintf(mFile,"\tsetAttr \".cg.cgr\" %f;\n", cgr); 114 } setColorGainG(float cgg)115 void setColorGainG(float cgg) 116 { 117 if(cgg == 0.0) return; 118 fprintf(mFile,"\tsetAttr \".cg.cgg\" %f;\n", cgg); 119 } setColorGainB(float cgb)120 void setColorGainB(float cgb) 121 { 122 if(cgb == 0.0) return; 123 fprintf(mFile,"\tsetAttr \".cg.cgb\" %f;\n", cgb); 124 } setColorOffset(const float3 & cof)125 void setColorOffset(const float3& cof) 126 { 127 if(cof == float3(0.0f,0.0f,0.0f)) return; 128 fprintf(mFile,"\tsetAttr \".cof\" -type \"float3\" "); 129 cof.write(mFile); 130 fprintf(mFile,";\n"); 131 } setColorOffsetR(float cor)132 void setColorOffsetR(float cor) 133 { 134 if(cor == 0.0) return; 135 fprintf(mFile,"\tsetAttr \".cof.cor\" %f;\n", cor); 136 } setColorOffsetG(float cog)137 void setColorOffsetG(float cog) 138 { 139 if(cog == 0.0) return; 140 fprintf(mFile,"\tsetAttr \".cof.cog\" %f;\n", cog); 141 } setColorOffsetB(float cob)142 void setColorOffsetB(float cob) 143 { 144 if(cob == 0.0) return; 145 fprintf(mFile,"\tsetAttr \".cof.cob\" %f;\n", cob); 146 } setAlphaGain(double ag)147 void setAlphaGain(double ag) 148 { 149 if(ag == 1.0) return; 150 fprintf(mFile,"\tsetAttr \".ag\" %f;\n", ag); 151 } setShadingSamplesOverride(bool sso)152 void setShadingSamplesOverride(bool sso) 153 { 154 if(sso == true) return; 155 fprintf(mFile,"\tsetAttr \".sso\" %i;\n", sso); 156 } setShadingSamples(int ssa)157 void setShadingSamples(int ssa) 158 { 159 if(ssa == 1) return; 160 fprintf(mFile,"\tsetAttr \".ssa\" %i;\n", ssa); 161 } setMaxShadingSamples(int msa)162 void setMaxShadingSamples(int msa) 163 { 164 if(msa == 1) return; 165 fprintf(mFile,"\tsetAttr \".msa\" %i;\n", msa); 166 } setLockedToCamera(bool dlc)167 void setLockedToCamera(bool dlc) 168 { 169 if(dlc == true) return; 170 fprintf(mFile,"\tsetAttr \".dlc\" %i;\n", dlc); 171 } setDepth(double d)172 void setDepth(double d) 173 { 174 if(d == 1) return; 175 fprintf(mFile,"\tsetAttr \".d\" %f;\n", d); 176 } setSqueezeCorrection(double sqc)177 void setSqueezeCorrection(double sqc) 178 { 179 if(sqc == 1.0) return; 180 fprintf(mFile,"\tsetAttr \".sqc\" %f;\n", sqc); 181 } setSize(const double2 & s)182 void setSize(const double2& s) 183 { 184 if(s == double2(3.6, 2.4)) return; 185 fprintf(mFile,"\tsetAttr \".s\" -type \"double2\" "); 186 s.write(mFile); 187 fprintf(mFile,";\n"); 188 } setSizeX(double sx)189 void setSizeX(double sx) 190 { 191 if(sx == 0.0) return; 192 fprintf(mFile,"\tsetAttr \".s.sx\" %f;\n", sx); 193 } setSizeY(double sy)194 void setSizeY(double sy) 195 { 196 if(sy == 0.0) return; 197 fprintf(mFile,"\tsetAttr \".s.sy\" %f;\n", sy); 198 } setOffset(const double2 & o)199 void setOffset(const double2& o) 200 { 201 if(o == double2(0.0, 0.0)) return; 202 fprintf(mFile,"\tsetAttr \".o\" -type \"double2\" "); 203 o.write(mFile); 204 fprintf(mFile,";\n"); 205 } setOffsetX(double ox)206 void setOffsetX(double ox) 207 { 208 if(ox == 0.0) return; 209 fprintf(mFile,"\tsetAttr \".o.ox\" %f;\n", ox); 210 } setOffsetY(double oy)211 void setOffsetY(double oy) 212 { 213 if(oy == 0.0) return; 214 fprintf(mFile,"\tsetAttr \".o.oy\" %f;\n", oy); 215 } setCenter(const double3 & c)216 void setCenter(const double3& c) 217 { 218 if(c == double3(0.0, 0.0, 0.0)) return; 219 fprintf(mFile,"\tsetAttr \".c\" -type \"double3\" "); 220 c.write(mFile); 221 fprintf(mFile,";\n"); 222 } setCenterX(double cx)223 void setCenterX(double cx) 224 { 225 if(cx == 0) return; 226 fprintf(mFile,"\tsetAttr \".c.cx\" %f;\n", cx); 227 } setCenterY(double cy)228 void setCenterY(double cy) 229 { 230 if(cy == 0) return; 231 fprintf(mFile,"\tsetAttr \".c.cy\" %f;\n", cy); 232 } setCenterZ(double cz)233 void setCenterZ(double cz) 234 { 235 if(cz == 0) return; 236 fprintf(mFile,"\tsetAttr \".c.cz\" %f;\n", cz); 237 } setWidth(double w)238 void setWidth(double w) 239 { 240 if(w == 0) return; 241 fprintf(mFile,"\tsetAttr \".w\" %f;\n", w); 242 } setHeight(double h)243 void setHeight(double h) 244 { 245 if(h == 0) return; 246 fprintf(mFile,"\tsetAttr \".h\" %f;\n", h); 247 } setVisibleInReflections(bool vir)248 void setVisibleInReflections(bool vir) 249 { 250 if(vir == false) return; 251 fprintf(mFile,"\tsetAttr \".vir\" %i;\n", vir); 252 } setVisibleInRefractions(bool vif)253 void setVisibleInRefractions(bool vif) 254 { 255 if(vif == false) return; 256 fprintf(mFile,"\tsetAttr \".vif\" %i;\n", vif); 257 } setRotate(double r)258 void setRotate(double r) 259 { 260 if(r == 0) return; 261 fprintf(mFile,"\tsetAttr \".r\" %f;\n", r); 262 } setUseDepthMap(bool udm)263 void setUseDepthMap(bool udm) 264 { 265 if(udm == false) return; 266 fprintf(mFile,"\tsetAttr \".udm\" %i;\n", udm); 267 } setCompositeDepth(bool cmp)268 void setCompositeDepth(bool cmp) 269 { 270 if(cmp == true) return; 271 fprintf(mFile,"\tsetAttr \".cmp\" %i;\n", cmp); 272 } setAlreadyPremult(bool pre)273 void setAlreadyPremult(bool pre) 274 { 275 if(pre == false) return; 276 fprintf(mFile,"\tsetAttr \".pre\" %i;\n", pre); 277 } setDepthOversample(bool osp)278 void setDepthOversample(bool osp) 279 { 280 if(osp == false) return; 281 fprintf(mFile,"\tsetAttr \".osp\" %i;\n", osp); 282 } setSeparateDepth(bool sd)283 void setSeparateDepth(bool sd) 284 { 285 if(sd == false) return; 286 fprintf(mFile,"\tsetAttr \".sd\" %i;\n", sd); 287 } setDepthFile(const string & df)288 void setDepthFile(const string& df) 289 { 290 if(df == "false") return; 291 fprintf(mFile,"\tsetAttr \".df\" -type \"string\" "); 292 df.write(mFile); 293 fprintf(mFile,";\n"); 294 } setDepthBias(double dg)295 void setDepthBias(double dg) 296 { 297 if(dg == 0) return; 298 fprintf(mFile,"\tsetAttr \".dg\" %f;\n", dg); 299 } setDepthScale(double ds)300 void setDepthScale(double ds) 301 { 302 if(ds == 1.0) return; 303 fprintf(mFile,"\tsetAttr \".ds\" %f;\n", ds); 304 } getType()305 void getType()const 306 { 307 fprintf(mFile,"\"%s.t\"",mName.c_str()); 308 } getImageName()309 void getImageName()const 310 { 311 fprintf(mFile,"\"%s.imn\"",mName.c_str()); 312 } getUseFrameExtension()313 void getUseFrameExtension()const 314 { 315 fprintf(mFile,"\"%s.ufe\"",mName.c_str()); 316 } getFrameExtension()317 void getFrameExtension()const 318 { 319 fprintf(mFile,"\"%s.fe\"",mName.c_str()); 320 } getFrameOffset()321 void getFrameOffset()const 322 { 323 fprintf(mFile,"\"%s.fo\"",mName.c_str()); 324 } getCoverage()325 void getCoverage()const 326 { 327 fprintf(mFile,"\"%s.cov\"",mName.c_str()); 328 } getCoverageX()329 void getCoverageX()const 330 { 331 fprintf(mFile,"\"%s.cov.cvx\"",mName.c_str()); 332 } getCoverageY()333 void getCoverageY()const 334 { 335 fprintf(mFile,"\"%s.cov.cvy\"",mName.c_str()); 336 } getCoverageOrigin()337 void getCoverageOrigin()const 338 { 339 fprintf(mFile,"\"%s.co\"",mName.c_str()); 340 } getCoverageOriginX()341 void getCoverageOriginX()const 342 { 343 fprintf(mFile,"\"%s.co.cox\"",mName.c_str()); 344 } getCoverageOriginY()345 void getCoverageOriginY()const 346 { 347 fprintf(mFile,"\"%s.co.coy\"",mName.c_str()); 348 } getSourceTexture()349 void getSourceTexture()const 350 { 351 fprintf(mFile,"\"%s.stx\"",mName.c_str()); 352 } getFit()353 void getFit()const 354 { 355 fprintf(mFile,"\"%s.f\"",mName.c_str()); 356 } getDisplayMode()357 void getDisplayMode()const 358 { 359 fprintf(mFile,"\"%s.dm\"",mName.c_str()); 360 } getDisplayOnlyIfCurrent()361 void getDisplayOnlyIfCurrent()const 362 { 363 fprintf(mFile,"\"%s.dic\"",mName.c_str()); 364 } getAlphaGain()365 void getAlphaGain()const 366 { 367 fprintf(mFile,"\"%s.ag\"",mName.c_str()); 368 } getShadingSamplesOverride()369 void getShadingSamplesOverride()const 370 { 371 fprintf(mFile,"\"%s.sso\"",mName.c_str()); 372 } getShadingSamples()373 void getShadingSamples()const 374 { 375 fprintf(mFile,"\"%s.ssa\"",mName.c_str()); 376 } getMaxShadingSamples()377 void getMaxShadingSamples()const 378 { 379 fprintf(mFile,"\"%s.msa\"",mName.c_str()); 380 } getLockedToCamera()381 void getLockedToCamera()const 382 { 383 fprintf(mFile,"\"%s.dlc\"",mName.c_str()); 384 } getDepth()385 void getDepth()const 386 { 387 fprintf(mFile,"\"%s.d\"",mName.c_str()); 388 } getSqueezeCorrection()389 void getSqueezeCorrection()const 390 { 391 fprintf(mFile,"\"%s.sqc\"",mName.c_str()); 392 } getSize()393 void getSize()const 394 { 395 fprintf(mFile,"\"%s.s\"",mName.c_str()); 396 } getSizeX()397 void getSizeX()const 398 { 399 fprintf(mFile,"\"%s.s.sx\"",mName.c_str()); 400 } getSizeY()401 void getSizeY()const 402 { 403 fprintf(mFile,"\"%s.s.sy\"",mName.c_str()); 404 } getOffset()405 void getOffset()const 406 { 407 fprintf(mFile,"\"%s.o\"",mName.c_str()); 408 } getOffsetX()409 void getOffsetX()const 410 { 411 fprintf(mFile,"\"%s.o.ox\"",mName.c_str()); 412 } getOffsetY()413 void getOffsetY()const 414 { 415 fprintf(mFile,"\"%s.o.oy\"",mName.c_str()); 416 } getCenter()417 void getCenter()const 418 { 419 fprintf(mFile,"\"%s.c\"",mName.c_str()); 420 } getCenterX()421 void getCenterX()const 422 { 423 fprintf(mFile,"\"%s.c.cx\"",mName.c_str()); 424 } getCenterY()425 void getCenterY()const 426 { 427 fprintf(mFile,"\"%s.c.cy\"",mName.c_str()); 428 } getCenterZ()429 void getCenterZ()const 430 { 431 fprintf(mFile,"\"%s.c.cz\"",mName.c_str()); 432 } getWidth()433 void getWidth()const 434 { 435 fprintf(mFile,"\"%s.w\"",mName.c_str()); 436 } getHeight()437 void getHeight()const 438 { 439 fprintf(mFile,"\"%s.h\"",mName.c_str()); 440 } getVisibleInReflections()441 void getVisibleInReflections()const 442 { 443 fprintf(mFile,"\"%s.vir\"",mName.c_str()); 444 } getVisibleInRefractions()445 void getVisibleInRefractions()const 446 { 447 fprintf(mFile,"\"%s.vif\"",mName.c_str()); 448 } getRotate()449 void getRotate()const 450 { 451 fprintf(mFile,"\"%s.r\"",mName.c_str()); 452 } getUseDepthMap()453 void getUseDepthMap()const 454 { 455 fprintf(mFile,"\"%s.udm\"",mName.c_str()); 456 } getCompositeDepth()457 void getCompositeDepth()const 458 { 459 fprintf(mFile,"\"%s.cmp\"",mName.c_str()); 460 } getAlreadyPremult()461 void getAlreadyPremult()const 462 { 463 fprintf(mFile,"\"%s.pre\"",mName.c_str()); 464 } getDepthOversample()465 void getDepthOversample()const 466 { 467 fprintf(mFile,"\"%s.osp\"",mName.c_str()); 468 } getSeparateDepth()469 void getSeparateDepth()const 470 { 471 fprintf(mFile,"\"%s.sd\"",mName.c_str()); 472 } getDepthFile()473 void getDepthFile()const 474 { 475 fprintf(mFile,"\"%s.df\"",mName.c_str()); 476 } getDepthBias()477 void getDepthBias()const 478 { 479 fprintf(mFile,"\"%s.dg\"",mName.c_str()); 480 } getDepthScale()481 void getDepthScale()const 482 { 483 fprintf(mFile,"\"%s.ds\"",mName.c_str()); 484 } 485 protected: 486 ImagePlane(FILE* file,const std::string& name,const std::string& parent,const std::string& nodeType,bool shared=false,bool create=true) DependNode(file,name,parent,nodeType,shared,create)487 :DependNode(file, name, parent, nodeType, shared, create) {} 488 489 }; 490 }//namespace MayaDM 491 #endif//__MayaDM_IMAGEPLANE_H__ 492