bool OutputEffectInstance::ifInfiniteclipRectToProjectDefault(RectD* rod) const { if ( !getApp()->getProject() ) { return false; } /*If the rod is infinite clip it to the project's default*/ Format projectDefault; getRenderFormat(&projectDefault); // BE CAREFUL: // std::numeric_limits<int>::infinity() does not exist (check std::numeric_limits<int>::has_infinity) // an int can not be equal to (or compared to) std::numeric_limits<double>::infinity() bool isRodProjectFormat = false; if (rod->left() <= kOfxFlagInfiniteMin) { rod->set_left( projectDefault.left() ); isRodProjectFormat = true; } if (rod->bottom() <= kOfxFlagInfiniteMin) { rod->set_bottom( projectDefault.bottom() ); isRodProjectFormat = true; } if (rod->right() >= kOfxFlagInfiniteMax) { rod->set_right( projectDefault.right() ); isRodProjectFormat = true; } if (rod->top() >= kOfxFlagInfiniteMax) { rod->set_top( projectDefault.top() ); isRodProjectFormat = true; } return isRodProjectFormat; }
bool TigerAutoPolygonSprite::initWithFile(const std::string &file, bool usePolygon) { if (usePolygon) { auto image = new Image(); image->initWithImageFile(file); if (image->getRenderFormat() == Texture2D::PixelFormat::RGBA8888) { auto polygon_info = AutoPolygon::generatePolygon(file); if (!Sprite::initWithPolygon(polygon_info)) { return false; } } else { if (!Sprite::initWithFile(file)) { return false; } } CC_SAFE_DELETE(image); } else { if (!Sprite::initWithFile(file)) { return false; } } return true; }