|
Blender
V2.93
|
#include <COM_PlaneDistortCommonOperation.h>
Inherits blender::compositor::NodeOperation.
Inherited by blender::compositor::PlaneCornerPinWarpImageOperation, and blender::compositor::PlaneTrackWarpImageOperation.
Classes | |
| struct | MotionSample |
Public Member Functions | |
| PlaneDistortWarpImageOperation () | |
| void | calculateCorners (const float corners[4][2], bool normalized, int sample) |
| void | initExecution () override |
| void | deinitExecution () override |
| void | executePixelSampled (float output[4], float x, float y, PixelSampler sampler) override |
| calculate a single pixel More... | |
| bool | determineDependingAreaOfInterest (rcti *input, ReadBufferOperation *readOperation, rcti *output) override |
| void | setMotionBlurSamples (int samples) |
| void | setMotionBlurShutter (float shutter) |
Public Member Functions inherited from blender::compositor::NodeOperation | |
| virtual | ~NodeOperation () |
| void | set_name (const std::string name) |
| const std::string | get_name () const |
| void | set_id (const int id) |
| const int | get_id () const |
| const NodeOperationFlags | get_flags () const |
| unsigned int | getNumberOfInputSockets () const |
| unsigned int | getNumberOfOutputSockets () const |
| NodeOperationOutput * | getOutputSocket (unsigned int index=0) |
| NodeOperationInput * | getInputSocket (unsigned int index) |
| virtual void | determineResolution (unsigned int resolution[2], unsigned int preferredResolution[2]) |
| determine the resolution of this node More... | |
| virtual bool | isOutputOperation (bool) const |
| isOutputOperation determines whether this operation is an output of the ExecutionSystem during rendering or editing. More... | |
| void | setbNodeTree (const bNodeTree *tree) |
| virtual void | executeRegion (rcti *, unsigned int) |
| when a chunk is executed by a CPUDevice, this method is called More... | |
| virtual void | executeOpenCLRegion (OpenCLDevice *, rcti *, unsigned int, MemoryBuffer **, MemoryBuffer *) |
| when a chunk is executed by an OpenCLDevice, this method is called More... | |
| virtual void | executeOpenCL (OpenCLDevice *, MemoryBuffer *, cl_mem, MemoryBuffer **, std::list< cl_mem > *, std::list< cl_kernel > *) |
| custom handle to add new tasks to the OpenCL command queue in order to execute a chunk on an GPUDevice. More... | |
| void | setResolution (unsigned int resolution[2]) |
| set the resolution More... | |
| virtual bool | isActiveViewerOutput () const |
| is this operation the active viewer output user can select an ViewerNode to be active (the result of this node will be drawn on the backdrop). More... | |
| void | setResolutionInputSocketIndex (unsigned int index) |
| set the index of the input socket that will determine the resolution of this operation More... | |
| virtual eCompositorPriority | getRenderPriority () const |
| get the render priority of this node. More... | |
| bool | isBraked () const |
| void | updateDraw () |
| unsigned int | getWidth () const |
| unsigned int | getHeight () const |
| void | readSampled (float result[4], float x, float y, PixelSampler sampler) |
| void | readFiltered (float result[4], float x, float y, float dx[2], float dy[2]) |
| void | read (float result[4], int x, int y, void *chunkData) |
| virtual void * | initializeTileData (rcti *) |
| virtual void | deinitializeTileData (rcti *, void *) |
| virtual MemoryBuffer * | getInputMemoryBuffer (MemoryBuffer **) |
| virtual std::unique_ptr< MetaData > | getMetaData () |
Protected Attributes | |
| SocketReader * | m_pixelReader |
| MotionSample | m_samples [PLANE_DISTORT_MAX_SAMPLES] |
| int | m_motion_blur_samples |
| float | m_motion_blur_shutter |
Protected Attributes inherited from blender::compositor::NodeOperation | |
| unsigned int | m_width |
| unsigned int | m_height |
| NodeOperationFlags | flags |
Additional Inherited Members | |
Protected Member Functions inherited from blender::compositor::NodeOperation | |
| NodeOperation () | |
| void | addInputSocket (DataType datatype, ResizeMode resize_mode=ResizeMode::Center) |
| void | addOutputSocket (DataType datatype) |
| void | setWidth (unsigned int width) |
| void | setHeight (unsigned int height) |
| SocketReader * | getInputSocketReader (unsigned int inputSocketindex) |
| NodeOperation * | getInputOperation (unsigned int inputSocketindex) |
| void | deinitMutex () |
| void | initMutex () |
| void | lockMutex () |
| void | unlockMutex () |
| void | setComplex (bool complex) |
| set whether this operation is complex More... | |
| virtual void | executePixel (float output[4], int x, int y, void *) |
| calculate a single pixel More... | |
| virtual void | executePixelFiltered (float[4], float, float, float[2], float[2]) |
| calculate a single pixel using an EWA filter More... | |
Definition at line 35 of file COM_PlaneDistortCommonOperation.h.
| blender::compositor::PlaneDistortWarpImageOperation::PlaneDistortWarpImageOperation | ( | ) |
Definition at line 49 of file COM_PlaneDistortCommonOperation.cc.
References blender::compositor::NodeOperation::addInputSocket(), blender::compositor::NodeOperation::addOutputSocket(), blender::compositor::Color, blender::compositor::NodeOperationFlags::complex, blender::compositor::NodeOperation::flags, m_motion_blur_samples, m_motion_blur_shutter, m_pixelReader, and blender::compositor::None.
| void blender::compositor::PlaneDistortWarpImageOperation::calculateCorners | ( | const float | corners[4][2], |
| bool | normalized, | ||
| int | sample | ||
| ) |
Definition at line 59 of file COM_PlaneDistortCommonOperation.cc.
References BKE_tracking_homography_between_two_quads(), BLI_assert, float(), blender::compositor::PlaneDistortWarpImageOperation::MotionSample::frameSpaceCorners, blender::compositor::NodeOperation::getHeight(), blender::compositor::NodeOperation::getWidth(), height, m_motion_blur_samples, m_pixelReader, m_samples, blender::compositor::PlaneDistortWarpImageOperation::MotionSample::perspectiveMatrix, blender::compositor::sample(), and width.
Referenced by blender::compositor::PlaneTrackWarpImageOperation::initExecution(), and blender::compositor::PlaneCornerPinWarpImageOperation::initializeTileData().
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 90 of file COM_PlaneDistortCommonOperation.cc.
References m_pixelReader.
Referenced by blender::compositor::PlaneCornerPinWarpImageOperation::deinitExecution().
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 118 of file COM_PlaneDistortCommonOperation.cc.
References blender::compositor::NodeOperation::determineDependingAreaOfInterest(), INIT_MINMAX2, m_motion_blur_samples, m_samples, max, min, minmax_v2v2_v2(), output, blender::compositor::PlaneDistortWarpImageOperation::MotionSample::perspectiveMatrix, blender::compositor::sample(), blender::compositor::warpCoord(), rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by blender::compositor::PlaneCornerPinWarpImageOperation::determineDependingAreaOfInterest().
|
overridevirtual |
calculate a single pixel
| result | is a float[4] array to store the result |
| x | the x-coordinate of the pixel to calculate in image space |
| y | the y-coordinate of the pixel to calculate in image space |
| inputBuffers | chunks that can be read by their ReadBufferOperation. |
Reimplemented from blender::compositor::NodeOperation.
Definition at line 95 of file COM_PlaneDistortCommonOperation.cc.
References add_v4_v4(), m_motion_blur_samples, m_pixelReader, m_samples, mul_v4_fl(), output, blender::compositor::NodeOperation::readFiltered(), blender::compositor::sample(), blender::compositor::warpCoord(), x, y, and zero_v4().
|
overridevirtual |
Reimplemented from blender::compositor::NodeOperation.
Reimplemented in blender::compositor::PlaneTrackWarpImageOperation.
Definition at line 85 of file COM_PlaneDistortCommonOperation.cc.
References blender::compositor::NodeOperation::getInputSocketReader(), and m_pixelReader.
Referenced by blender::compositor::PlaneCornerPinWarpImageOperation::initExecution(), and blender::compositor::PlaneTrackWarpImageOperation::initExecution().
|
inline |
Definition at line 60 of file COM_PlaneDistortCommonOperation.h.
References BLI_assert, and PLANE_DISTORT_MAX_SAMPLES.
Referenced by blender::compositor::PlaneTrackDeformNode::convertToOperations().
|
inline |
Definition at line 65 of file COM_PlaneDistortCommonOperation.h.
Referenced by blender::compositor::PlaneTrackDeformNode::convertToOperations().
|
protected |
Definition at line 43 of file COM_PlaneDistortCommonOperation.h.
Referenced by calculateCorners(), determineDependingAreaOfInterest(), executePixelSampled(), blender::compositor::PlaneTrackWarpImageOperation::initExecution(), and PlaneDistortWarpImageOperation().
|
protected |
Definition at line 44 of file COM_PlaneDistortCommonOperation.h.
Referenced by blender::compositor::PlaneTrackWarpImageOperation::initExecution(), and PlaneDistortWarpImageOperation().
|
protected |
Definition at line 41 of file COM_PlaneDistortCommonOperation.h.
Referenced by calculateCorners(), deinitExecution(), executePixelSampled(), initExecution(), and PlaneDistortWarpImageOperation().
|
protected |
Definition at line 42 of file COM_PlaneDistortCommonOperation.h.
Referenced by calculateCorners(), determineDependingAreaOfInterest(), and executePixelSampled().