LibreOffice Module drawinglayer (master) 1
|
Public Member Functions | |
ZBufferRasterConverter3D (basegfx::BZPixelRaster &rBuffer, const drawinglayer::processor3d::ZBufferProcessor3D &rProcessor) | |
void | setCurrentMaterial (const drawinglayer::attribute::MaterialAttribute3D &rMaterial) |
Private Member Functions | |
void | getTextureCoor (basegfx::B2DPoint &rTarget) const |
void | incrementLineSpanInterpolators (double fStep) |
double | decideColorAndOpacity (basegfx::BColor &rColor) const |
void | setupLineSpanInterpolators (const basegfx::RasterConversionLineEntry3D &rA, const basegfx::RasterConversionLineEntry3D &rB) |
virtual void | processLineSpan (const basegfx::RasterConversionLineEntry3D &rA, const basegfx::RasterConversionLineEntry3D &rB, sal_Int32 nLine, sal_uInt32 nSpanCount) override |
Private Attributes | |
const drawinglayer::processor3d::DefaultProcessor3D & | mrProcessor |
basegfx::BZPixelRaster & | mrBuffer |
basegfx::ip_single | maIntZ |
basegfx::ip_triple | maIntColor |
basegfx::ip_triple | maIntNormal |
basegfx::ip_double | maIntTexture |
basegfx::ip_triple | maIntInvTexture |
const drawinglayer::attribute::MaterialAttribute3D * | mpCurrentMaterial |
bool | mbModifyColor: 1 |
bool | mbUseTex: 1 |
bool | mbHasTexCoor: 1 |
bool | mbHasInvTexCoor: 1 |
bool | mbUseNrm: 1 |
bool | mbUseCol: 1 |
Definition at line 36 of file zbufferprocessor3d.cxx.
|
inline |
Definition at line 251 of file zbufferprocessor3d.cxx.
References rProcessor.
|
inlineprivate |
Definition at line 103 of file zbufferprocessor3d.cxx.
References drawinglayer::processor3d::DefaultProcessor3D::getBColorModifierStack(), drawinglayer::attribute::MaterialAttribute3D::getColor(), drawinglayer::attribute::MaterialAttribute3D::getEmission(), drawinglayer::processor3d::DefaultProcessor3D::getGeoTexSvx(), basegfx::BColorModifierStack::getModifiedColor(), drawinglayer::processor3d::DefaultProcessor3D::getModulate(), drawinglayer::processor3d::DefaultProcessor3D::getSdrLightingAttribute(), drawinglayer::attribute::MaterialAttribute3D::getSpecular(), drawinglayer::attribute::MaterialAttribute3D::getSpecularIntensity(), getTextureCoor(), drawinglayer::processor3d::DefaultProcessor3D::getTransparenceGeoTexSvx(), basegfx::ip_single::getVal(), basegfx::ip_triple::getX(), basegfx::ip_triple::getY(), basegfx::ip_triple::getZ(), maIntColor, maIntNormal, mbModifyColor, mbUseCol, mbUseNrm, mbUseTex, basegfx::fTools::more(), mpCurrentMaterial, mrProcessor, basegfx::BColor::setBlue(), basegfx::BColor::setGreen(), basegfx::BColor::setRed(), and drawinglayer::attribute::SdrLightingAttribute::solveColorModel().
Referenced by processLineSpan().
|
inlineprivate |
Definition at line 60 of file zbufferprocessor3d.cxx.
References basegfx::fTools::equalZero(), basegfx::ip_single::getVal(), basegfx::ip_double::getX(), basegfx::ip_triple::getX(), basegfx::ip_double::getY(), basegfx::ip_triple::getY(), basegfx::ip_triple::getZ(), maIntInvTexture, maIntTexture, mbHasInvTexCoor, mbHasTexCoor, and rTarget.
Referenced by decideColorAndOpacity().
|
inlineprivate |
Definition at line 76 of file zbufferprocessor3d.cxx.
References basegfx::ip_double::increment(), basegfx::ip_single::increment(), basegfx::ip_triple::increment(), maIntColor, maIntInvTexture, maIntNormal, maIntTexture, maIntZ, mbHasInvTexCoor, mbHasTexCoor, mbUseCol, mbUseNrm, and mbUseTex.
Referenced by processLineSpan().
|
overrideprivatevirtual |
Definition at line 269 of file zbufferprocessor3d.cxx.
References basegfx::BColor::clamp(), decideColorAndOpacity(), basegfx::fround(), basegfx::BPixel::getAlpha(), basegfx::BColor::getBlue(), basegfx::BPixel::getBlue(), basegfx::BZPixelRaster::getBPixel(), basegfx::BColor::getGreen(), basegfx::BPixel::getGreen(), basegfx::BZPixelRaster::getHeight(), basegfx::BZPixelRaster::getIndexFromXY(), basegfx::BColor::getRed(), basegfx::BPixel::getRed(), basegfx::ip_single::getVal(), basegfx::BZPixelRaster::getWidth(), basegfx::RasterConversionLineEntry3D::getX(), basegfx::BZPixelRaster::getZ(), incrementLineSpanInterpolators(), maIntZ, o3tl::make_unsigned(), mrBuffer, basegfx::BPixel::setAlpha(), basegfx::BPixel::setBlue(), basegfx::BPixel::setGreen(), basegfx::BPixel::setRed(), and setupLineSpanInterpolators().
|
inline |
Definition at line 263 of file zbufferprocessor3d.cxx.
References mpCurrentMaterial.
|
inlineprivate |
Definition at line 185 of file zbufferprocessor3d.cxx.
References basegfx::BColorModifierStack::count(), drawinglayer::processor3d::DefaultProcessor3D::getBColorModifierStack(), basegfx::RasterConversionLineEntry3D::getColorIndex(), drawinglayer::processor3d::DefaultProcessor3D::getGeoTexSvx(), basegfx::RasterConversionLineEntry3D::getInverseTextureIndex(), drawinglayer::processor3d::DefaultProcessor3D::getModulate(), basegfx::RasterConversionLineEntry3D::getNormalIndex(), drawinglayer::processor3d::DefaultProcessor3D::getSimpleTextureActive(), basegfx::RasterConversionLineEntry3D::getTextureIndex(), drawinglayer::processor3d::DefaultProcessor3D::getTransparenceGeoTexSvx(), basegfx::ip_single::getVal(), basegfx::ip_double::getX(), basegfx::ip_triple::getX(), basegfx::RasterConversionLineEntry3D::getX(), basegfx::ip_double::getY(), basegfx::ip_triple::getY(), basegfx::ip_triple::getZ(), basegfx::RasterConversionLineEntry3D::getZ(), maIntColor, maIntInvTexture, maIntNormal, maIntTexture, maIntZ, mbHasInvTexCoor, mbHasTexCoor, mbModifyColor, mbUseCol, mbUseNrm, mbUseTex, mrProcessor, and SCANLINE_EMPTY_INDEX.
Referenced by processLineSpan().
|
private |
Definition at line 44 of file zbufferprocessor3d.cxx.
Referenced by decideColorAndOpacity(), incrementLineSpanInterpolators(), and setupLineSpanInterpolators().
|
private |
Definition at line 47 of file zbufferprocessor3d.cxx.
Referenced by getTextureCoor(), incrementLineSpanInterpolators(), and setupLineSpanInterpolators().
|
private |
Definition at line 45 of file zbufferprocessor3d.cxx.
Referenced by decideColorAndOpacity(), incrementLineSpanInterpolators(), and setupLineSpanInterpolators().
|
private |
Definition at line 46 of file zbufferprocessor3d.cxx.
Referenced by getTextureCoor(), incrementLineSpanInterpolators(), and setupLineSpanInterpolators().
|
private |
Definition at line 43 of file zbufferprocessor3d.cxx.
Referenced by incrementLineSpanInterpolators(), processLineSpan(), and setupLineSpanInterpolators().
|
private |
Definition at line 56 of file zbufferprocessor3d.cxx.
Referenced by getTextureCoor(), incrementLineSpanInterpolators(), and setupLineSpanInterpolators().
|
private |
Definition at line 55 of file zbufferprocessor3d.cxx.
Referenced by getTextureCoor(), incrementLineSpanInterpolators(), and setupLineSpanInterpolators().
|
private |
Definition at line 53 of file zbufferprocessor3d.cxx.
Referenced by decideColorAndOpacity(), and setupLineSpanInterpolators().
|
private |
Definition at line 58 of file zbufferprocessor3d.cxx.
Referenced by decideColorAndOpacity(), incrementLineSpanInterpolators(), and setupLineSpanInterpolators().
|
private |
Definition at line 57 of file zbufferprocessor3d.cxx.
Referenced by decideColorAndOpacity(), incrementLineSpanInterpolators(), and setupLineSpanInterpolators().
|
private |
Definition at line 54 of file zbufferprocessor3d.cxx.
Referenced by decideColorAndOpacity(), incrementLineSpanInterpolators(), and setupLineSpanInterpolators().
|
private |
Definition at line 50 of file zbufferprocessor3d.cxx.
Referenced by decideColorAndOpacity(), and setCurrentMaterial().
|
private |
Definition at line 40 of file zbufferprocessor3d.cxx.
Referenced by processLineSpan().
|
private |
Definition at line 39 of file zbufferprocessor3d.cxx.
Referenced by decideColorAndOpacity(), and setupLineSpanInterpolators().