本文整理汇总了C++中ImageIface类的典型用法代码示例。如果您正苦于以下问题:C++ ImageIface类的具体用法?C++ ImageIface怎么用?C++ ImageIface使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ImageIface类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: prepareFinal
void FilmGrainTool::prepareFinal()
{
FilmGrainContainer prm = d->settingsView->settings();
ImageIface iface;
setFilter(new FilmGrainFilter(iface.original(), this, prm));
}
示例2: prepareFinal
void WhiteBalanceTool::prepareFinal()
{
WBContainer settings = d->settingsView->settings();
ImageIface iface;
setFilter(new WBFilter(iface.original(), this, settings));
}
示例3: slotValuesChanged
void ContentAwareResizeTool::prepareEffect()
{
if (d->prevW != d->wInput->value() || d->prevH != d->hInput->value() ||
d->prevWP != d->wpInput->value() || d->prevHP != d->hpInput->value())
{
slotValuesChanged();
}
disableSettings();
ImageIface* iface = d->previewWidget->imageIface();
int w = iface->previewWidth();
int h = iface->previewHeight();
DImg imTemp = iface->getOriginalImg()->smoothScale(w, h, Qt::KeepAspectRatio);
int new_w = (int)(w*d->wpInput->value()/100.0);
int new_h = (int)(h*d->hpInput->value()/100.0);
if (d->mixedRescaleInput->value()<100.0) // mixed rescale
{
double stdRescaleP = (100.0 - d->mixedRescaleInput->value()) / 100.0;
int diff_w = (int)(stdRescaleP * (w - new_w));
int diff_h = (int)(stdRescaleP * (h - new_h));
imTemp.resize(imTemp.width() - diff_w, imTemp.height() - diff_h);
}
QImage mask;
if (d->weightMaskBox->isChecked())
{
mask = d->previewWidget->getMask();
}
contentAwareResizeCore(&imTemp, new_w, new_h, mask);
}
示例4: slotValuesChanged
void ResizeTool::prepareEffect()
{
if (d->prevW != d->wInput->value() || d->prevH != d->hInput->value() ||
d->prevWP != d->wpInput->value() || d->prevHP != d->hpInput->value())
{
slotValuesChanged();
}
ImageIface* iface = d->previewWidget->imageIface();
int w = iface->previewWidth();
int h = iface->previewHeight();
DImg imTemp = iface->getOriginalImg()->smoothScale(w, h, Qt::KeepAspectRatio);
int new_w = (int)(w*d->wpInput->value()/100.0);
int new_h = (int)(h*d->hpInput->value()/100.0);
if (d->useGreycstorationBox->isChecked())
{
setFilter(new GreycstorationFilter(&imTemp,
d->settingsWidget->settings(),
GreycstorationFilter::Resize,
new_w, new_h,
QImage(),
this));
}
else
{
// See B.K.O #152192: CImg resize() sound like defective or unadapted
// to resize image without good quality.
DImgBuiltinFilter resize(DImgBuiltinFilter::Resize, QSize(new_w, new_h));
setFilter(resize.createThreadedFilter(&imTemp, this));
}
}
示例5: finalRendering
void InsertTextTool::finalRendering()
{
qApp->setOverrideCursor( Qt::WaitCursor );
ImageIface iface;
DImg dest = d->previewWidget->makeInsertText();
FilterAction action(QLatin1String("digikam:insertTextTool"), 2);
action.setDisplayableName(i18n("Insert Text Tool"));
action.addParameter(QLatin1String("text"), d->textEdit->toPlainText());
action.addParameter(QLatin1String("textRotationIndex"), d->textRotation->currentIndex());
action.addParameter(QLatin1String("textFont"), d->textFont.toString());
action.addParameter(QLatin1String("colorR"), d->fontColorButton->color().red());
action.addParameter(QLatin1String("colorG"), d->fontColorButton->color().green());
action.addParameter(QLatin1String("colorB"), d->fontColorButton->color().blue());
action.addParameter(QLatin1String("colorA"), d->fontColorButton->color().alpha());
action.addParameter(QLatin1String("textOpacity"), d->textOpacity->value());
action.addParameter(QLatin1String("borderText"), d->borderText->isChecked());
action.addParameter(QLatin1String("transparentText"), d->transparentText->isChecked());
iface.setOriginal(i18n("Insert Text"), action, dest);
qApp->restoreOverrideCursor();
}
示例6: filter
void AbstractDImageHistoryTest::applyFilters4()
{
ImageIface iface;
BlurFilter filter(iface.original(), this);
filter.startFilterDirectly();
iface.setOriginal("", filter.filterAction(), filter.getTargetImage());
}
示例7: prepareFinal
void CharcoalTool::prepareFinal()
{
double pencil = (double)d->pencilInput->value()/10.0;
double smooth = (double)d->smoothInput->value();
ImageIface iface;
setFilter(new CharcoalFilter(iface.original(), this, pencil, smooth));
}
示例8: putPreviewData
void RainDropTool::putPreviewData()
{
ImageIface* iface = d->previewWidget->imageIface();
DImg imDest = filter()->getTargetImage().smoothScale(iface->previewWidth(), iface->previewHeight());
iface->putPreviewImage(imDest.bits());
d->previewWidget->updatePreview();
}
示例9: prepareFinal
void LensAutoFixTool::prepareFinal()
{
// Settings information must be handle before to disable settings view.
LensFunContainer settings = d->cameraSelector->settings();
d->settingsView->assignFilterSettings(settings);
ImageIface iface;
setFilter(new LensFunFilter(iface.original(), this, settings));
}
示例10: prepareFinal
void BCGTool::prepareFinal()
{
BCGContainer settings = d->settingsView->settings();
ImageIface iface;
setFilter(new BCGFilter(iface.original(), this, settings));
}
示例11: prepareFinal
void RestorationTool::prepareFinal()
{
ImageIface iface;
DImg originalImage = iface.original()->copy();
setFilter(new GreycstorationFilter(&originalImage,
d->settingsWidget->settings(), GreycstorationFilter::Restore,
0, 0, QImage(), this));
}
示例12: prepareFinal
void LensDistortionTool::prepareFinal()
{
double m = d->mainInput->value();
double e = d->edgeInput->value();
double r = d->rescaleInput->value();
double b = d->brightenInput->value();
ImageIface iface;
setFilter(new LensDistortionFilter(iface.original(), this, m, e, r, b, 0, 0));
}
示例13:
void AbstractDImageHistoryTest::applyFilters1()
{
ImageIface iface;
BCGFilter filter1(iface.original(), this);
filter1.startFilterDirectly();
iface.setOriginal(i18n("Brightness / Contrast / Gamma"), filter1.filterAction(), filter1.getTargetImage());
CurvesFilter filter2(iface.original(), this);
filter2.startFilterDirectly();
iface.setOriginal("Curves", filter2.filterAction(), filter2.getTargetImage());
}
示例14: preparePreview
void WhiteBalanceTool::preparePreview()
{
ImageIface iface;
DImg* const img = iface.original();
WBContainer settings = d->settingsView->settings();
WBFilter::findChanelsMax(img, settings.maxr, settings.maxg, settings.maxb);
d->gboxSettings->histogramBox()->histogram()->stopHistogramComputation();
DImg preview = d->previewWidget->getOriginalRegionImage(true);
setFilter(new WBFilter(&preview, this, settings));
}
示例15: prepareFinal
void ShearTool::prepareFinal()
{
float hAngle = d->mainHAngleInput->value() + d->fineHAngleInput->value();
float vAngle = d->mainVAngleInput->value() + d->fineVAngleInput->value();
bool antialiasing = d->antialiasInput->isChecked();
QColor background = Qt::black;
ImageIface iface;
int orgW = iface.originalSize().width();
int orgH = iface.originalSize().height();
DImg* const orgImage = iface.original();
setFilter(new ShearFilter(orgImage, this, hAngle, vAngle, antialiasing, background, orgW, orgH));
}