Computer Assited Medical Intervention Tool Kit
version 4.1
|
#include "qtcanvas.h"
#include <QtGui/QApplication>
#include <QtGui/QBitmap>
#include <QtGui/QDesktopWidget>
#include <QtGui/QImage>
#include <QtGui/QPainter>
#include <QtCore/QTimer>
#include <QtCore/qhash.h>
#include <QtCore/qset.h>
#include <QtCore/qalgorithms.h>
#include <QtGui/qevent.h>
#include <QtGui/qpainterpath.h>
#include <stdlib.h>
Classes | |
struct | _EdgeTableEntry |
struct | _ScanLineList |
struct | _ScanLineListBlock |
struct | BRESINFO |
struct | DDXPointRec |
struct | EdgeTable |
class | QPolygonalProcessor |
class | QtCanvasChunk |
class | QtCanvasClusterizer |
class | QtCanvasData |
class | QtCanvasItemExtra |
class | QtCanvasItemLess |
class | QtCanvasPolygonScanner |
class | QtCanvasViewData |
class | QtCanvasWidget |
class | QtPolygonScanner |
Macros | |
#define | BRESINCRPGON(d, minval, m, m1, incr1, incr2) |
#define | BRESINCRPGONSTRUCT(bres) BRESINCRPGON(bres.d, bres.minor, bres.m, bres.m1, bres.incr1, bres.incr2) |
#define | BRESINITPGON(dy, x1, x2, xStart, d, m, m1, incr1, incr2) |
#define | BRESINITPGONSTRUCT(dmaj, min1, min2, bres) |
#define | EVALUATEEDGEEVENODD(pAET, pPrevAET, y) |
#define | EVALUATEEDGEWINDING(pAET, pPrevAET, y, fixWAET) |
#define | MAXINT 0x7fffffff |
#define | MININT -MAXINT |
#define | NUMPTSTOBUFFER 200 |
#define | SLLSPERBLOCK 25 |
Typedefs | |
typedef struct DDXPointRec * | DDXPointPtr |
typedef struct _EdgeTableEntry | EdgeTableEntry |
typedef struct _ScanLineList | ScanLineList |
typedef struct _ScanLineListBlock | ScanLineListBlock |
Functions | |
static bool | collision_double_dispatch (const QtCanvasSprite *s1, const QtCanvasPolygonalItem *p1, const QtCanvasRectangle *r1, const QtCanvasEllipse *e1, const QtCanvasText *t1, const QtCanvasSprite *s2, const QtCanvasPolygonalItem *p2, const QtCanvasRectangle *r2, const QtCanvasEllipse *e2, const QtCanvasText *t2) |
static const QBrush & | defaultPolygonBrush () |
static const QPen & | defaultPolygonPen () |
static int | gcd (int a, int b) |
static void | include (QRect &r, const QRect &rect) |
static void | micomputeWAET (EdgeTableEntry *AET) |
static bool | miCreateETandAET (int count, DDXPointPtr pts, EdgeTable *ET, EdgeTableEntry *AET, EdgeTableEntry *pETEs, ScanLineListBlock *pSLLBlock) |
static void | miFreeStorage (ScanLineListBlock *pSLLBlock) |
static bool | miInsertEdgeInET (EdgeTable *ET, EdgeTableEntry *ETE, int scanline, ScanLineListBlock **SLLBlock, int *iSLLBlock) |
static int | miInsertionSort (EdgeTableEntry *AET) |
static void | miloadAET (EdgeTableEntry *AET, EdgeTableEntry *ETEs) |
bool | qt_testCollision (const QtCanvasSprite *s1, const QtCanvasSprite *s2) |
static int | scm (int a, int b) |
#define BRESINCRPGON | ( | d, | |
minval, | |||
m, | |||
m1, | |||
incr1, | |||
incr2 | |||
) |
#define BRESINCRPGONSTRUCT | ( | bres | ) | BRESINCRPGON(bres.d, bres.minor, bres.m, bres.m1, bres.incr1, bres.incr2) |
#define BRESINITPGON | ( | dy, | |
x1, | |||
x2, | |||
xStart, | |||
d, | |||
m, | |||
m1, | |||
incr1, | |||
incr2 | |||
) |
#define BRESINITPGONSTRUCT | ( | dmaj, | |
min1, | |||
min2, | |||
bres | |||
) |
Referenced by miCreateETandAET().
#define EVALUATEEDGEEVENODD | ( | pAET, | |
pPrevAET, | |||
y | |||
) |
Referenced by miInsertionSort().
#define EVALUATEEDGEWINDING | ( | pAET, | |
pPrevAET, | |||
y, | |||
fixWAET | |||
) |
Referenced by miInsertionSort().
#define MAXINT 0x7fffffff |
Referenced by miCreateETandAET().
#define MININT -MAXINT |
Referenced by miCreateETandAET().
#define NUMPTSTOBUFFER 200 |
Referenced by miInsertionSort().
#define SLLSPERBLOCK 25 |
Referenced by miInsertEdgeInET().
typedef struct DDXPointRec * DDXPointPtr |
typedef struct _EdgeTableEntry EdgeTableEntry |
typedef struct _ScanLineList ScanLineList |
typedef struct _ScanLineListBlock ScanLineListBlock |
|
static |
References QtCanvas::addItemToChunk(), QtCanvasItem::addToChunks(), QtCanvasSprite::addToChunks(), QtCanvasEllipse::angleLength(), QtCanvasPolygonalItem::areaPointsAdvanced(), QtCanvasSprite::bottomEdge(), QtCanvasItem::boundingRect(), QtCanvasSprite::boundingRect(), QtCanvasItem::boundingRectAdvanced(), QtCanvasItem::canvas(), QtCanvasItem::changeChunks(), QtCanvasItem::chunks(), QtCanvas::chunkSize(), QtCanvasItem::collidesWith(), QtCanvasSprite::collidesWith(), QtCanvasPolygonalItem::collidesWith(), QtCanvasRectangle::collidesWith(), QtCanvasEllipse::collidesWith(), QtCanvasText::collidesWith(), QtCanvasItem::collisions(), QtCanvas::collisions(), QtCanvasSprite::draw(), QtCanvasSprite::height(), QtCanvasEllipse::height(), QtCanvasSprite::imageAdvanced(), QtCanvasPixmap::init(), QtCanvasPixmapArray::isValid(), QtCanvasItem::isVisible(), QtCanvasSprite::leftEdge(), QtCanvasPixmapArray::operator!(), qt_testCollision(), QtCanvasPixmap::QtCanvasPixmap(), QtCanvasPixmapArray::QtCanvasPixmapArray(), QtCanvasPixmapArray::readCollisionMasks(), QtCanvasPixmapArray::readPixmaps(), QtCanvasItem::removeFromChunks(), QtCanvasSprite::removeFromChunks(), QtCanvas::removeItemFromChunk(), QtCanvasPixmapArray::reset(), QtCanvasSprite::rightEdge(), QtCanvas::setChangedChunk(), QtCanvasPixmapArray::setImage(), QtCanvasPolygonalItem::setPen(), QtCanvasItem::show(), QtCanvasSprite::topEdge(), QtCanvasItem::val, QtCanvasSprite::width(), QtCanvasEllipse::width(), QtCanvasItem::x(), QtCanvasItem::xVelocity(), QtCanvasItem::y(), QtCanvasItem::yVelocity(), QtCanvasPixmap::~QtCanvasPixmap(), and QtCanvasPixmapArray::~QtCanvasPixmapArray().
|
static |
|
static |
Referenced by defaultPolygonBrush().
|
static |
Referenced by scm().
|
static |
|
static |
References _EdgeTableEntry::ClockWise, _EdgeTableEntry::next, and _EdgeTableEntry::nextWETE.
Referenced by miInsertionSort().
|
static |
References _EdgeTableEntry::back, _EdgeTableEntry::bres, BRESINITPGONSTRUCT, _EdgeTableEntry::ClockWise, MAXINT, miFreeStorage(), miInsertEdgeInET(), MININT, BRESINFO::minor, _EdgeTableEntry::next, _ScanLineList::next, _ScanLineListBlock::next, _EdgeTableEntry::nextWETE, EdgeTable::scanlines, DDXPointRec::x, DDXPointRec::y, _EdgeTableEntry::ymax, EdgeTable::ymax, and EdgeTable::ymin.
Referenced by miInsertionSort().
|
static |
References _ScanLineListBlock::next.
Referenced by miCreateETandAET(), and miInsertionSort().
|
static |
|
static |
References _EdgeTableEntry::back, _EdgeTableEntry::bres, _ScanLineList::edgelist, EVALUATEEDGEEVENODD, EVALUATEEDGEWINDING, micomputeWAET(), miCreateETandAET(), miFreeStorage(), miloadAET(), BRESINFO::minor, _EdgeTableEntry::next, _ScanLineList::next, _ScanLineListBlock::next, _EdgeTableEntry::nextWETE, NUMPTSTOBUFFER, QtPolygonScanner::scan(), _ScanLineList::scanline, EdgeTable::scanlines, DDXPointRec::x, DDXPointRec::y, EdgeTable::ymax, and EdgeTable::ymin.
|
static |
References _EdgeTableEntry::back, _EdgeTableEntry::bres, BRESINFO::minor, and _EdgeTableEntry::next.
Referenced by miInsertionSort().
bool qt_testCollision | ( | const QtCanvasSprite * | s1, |
const QtCanvasSprite * | s2 | ||
) |
References QtCanvasItem::boundingRectAdvanced(), QtCanvasPixmap::collision_mask, and QtCanvasSprite::imageAdvanced().
Referenced by collision_double_dispatch().
|
static |
References QtCanvas::addAnimation(), QtCanvas::addItem(), QtCanvas::addItemToChunk(), QtCanvas::addItemToChunkContaining(), QtCanvas::addView(), QtCanvasItem::advance(), QtCanvas::advance(), QtCanvas::allItems(), QtCanvas::backgroundColor(), QtCanvas::backgroundPixmap(), QtCanvasChunk::change(), QtCanvas::changeBounds(), QtCanvas::chunk(), QtCanvas::chunkContaining(), QtCanvasItem::draw(), QtCanvas::drawArea(), QtCanvas::drawBackground(), QtCanvas::drawCanvasArea(), QtCanvas::drawForeground(), QtCanvas::drawViewArea(), gcd(), QtCanvasChunk::hasChanged(), QtCanvas::init(), QtCanvas::QtCanvas(), QtCanvas::removeAnimation(), QtCanvas::removeItem(), QtCanvas::removeItemFromChunk(), QtCanvas::removeItemFromChunkContaining(), QtCanvas::removeView(), QtCanvas::resize(), QtCanvas::retune(), QtCanvas::setAdvancePeriod(), QtCanvas::setAllChanged(), QtCanvas::setBackgroundColor(), QtCanvas::setBackgroundPixmap(), QtCanvas::setChanged(), QtCanvas::setChangedChunk(), QtCanvas::setChangedChunkContaining(), QtCanvas::setTile(), QtCanvas::setTiles(), QtCanvas::setUnchanged(), QtCanvas::setUpdatePeriod(), QtCanvas::update(), QtCanvasView::worldMatrix(), and QtCanvas::~QtCanvas().