本文整理汇总了C++中ImageLoader::width方法的典型用法代码示例。如果您正苦于以下问题:C++ ImageLoader::width方法的具体用法?C++ ImageLoader::width怎么用?C++ ImageLoader::width使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ImageLoader
的用法示例。
在下文中一共展示了ImageLoader::width方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: draw
bool OverlayEffect::draw(ImageOf<PixelRgb>& src2, ImageOf<PixelRgb>& dest2) {
if (needRead) {
readEffectData();
needRead = false;
}
dest2 = src2;
if (img.isValid()) {
for (int x=0; x<dest2.width()&&x<img.width(); x++) {
for (int y=0; y<dest2.height()&&y<img.height(); y++) {
PixelBgra v = img.pixel(x,y);
if (v.a==0) {
dest2(x,y) = PixelRgb(v.r,v.g,v.b);
} else if (v.a>=127) {
// do nothing, leave copied value
} else {
PixelRgb& o = dest2(x,y);
float f = v.a/127.0;
if (f>1) f = 1;
int r = (int)((1-f)*v.r+f*o.r);
int g = (int)((1-f)*v.g+f*o.g);
int b = (int)((1-f)*v.b+f*o.b);
dest2(x,y) = PixelRgb(r,g,b);
}
}
}
}
return true;
}
示例2: readEffectData
void OverlayEffect::readEffectData() {
if (workOverlay!="") {
if (workOverlay!=readOverlay) {
img.load(workOverlay.c_str());
printf("overlay size %dx%d\n", img.width(), img.height());
readOverlay = workOverlay;
}
}
}
示例3: skinPath
Assets::Texture* Md2Parser::loadTexture(const Md2Skin& skin) {
const Path skinPath(String(skin.name));
MappedFile::Ptr file = m_fs.openFile(skinPath);
Color avgColor;
const ImageLoader image(ImageLoader::PCX, file->begin(), file->end());
const Buffer<unsigned char>& indices = image.indices();
Buffer<unsigned char> rgbImage(indices.size() * 3);
m_palette.indexedToRgb(indices, indices.size(), rgbImage, avgColor);
return new Assets::Texture(skin.name, image.width(), image.height(), avgColor, rgbImage);
}