This project is a screen saver application that I originally started as a way to pick up C++/MFC. In the years since, I’ve added some features to it like Outlook Calendar and MAPI support for signaling when new mail arrives while the screen saver is active.
|
// CircularSprite.cpp : implementation file
//
#include "stdafx.h"
#include "CircularSprite.h"
#include "Glyph.h"
#include <cmath>
extern double pi;
#define STATIC_TICK -1.0471 //this places the start of the cicle at the top
// CCircularSprite
CCircularSprite::CCircularSprite(const double height, const double width, COLORREF color) : CSprite(color)
{
m_rHeight = height;
m_rWidth = width;
}
CCircularSprite::CCircularSprite(const double height,
const double width,
const CString strText,
COLORREF color,
const CString delimiter):CSprite(strText, color, delimiter)
{
m_rHeight = height;
m_rWidth = width;
m_rSplit = 360.0 / (double)this->GetGlyphCount();
}
CCircularSprite::~CCircularSprite()
{
}
// CCircularSprite member functions
double CCircularSprite::GetTickX()
{
return STATIC_TICK;
}
double CCircularSprite::GetTickY()
{
return STATIC_TICK;
}
int CCircularSprite::CalcX(CGlyph* pGlyph)
{
return (int)(m_rHeight * ::cos( GetTickX() + pGlyph->GetIndex() * m_rSplit * pi / 180.0 ));
}
int CCircularSprite::CalcY(CGlyph* pGlyph)
{
return (int)(m_rWidth * ::sin( GetTickY() + pGlyph->GetIndex() * m_rSplit * pi / 180.0 ));
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
The first computer program I ever wrote was in BASIC on a TRS-80 Model I and it looked something like:
10 PRINT "Don is cool"
20 GOTO 10
It only went downhill from there.
Hey look, I've got a blog