Package icyllis.arc3d.core

# Class NoPixelsDevice

java.lang.Object
icyllis.arc3d.core.RefCnt
icyllis.arc3d.core.Device
icyllis.arc3d.core.NoPixelsDevice

All Implemented Interfaces:
  `RefCounted`

public class NoPixelsDevice extends Device
The NoPixelsDevice draws nothing, but tracks device's clip. Used for deferred rendering.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `NoPixelsDevice(int left, int top, int right, int bottom)`
  `NoPixelsDevice(Rect2ic bounds)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `clipRect(Rect2fc rect, int clipOp, boolean doAA)`
  `void`
  `drawArc(float cx, float cy, float radius, float startAngle, float sweepAngle, int cap, float width, Paint paint)`
  `void`
  `drawChord(float cx, float cy, float radius, float startAngle, float sweepAngle, Paint paint)`
  `void`
  `drawCircle(float cx, float cy, float radius, Paint paint)`
  `void`
  `drawImageRect(@RawPtr Image image, Rect2fc src, Rect2fc dst, SamplingOptions sampling, Paint paint, int constraint)`
  `void`
  `drawLine(float x0, float y0, float x1, float y1, int cap, float width, Paint paint)`
  `void`
  `drawPaint(Paint paint)`
  `void`
  `drawPie(float cx, float cy, float radius, float startAngle, float sweepAngle, Paint paint)`
  `void`
  `drawPoints(int mode, float[] pts, int offset, int count, Paint paint)`
  `void`
  `drawRect(Rect2fc r, Paint paint)`
  `void`
  `drawRoundRect(RoundRect rr, Paint paint)`
  `void`
  `drawVertices(Vertices vertices, @SharedPtr Blender blender, Paint paint)`
  `protected Rect2ic`
  `getClipBounds()`
  `void`
  `getClipBounds(Rect2i bounds)`
  Returns the bounding box of the current clip, in this device's coordinate space.
  `boolean`
  `isClipAA()`
  `boolean`
  `isClipEmpty()`
  `boolean`
  `isClipRect()`
  `boolean`
  `isClipWideOpen()`
  `protected void`
  `onDrawGlyphRunList(Canvas canvas, GlyphRunList glyphRunList, Paint paint)`
  `void`
  `popClipStack()`
  `void`
  `pushClipStack()`
  `void`
  `replaceClip(Rect2ic globalRect)`
  `final void`
  `resetForNextPicture(int left, int top, int right, int bottom)`

  ### Methods inherited from class icyllis.arc3d.core.Device

  `createDevice, deallocate, drawGlyphRunList, getBounds, getBounds, getDeviceToGlobal, getGlobalBounds, getGlobalToDevice, getHeight, getImageInfo, getLocalToDevice, getLocalToDevice33, getRecordingContext, getRelativeTransform, getWidth, isPixelAlignedToGlobal, makeSurface, setDeviceCoordinateSystem, setGlobalCTM, setLocalToDevice`

  ### Methods inherited from class icyllis.arc3d.core.RefCnt

  `create, create, getRefCnt, getRefCntAcquire, getRefCntVolatile, move, move, ref, unique, unref`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### NoPixelsDevice

    public NoPixelsDevice(@Nonnull Rect2ic bounds)

  - ### NoPixelsDevice

    public NoPixelsDevice(int left, int top, int right, int bottom)

- ## Method Details

  - ### resetForNextPicture

    public final void resetForNextPicture(int left, int top, int right, int bottom)

  - ### pushClipStack

    public void pushClipStack()
    Specified by:
      `pushClipStack` in class `Device`

  - ### popClipStack

    public void popClipStack()
    Specified by:
      `popClipStack` in class `Device`

  - ### clipRect

    public void clipRect(Rect2fc rect, int clipOp, boolean doAA)
    Specified by:
      `clipRect` in class `Device`

  - ### replaceClip

    public void replaceClip(Rect2ic globalRect)

  - ### isClipAA

    public boolean isClipAA()
    Specified by:
      `isClipAA` in class `Device`

  - ### isClipEmpty

    public boolean isClipEmpty()
    Specified by:
      `isClipEmpty` in class `Device`

  - ### isClipRect

    public boolean isClipRect()
    Specified by:
      `isClipRect` in class `Device`

  - ### isClipWideOpen

    public boolean isClipWideOpen()
    Specified by:
      `isClipWideOpen` in class `Device`

  - ### getClipBounds

    public void getClipBounds(@Nonnull Rect2i bounds)
    Description copied from class: `Device`
    Returns the bounding box of the current clip, in this device's coordinate space. No pixels outside these bounds will be touched by draws unless the clip is further modified (at which point this will return the updated bounds).
    Specified by:
      `getClipBounds` in class `Device`

  - ### getClipBounds

    protected Rect2ic getClipBounds()
    Specified by:
      `getClipBounds` in class `Device`

  - ### drawPaint

    public void drawPaint(Paint paint)
    Specified by:
      `drawPaint` in class `Device`

  - ### drawPoints

    public void drawPoints(int mode, float[] pts, int offset, int count, Paint paint)
    Specified by:
      `drawPoints` in class `Device`

  - ### drawLine

    public void drawLine(float x0, float y0, float x1, float y1, int cap, float width, Paint paint)
    Specified by:
      `drawLine` in class `Device`

  - ### drawRect

    public void drawRect(Rect2fc r, Paint paint)
    Specified by:
      `drawRect` in class `Device`

  - ### drawRoundRect

    public void drawRoundRect(RoundRect rr, Paint paint)
    Specified by:
      `drawRoundRect` in class `Device`

  - ### drawCircle

    public void drawCircle(float cx, float cy, float radius, Paint paint)
    Specified by:
      `drawCircle` in class `Device`

  - ### drawArc

    public void drawArc(float cx, float cy, float radius, float startAngle, float sweepAngle, int cap, float width, Paint paint)
    Specified by:
      `drawArc` in class `Device`

  - ### drawPie

    public void drawPie(float cx, float cy, float radius, float startAngle, float sweepAngle, Paint paint)
    Specified by:
      `drawPie` in class `Device`

  - ### drawChord

    public void drawChord(float cx, float cy, float radius, float startAngle, float sweepAngle, Paint paint)
    Specified by:
      `drawChord` in class `Device`

  - ### drawImageRect

    public void drawImageRect(@RawPtr @RawPtr Image image, Rect2fc src, Rect2fc dst, SamplingOptions sampling, Paint paint, int constraint)
    Specified by:
      `drawImageRect` in class `Device`

  - ### onDrawGlyphRunList

    protected void onDrawGlyphRunList(Canvas canvas, GlyphRunList glyphRunList, Paint paint)
    Specified by:
      `onDrawGlyphRunList` in class `Device`

  - ### drawVertices

    public void drawVertices(Vertices vertices, @SharedPtr @SharedPtr Blender blender, Paint paint)
    Specified by:
      `drawVertices` in class `Device`