MCPcopy Create free account
hub / github.com/ObEngine/ObEngine / load

Method load

src/Core/Graphics/Sprite.cpp:481–587  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

479 }
480
481 void Sprite::load(vili::node& data)
482 {
483 if (data.contains("path"))
484 {
485 this->loadTexture(data.at("path"));
486 }
487
488 if (data.contains("rect"))
489 {
490 obe::Transform::Referential referentialPos;
491 Transform::UnitVector spritePos(0, 0);
492 Transform::UnitVector spriteSize(1, 1);
493 vili::node& rect = data.at("rect");
494 if (rect.contains("unit"))
495 {
496 this->setWorkingUnit(Transform::stringToUnits(rect.at("unit")));
497 }
498 spritePos.unit = m_unit;
499 spritePos.x = rect.at("x");
500 spritePos.y = rect.at("y");
501 spriteSize.unit = m_unit;
502 spriteSize.x = rect.at("width");
503 spriteSize.y = rect.at("height");
504 spritePos = spritePos.to<Transform::Units::SceneUnits>();
505 spriteSize = spriteSize.to<Transform::Units::SceneUnits>();
506 if (rect.contains("referential"))
507 referentialPos
508 = obe::Transform::Referential::FromString(rect.at("referential"));
509 this->setPosition(spritePos, referentialPos);
510 this->setSize(spriteSize, referentialPos);
511 }
512
513 if (data.contains("rotation"))
514 {
515 this->setRotation(data.at("rotation"));
516 }
517
518 if (data.contains("layer"))
519 {
520 this->setLayer(data.at("layer"));
521 }
522
523 if (data.contains("zdepth"))
524 {
525 this->setZDepth(data.at("zdepth"));
526 }
527
528 if (data.contains("antiAliasing"))
529 {
530 this->setAntiAliasing(data.at("antiAliasing"));
531 }
532
533 if (data.contains("transform"))
534 {
535 std::string spriteXTransformer = "Camera";
536 std::string spriteYTransformer = "Camera";
537 vili::node& transform = data.at("transform");
538 if (transform.contains("x"))

Callers

nothing calls this directly

Calls 15

loadTextureMethod · 0.95
setRotationMethod · 0.95
setLayerMethod · 0.95
setZDepthMethod · 0.95
setAntiAliasingMethod · 0.95
setColorMethod · 0.95
setVisibleMethod · 0.95
stringToUnitsFunction · 0.85
containsMethod · 0.80
setWorkingUnitMethod · 0.80

Tested by

no test coverage detected