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_POINTLIGHT_H__ 11 #define __MayaDM_POINTLIGHT_H__ 12 #include "MayaDMTypes.h" 13 #include "MayaDMConnectables.h" 14 #include "MayaDMNonExtendedLightShapeNode.h" 15 namespace MayaDM 16 { 17 class PointLight : public NonExtendedLightShapeNode 18 { 19 public: 20 struct MentalRayControls{ 21 bool miExportMrLight; 22 bool emitPhotons; 23 float3 energy; 24 float photonIntensity; 25 float exponent; 26 int causticPhotons; 27 int globIllPhotons; 28 bool shadowMap; 29 int smapResolution; 30 short smapSamples; 31 float smapSoftness; 32 float smapBias; 33 string smapFilename; 34 bool smapLightName; 35 bool smapSceneName; 36 bool smapFrameExt; 37 bool smapDetail; 38 short smapDetailSamples; 39 float smapDetailAccuracy; 40 bool smapDetailAlpha; 41 bool areaLight; 42 unsigned int areaType; 43 float3 areaNormal; 44 float3 areaEdge; 45 float areaRadius; 46 short2 areaSampling; 47 short areaLowLevel; 48 short2 areaLowSampling; 49 bool areaVisible; writeMentalRayControls50 void write(FILE* file) const 51 { 52 fprintf(file,"%i ", miExportMrLight); 53 fprintf(file,"%i ", emitPhotons); 54 energy.write(file); 55 fprintf(file, " "); 56 fprintf(file,"%f ", photonIntensity); 57 fprintf(file,"%f ", exponent); 58 fprintf(file,"%i ", causticPhotons); 59 fprintf(file,"%i ", globIllPhotons); 60 fprintf(file,"%i ", shadowMap); 61 fprintf(file,"%i ", smapResolution); 62 fprintf(file,"%i ", smapSamples); 63 fprintf(file,"%f ", smapSoftness); 64 fprintf(file,"%f ", smapBias); 65 smapFilename.write(file); 66 fprintf(file, " "); 67 fprintf(file,"%i ", smapLightName); 68 fprintf(file,"%i ", smapSceneName); 69 fprintf(file,"%i ", smapFrameExt); 70 fprintf(file,"%i ", smapDetail); 71 fprintf(file,"%i ", smapDetailSamples); 72 fprintf(file,"%f ", smapDetailAccuracy); 73 fprintf(file,"%i ", smapDetailAlpha); 74 fprintf(file,"%i ", areaLight); 75 fprintf(file,"%i ", areaType); 76 areaNormal.write(file); 77 fprintf(file, " "); 78 areaEdge.write(file); 79 fprintf(file, " "); 80 fprintf(file,"%f ", areaRadius); 81 areaSampling.write(file); 82 fprintf(file, " "); 83 fprintf(file,"%i ", areaLowLevel); 84 areaLowSampling.write(file); 85 fprintf(file, " "); 86 fprintf(file,"%i ", areaVisible); 87 } 88 }; 89 public: 90 PointLight()91 PointLight():NonExtendedLightShapeNode(){} 92 PointLight(FILE* file,const std::string& name,const std::string& parent="",bool shared=false,bool create=true) 93 :NonExtendedLightShapeNode(file, name, parent, "pointLight", shared, create){} ~PointLight()94 virtual ~PointLight(){} 95 setFogRadius(float fr)96 void setFogRadius(float fr) 97 { 98 if(fr == 1.0) return; 99 fprintf(mFile,"\tsetAttr \".fr\" %f;\n", fr); 100 } setObjectType(char ot)101 void setObjectType(char ot) 102 { 103 if(ot == 1) return; 104 fprintf(mFile,"\tsetAttr \".ot\" %;\n", ot); 105 } setFogType(unsigned int ft)106 void setFogType(unsigned int ft) 107 { 108 if(ft == 0) return; 109 fprintf(mFile,"\tsetAttr \".ft\" %i;\n", ft); 110 } setPointWorld(const float3 & pw)111 void setPointWorld(const float3& pw) 112 { 113 if(pw == float3(1.0f,1.0f,1.0f)) return; 114 fprintf(mFile,"\tsetAttr \".pw\" -type \"float3\" "); 115 pw.write(mFile); 116 fprintf(mFile,";\n"); 117 } setPointWorldX(float tx)118 void setPointWorldX(float tx) 119 { 120 if(tx == 0.0) return; 121 fprintf(mFile,"\tsetAttr \".pw.tx\" %f;\n", tx); 122 } setPointWorldY(float ty)123 void setPointWorldY(float ty) 124 { 125 if(ty == 0.0) return; 126 fprintf(mFile,"\tsetAttr \".pw.ty\" %f;\n", ty); 127 } setPointWorldZ(float tz)128 void setPointWorldZ(float tz) 129 { 130 if(tz == 0.0) return; 131 fprintf(mFile,"\tsetAttr \".pw.tz\" %f;\n", tz); 132 } setFarPointWorld(const float3 & fw)133 void setFarPointWorld(const float3& fw) 134 { 135 if(fw == float3(1.0f,1.0f,1.0f)) return; 136 fprintf(mFile,"\tsetAttr \".fw\" -type \"float3\" "); 137 fw.write(mFile); 138 fprintf(mFile,";\n"); 139 } setFarPointWorldX(float fwx)140 void setFarPointWorldX(float fwx) 141 { 142 if(fwx == 0.0) return; 143 fprintf(mFile,"\tsetAttr \".fw.fwx\" %f;\n", fwx); 144 } setFarPointWorldY(float fwy)145 void setFarPointWorldY(float fwy) 146 { 147 if(fwy == 0.0) return; 148 fprintf(mFile,"\tsetAttr \".fw.fwy\" %f;\n", fwy); 149 } setFarPointWorldZ(float fwz)150 void setFarPointWorldZ(float fwz) 151 { 152 if(fwz == 0.0) return; 153 fprintf(mFile,"\tsetAttr \".fw.fwz\" %f;\n", fwz); 154 } setFogIntensity(float fin)155 void setFogIntensity(float fin) 156 { 157 if(fin == 1.0) return; 158 fprintf(mFile,"\tsetAttr \".fin\" %f;\n", fin); 159 } setMentalRayControls(const MentalRayControls & mrc)160 void setMentalRayControls(const MentalRayControls& mrc) 161 { 162 fprintf(mFile,"\tsetAttr \".mrc\" "); 163 mrc.write(mFile); 164 fprintf(mFile,";\n"); 165 } setMiExportMrLight(bool milt)166 void setMiExportMrLight(bool milt) 167 { 168 if(milt == false) return; 169 fprintf(mFile,"\tsetAttr \".mrc.milt\" %i;\n", milt); 170 } setEmitPhotons(bool phot)171 void setEmitPhotons(bool phot) 172 { 173 if(phot == false) return; 174 fprintf(mFile,"\tsetAttr \".mrc.phot\" %i;\n", phot); 175 } setEnergy(const float3 & eng)176 void setEnergy(const float3& eng) 177 { 178 fprintf(mFile,"\tsetAttr \".mrc.eng\" -type \"float3\" "); 179 eng.write(mFile); 180 fprintf(mFile,";\n"); 181 } setEnergyR(float engr)182 void setEnergyR(float engr) 183 { 184 if(engr == 8000) return; 185 fprintf(mFile,"\tsetAttr \".mrc.eng.engr\" %f;\n", engr); 186 } setEnergyG(float engg)187 void setEnergyG(float engg) 188 { 189 if(engg == 8000) return; 190 fprintf(mFile,"\tsetAttr \".mrc.eng.engg\" %f;\n", engg); 191 } setEnergyB(float engb)192 void setEnergyB(float engb) 193 { 194 if(engb == 8000) return; 195 fprintf(mFile,"\tsetAttr \".mrc.eng.engb\" %f;\n", engb); 196 } setPhotonIntensity(float phi)197 void setPhotonIntensity(float phi) 198 { 199 if(phi == 1) return; 200 fprintf(mFile,"\tsetAttr \".mrc.phi\" %f;\n", phi); 201 } setExponent(float exp)202 void setExponent(float exp) 203 { 204 if(exp == 2) return; 205 fprintf(mFile,"\tsetAttr \".mrc.exp\" %f;\n", exp); 206 } setCausticPhotons(int cph)207 void setCausticPhotons(int cph) 208 { 209 if(cph == 10000) return; 210 fprintf(mFile,"\tsetAttr \".mrc.cph\" %i;\n", cph); 211 } setGlobIllPhotons(int gph)212 void setGlobIllPhotons(int gph) 213 { 214 if(gph == 10000) return; 215 fprintf(mFile,"\tsetAttr \".mrc.gph\" %i;\n", gph); 216 } setShadowMap(bool usm)217 void setShadowMap(bool usm) 218 { 219 if(usm == false) return; 220 fprintf(mFile,"\tsetAttr \".mrc.usm\" %i;\n", usm); 221 } setSmapResolution(int smr)222 void setSmapResolution(int smr) 223 { 224 if(smr == 256) return; 225 fprintf(mFile,"\tsetAttr \".mrc.smr\" %i;\n", smr); 226 } setSmapSamples(short smsa)227 void setSmapSamples(short smsa) 228 { 229 if(smsa == 1) return; 230 fprintf(mFile,"\tsetAttr \".mrc.smsa\" %i;\n", smsa); 231 } setSmapSoftness(float smso)232 void setSmapSoftness(float smso) 233 { 234 if(smso == 0) return; 235 fprintf(mFile,"\tsetAttr \".mrc.smso\" %f;\n", smso); 236 } setSmapBias(float smb)237 void setSmapBias(float smb) 238 { 239 if(smb == 0) return; 240 fprintf(mFile,"\tsetAttr \".mrc.smb\" %f;\n", smb); 241 } setSmapFilename(const string & smf)242 void setSmapFilename(const string& smf) 243 { 244 if(smf == "NULL") return; 245 fprintf(mFile,"\tsetAttr \".mrc.smf\" -type \"string\" "); 246 smf.write(mFile); 247 fprintf(mFile,";\n"); 248 } setSmapLightName(bool smln)249 void setSmapLightName(bool smln) 250 { 251 if(smln == 0) return; 252 fprintf(mFile,"\tsetAttr \".mrc.smln\" %i;\n", smln); 253 } setSmapSceneName(bool smsn)254 void setSmapSceneName(bool smsn) 255 { 256 if(smsn == 0) return; 257 fprintf(mFile,"\tsetAttr \".mrc.smsn\" %i;\n", smsn); 258 } setSmapFrameExt(bool smfe)259 void setSmapFrameExt(bool smfe) 260 { 261 if(smfe == 0) return; 262 fprintf(mFile,"\tsetAttr \".mrc.smfe\" %i;\n", smfe); 263 } setSmapDetail(bool smd)264 void setSmapDetail(bool smd) 265 { 266 if(smd == 0) return; 267 fprintf(mFile,"\tsetAttr \".mrc.smd\" %i;\n", smd); 268 } setSmapDetailSamples(short sds)269 void setSmapDetailSamples(short sds) 270 { 271 if(sds == 0) return; 272 fprintf(mFile,"\tsetAttr \".mrc.sds\" %i;\n", sds); 273 } setSmapDetailAccuracy(float sdac)274 void setSmapDetailAccuracy(float sdac) 275 { 276 if(sdac == 0) return; 277 fprintf(mFile,"\tsetAttr \".mrc.sdac\" %f;\n", sdac); 278 } setSmapDetailAlpha(bool sdal)279 void setSmapDetailAlpha(bool sdal) 280 { 281 if(sdal == 0) return; 282 fprintf(mFile,"\tsetAttr \".mrc.sdal\" %i;\n", sdal); 283 } setAreaLight(bool algt)284 void setAreaLight(bool algt) 285 { 286 if(algt == false) return; 287 fprintf(mFile,"\tsetAttr \".mrc.algt\" %i;\n", algt); 288 } setAreaType(unsigned int atyp)289 void setAreaType(unsigned int atyp) 290 { 291 if(atyp == 0) return; 292 fprintf(mFile,"\tsetAttr \".mrc.atyp\" %i;\n", atyp); 293 } setAreaNormal(const float3 & ano)294 void setAreaNormal(const float3& ano) 295 { 296 fprintf(mFile,"\tsetAttr \".mrc.ano\" -type \"float3\" "); 297 ano.write(mFile); 298 fprintf(mFile,";\n"); 299 } setAreaNormalX(float anox)300 void setAreaNormalX(float anox) 301 { 302 if(anox == 0) return; 303 fprintf(mFile,"\tsetAttr \".mrc.ano.anox\" %f;\n", anox); 304 } setAreaNormalY(float anoy)305 void setAreaNormalY(float anoy) 306 { 307 if(anoy == 2) return; 308 fprintf(mFile,"\tsetAttr \".mrc.ano.anoy\" %f;\n", anoy); 309 } setAreaNormalZ(float anoz)310 void setAreaNormalZ(float anoz) 311 { 312 if(anoz == 0) return; 313 fprintf(mFile,"\tsetAttr \".mrc.ano.anoz\" %f;\n", anoz); 314 } setAreaEdge(const float3 & aed)315 void setAreaEdge(const float3& aed) 316 { 317 fprintf(mFile,"\tsetAttr \".mrc.aed\" -type \"float3\" "); 318 aed.write(mFile); 319 fprintf(mFile,";\n"); 320 } setAreaEdgeX(float aedx)321 void setAreaEdgeX(float aedx) 322 { 323 if(aedx == 2) return; 324 fprintf(mFile,"\tsetAttr \".mrc.aed.aedx\" %f;\n", aedx); 325 } setAreaEdgeY(float aedy)326 void setAreaEdgeY(float aedy) 327 { 328 if(aedy == 0) return; 329 fprintf(mFile,"\tsetAttr \".mrc.aed.aedy\" %f;\n", aedy); 330 } setAreaEdgeZ(float aedz)331 void setAreaEdgeZ(float aedz) 332 { 333 if(aedz == 0) return; 334 fprintf(mFile,"\tsetAttr \".mrc.aed.aedz\" %f;\n", aedz); 335 } setAreaRadius(float arad)336 void setAreaRadius(float arad) 337 { 338 if(arad == 2) return; 339 fprintf(mFile,"\tsetAttr \".mrc.arad\" %f;\n", arad); 340 } setAreaSampling(const short2 & asa)341 void setAreaSampling(const short2& asa) 342 { 343 fprintf(mFile,"\tsetAttr \".mrc.asa\" -type \"short2\" "); 344 asa.write(mFile); 345 fprintf(mFile,";\n"); 346 } setAreaSamplingU(short asau)347 void setAreaSamplingU(short asau) 348 { 349 if(asau == 3) return; 350 fprintf(mFile,"\tsetAttr \".mrc.asa.asau\" %i;\n", asau); 351 } setAreaSamplingV(short asav)352 void setAreaSamplingV(short asav) 353 { 354 if(asav == 3) return; 355 fprintf(mFile,"\tsetAttr \".mrc.asa.asav\" %i;\n", asav); 356 } setAreaLowLevel(short alev)357 void setAreaLowLevel(short alev) 358 { 359 if(alev == 0) return; 360 fprintf(mFile,"\tsetAttr \".mrc.alev\" %i;\n", alev); 361 } setAreaLowSampling(const short2 & alo)362 void setAreaLowSampling(const short2& alo) 363 { 364 fprintf(mFile,"\tsetAttr \".mrc.alo\" -type \"short2\" "); 365 alo.write(mFile); 366 fprintf(mFile,";\n"); 367 } setAreaLowSamplingU(short alou)368 void setAreaLowSamplingU(short alou) 369 { 370 if(alou == 2) return; 371 fprintf(mFile,"\tsetAttr \".mrc.alo.alou\" %i;\n", alou); 372 } setAreaLowSamplingV(short alov)373 void setAreaLowSamplingV(short alov) 374 { 375 if(alov == 2) return; 376 fprintf(mFile,"\tsetAttr \".mrc.alo.alov\" %i;\n", alov); 377 } setAreaVisible(bool avis)378 void setAreaVisible(bool avis) 379 { 380 if(avis == false) return; 381 fprintf(mFile,"\tsetAttr \".mrc.avis\" %i;\n", avis); 382 } getFogGeometry()383 void getFogGeometry()const 384 { 385 fprintf(mFile,"\"%s.fg\"",mName.c_str()); 386 } getFogRadius()387 void getFogRadius()const 388 { 389 fprintf(mFile,"\"%s.fr\"",mName.c_str()); 390 } getLightGlow()391 void getLightGlow()const 392 { 393 fprintf(mFile,"\"%s.lg\"",mName.c_str()); 394 } getObjectType()395 void getObjectType()const 396 { 397 fprintf(mFile,"\"%s.ot\"",mName.c_str()); 398 } getFogType()399 void getFogType()const 400 { 401 fprintf(mFile,"\"%s.ft\"",mName.c_str()); 402 } getPointWorld()403 void getPointWorld()const 404 { 405 fprintf(mFile,"\"%s.pw\"",mName.c_str()); 406 } getPointWorldX()407 void getPointWorldX()const 408 { 409 fprintf(mFile,"\"%s.pw.tx\"",mName.c_str()); 410 } getPointWorldY()411 void getPointWorldY()const 412 { 413 fprintf(mFile,"\"%s.pw.ty\"",mName.c_str()); 414 } getPointWorldZ()415 void getPointWorldZ()const 416 { 417 fprintf(mFile,"\"%s.pw.tz\"",mName.c_str()); 418 } getFarPointWorld()419 void getFarPointWorld()const 420 { 421 fprintf(mFile,"\"%s.fw\"",mName.c_str()); 422 } getFarPointWorldX()423 void getFarPointWorldX()const 424 { 425 fprintf(mFile,"\"%s.fw.fwx\"",mName.c_str()); 426 } getFarPointWorldY()427 void getFarPointWorldY()const 428 { 429 fprintf(mFile,"\"%s.fw.fwy\"",mName.c_str()); 430 } getFarPointWorldZ()431 void getFarPointWorldZ()const 432 { 433 fprintf(mFile,"\"%s.fw.fwz\"",mName.c_str()); 434 } getFogIntensity()435 void getFogIntensity()const 436 { 437 fprintf(mFile,"\"%s.fin\"",mName.c_str()); 438 } getMentalRayControls()439 void getMentalRayControls()const 440 { 441 fprintf(mFile,"\"%s.mrc\"",mName.c_str()); 442 } getMiExportMrLight()443 void getMiExportMrLight()const 444 { 445 fprintf(mFile,"\"%s.mrc.milt\"",mName.c_str()); 446 } getMiLightShader()447 void getMiLightShader()const 448 { 449 fprintf(mFile,"\"%s.mrc.mils\"",mName.c_str()); 450 } getMiPhotonEmitter()451 void getMiPhotonEmitter()const 452 { 453 fprintf(mFile,"\"%s.mrc.mipe\"",mName.c_str()); 454 } getEmitPhotons()455 void getEmitPhotons()const 456 { 457 fprintf(mFile,"\"%s.mrc.phot\"",mName.c_str()); 458 } getEnergy()459 void getEnergy()const 460 { 461 fprintf(mFile,"\"%s.mrc.eng\"",mName.c_str()); 462 } getEnergyR()463 void getEnergyR()const 464 { 465 fprintf(mFile,"\"%s.mrc.eng.engr\"",mName.c_str()); 466 } getEnergyG()467 void getEnergyG()const 468 { 469 fprintf(mFile,"\"%s.mrc.eng.engg\"",mName.c_str()); 470 } getEnergyB()471 void getEnergyB()const 472 { 473 fprintf(mFile,"\"%s.mrc.eng.engb\"",mName.c_str()); 474 } getPhotonIntensity()475 void getPhotonIntensity()const 476 { 477 fprintf(mFile,"\"%s.mrc.phi\"",mName.c_str()); 478 } getExponent()479 void getExponent()const 480 { 481 fprintf(mFile,"\"%s.mrc.exp\"",mName.c_str()); 482 } getCausticPhotons()483 void getCausticPhotons()const 484 { 485 fprintf(mFile,"\"%s.mrc.cph\"",mName.c_str()); 486 } getGlobIllPhotons()487 void getGlobIllPhotons()const 488 { 489 fprintf(mFile,"\"%s.mrc.gph\"",mName.c_str()); 490 } getShadowMap()491 void getShadowMap()const 492 { 493 fprintf(mFile,"\"%s.mrc.usm\"",mName.c_str()); 494 } getSmapResolution()495 void getSmapResolution()const 496 { 497 fprintf(mFile,"\"%s.mrc.smr\"",mName.c_str()); 498 } getSmapSamples()499 void getSmapSamples()const 500 { 501 fprintf(mFile,"\"%s.mrc.smsa\"",mName.c_str()); 502 } getSmapSoftness()503 void getSmapSoftness()const 504 { 505 fprintf(mFile,"\"%s.mrc.smso\"",mName.c_str()); 506 } getSmapBias()507 void getSmapBias()const 508 { 509 fprintf(mFile,"\"%s.mrc.smb\"",mName.c_str()); 510 } getSmapCamera()511 void getSmapCamera()const 512 { 513 fprintf(mFile,"\"%s.mrc.smc\"",mName.c_str()); 514 } getSmapFilename()515 void getSmapFilename()const 516 { 517 fprintf(mFile,"\"%s.mrc.smf\"",mName.c_str()); 518 } getSmapLightName()519 void getSmapLightName()const 520 { 521 fprintf(mFile,"\"%s.mrc.smln\"",mName.c_str()); 522 } getSmapSceneName()523 void getSmapSceneName()const 524 { 525 fprintf(mFile,"\"%s.mrc.smsn\"",mName.c_str()); 526 } getSmapFrameExt()527 void getSmapFrameExt()const 528 { 529 fprintf(mFile,"\"%s.mrc.smfe\"",mName.c_str()); 530 } getSmapDetail()531 void getSmapDetail()const 532 { 533 fprintf(mFile,"\"%s.mrc.smd\"",mName.c_str()); 534 } getSmapDetailSamples()535 void getSmapDetailSamples()const 536 { 537 fprintf(mFile,"\"%s.mrc.sds\"",mName.c_str()); 538 } getSmapDetailAccuracy()539 void getSmapDetailAccuracy()const 540 { 541 fprintf(mFile,"\"%s.mrc.sdac\"",mName.c_str()); 542 } getSmapDetailAlpha()543 void getSmapDetailAlpha()const 544 { 545 fprintf(mFile,"\"%s.mrc.sdal\"",mName.c_str()); 546 } getAreaLight()547 void getAreaLight()const 548 { 549 fprintf(mFile,"\"%s.mrc.algt\"",mName.c_str()); 550 } getAreaType()551 void getAreaType()const 552 { 553 fprintf(mFile,"\"%s.mrc.atyp\"",mName.c_str()); 554 } getAreaNormal()555 void getAreaNormal()const 556 { 557 fprintf(mFile,"\"%s.mrc.ano\"",mName.c_str()); 558 } getAreaNormalX()559 void getAreaNormalX()const 560 { 561 fprintf(mFile,"\"%s.mrc.ano.anox\"",mName.c_str()); 562 } getAreaNormalY()563 void getAreaNormalY()const 564 { 565 fprintf(mFile,"\"%s.mrc.ano.anoy\"",mName.c_str()); 566 } getAreaNormalZ()567 void getAreaNormalZ()const 568 { 569 fprintf(mFile,"\"%s.mrc.ano.anoz\"",mName.c_str()); 570 } getAreaEdge()571 void getAreaEdge()const 572 { 573 fprintf(mFile,"\"%s.mrc.aed\"",mName.c_str()); 574 } getAreaEdgeX()575 void getAreaEdgeX()const 576 { 577 fprintf(mFile,"\"%s.mrc.aed.aedx\"",mName.c_str()); 578 } getAreaEdgeY()579 void getAreaEdgeY()const 580 { 581 fprintf(mFile,"\"%s.mrc.aed.aedy\"",mName.c_str()); 582 } getAreaEdgeZ()583 void getAreaEdgeZ()const 584 { 585 fprintf(mFile,"\"%s.mrc.aed.aedz\"",mName.c_str()); 586 } getAreaRadius()587 void getAreaRadius()const 588 { 589 fprintf(mFile,"\"%s.mrc.arad\"",mName.c_str()); 590 } getAreaSampling()591 void getAreaSampling()const 592 { 593 fprintf(mFile,"\"%s.mrc.asa\"",mName.c_str()); 594 } getAreaSamplingU()595 void getAreaSamplingU()const 596 { 597 fprintf(mFile,"\"%s.mrc.asa.asau\"",mName.c_str()); 598 } getAreaSamplingV()599 void getAreaSamplingV()const 600 { 601 fprintf(mFile,"\"%s.mrc.asa.asav\"",mName.c_str()); 602 } getAreaLowLevel()603 void getAreaLowLevel()const 604 { 605 fprintf(mFile,"\"%s.mrc.alev\"",mName.c_str()); 606 } getAreaLowSampling()607 void getAreaLowSampling()const 608 { 609 fprintf(mFile,"\"%s.mrc.alo\"",mName.c_str()); 610 } getAreaLowSamplingU()611 void getAreaLowSamplingU()const 612 { 613 fprintf(mFile,"\"%s.mrc.alo.alou\"",mName.c_str()); 614 } getAreaLowSamplingV()615 void getAreaLowSamplingV()const 616 { 617 fprintf(mFile,"\"%s.mrc.alo.alov\"",mName.c_str()); 618 } getAreaVisible()619 void getAreaVisible()const 620 { 621 fprintf(mFile,"\"%s.mrc.avis\"",mName.c_str()); 622 } getMiLightProfile()623 void getMiLightProfile()const 624 { 625 fprintf(mFile,"\"%s.mrc.mlp\"",mName.c_str()); 626 } 627 protected: 628 PointLight(FILE* file,const std::string& name,const std::string& parent,const std::string& nodeType,bool shared=false,bool create=true) NonExtendedLightShapeNode(file,name,parent,nodeType,shared,create)629 :NonExtendedLightShapeNode(file, name, parent, nodeType, shared, create) {} 630 631 }; 632 }//namespace MayaDM 633 #endif//__MayaDM_POINTLIGHT_H__ 634