A table of horizontal scan-line segments - used for rasterising Paths.  
 More...
#include <juce_EdgeTable.h>
A table of horizontal scan-line segments - used for rasterising Paths. 
- See also
- Path, Graphics 
◆ EdgeTable() [1/6]
Creates an edge table containing a path. 
A table is created with a fixed vertical range, and only sections of the path which lie within this range will be added to the table.
- Parameters
- 
  
    | clipLimits | only the region of the path that lies within this area will be added |  | pathToAdd | the path to add to the table |  | transform | a transform to apply to the path being added |  
 
 
 
◆ EdgeTable() [2/6]
  
  | 
        
          | EdgeTable::EdgeTable | ( | Rectangle< int > | rectangleToAdd | ) |  |  | explicit | 
 
Creates an edge table containing a rectangle. 
 
 
◆ EdgeTable() [3/6]
  
  | 
        
          | EdgeTable::EdgeTable | ( | Rectangle< float > | rectangleToAdd | ) |  |  | explicit | 
 
Creates an edge table containing a rectangle. 
 
 
◆ EdgeTable() [4/6]
  
  | 
        
          | EdgeTable::EdgeTable | ( | const RectangleList< int > & | rectanglesToAdd | ) |  |  | explicit | 
 
Creates an edge table containing a rectangle list. 
 
 
◆ EdgeTable() [5/6]
  
  | 
        
          | EdgeTable::EdgeTable | ( | const RectangleList< float > & | rectanglesToAdd | ) |  |  | explicit | 
 
Creates an edge table containing a rectangle list. 
 
 
◆ EdgeTable() [6/6]
Creates a copy of another edge table. 
 
 
◆ ~EdgeTable()
      
        
          | EdgeTable::~EdgeTable | ( |  | ) |  | 
      
 
 
◆ operator=()
Copies from another edge table. 
 
 
◆ clipToRectangle()
      
        
          | void EdgeTable::clipToRectangle | ( | Rectangle< int > | r | ) |  | 
      
 
 
◆ excludeRectangle()
      
        
          | void EdgeTable::excludeRectangle | ( | Rectangle< int > | r | ) |  | 
      
 
 
◆ clipToEdgeTable()
      
        
          | void EdgeTable::clipToEdgeTable | ( | const EdgeTable & |  | ) |  | 
      
 
 
◆ clipLineToMask()
      
        
          | void EdgeTable::clipLineToMask | ( | int | x, | 
        
          |  |  | int | y, | 
        
          |  |  | const uint8 * | mask, | 
        
          |  |  | int | maskStride, | 
        
          |  |  | int | numPixels ) | 
      
 
 
◆ isEmpty()
  
  | 
        
          | bool EdgeTable::isEmpty | ( |  | ) |  |  | noexcept | 
 
 
◆ getMaximumBounds()
  
  | 
        
          | const Rectangle< int > & EdgeTable::getMaximumBounds | ( |  | ) | const |  | noexcept | 
 
 
◆ translate()
  
  | 
        
          | void EdgeTable::translate | ( | float | dx, |  
          |  |  | int | dy ) |  | noexcept | 
 
 
◆ multiplyLevels()
      
        
          | void EdgeTable::multiplyLevels | ( | float | factor | ) |  | 
      
 
Scales all the alpha-levels in the table by the given multiplier. 
 
 
◆ optimiseTable()
      
        
          | void EdgeTable::optimiseTable | ( |  | ) |  | 
      
 
Reduces the amount of space the table has allocated. 
This will shrink the table down to use as little memory as possible - useful for read-only tables that get stored and re-used for rendering. 
 
 
◆ iterate()
template<class EdgeTableIterationCallback > 
  
  | 
        
          | void EdgeTable::iterate | ( | EdgeTableIterationCallback & | iterationCallback | ) | const |  | noexcept | 
 
Iterates the lines in the table, for rendering. 
This function will iterate each line in the table, and call a user-defined class to render each pixel or continuous line of pixels that the table contains.
- Parameters
- 
  
    | iterationCallback | this templated class must contain the following methods: (these don't necessarily have to be 'const', but it might help it go faster)inline void setEdgeTableYPos (int y ); inline void handleEdgeTablePixel (int x , int  alphaLevel) const ; inline void handleEdgeTablePixelFull (int x ) const ; inline void handleEdgeTableLine (int x , int  width, int  alphaLevel) const ; inline void handleEdgeTableLineFull (int x , int  width) const ; float x Definition juce_UnityPluginInterface.h:192float float y Definition juce_UnityPluginInterface.h:192 |  
 
References isPositiveAndBelow(), jassert, table, x, and y.
 
 
The documentation for this class was generated from the following file: