87 lines
1.4 KiB
C++
87 lines
1.4 KiB
C++
#include "..\..\eshape.h"
|
|
|
|
e2d::Shape::Shape()
|
|
: m_nStyle(ShapeStyle::SOLID)
|
|
, m_nFillColor(Color::WHITE)
|
|
, m_nLineColor(Color::BLUE)
|
|
, m_fStrokeWidth(1)
|
|
{
|
|
}
|
|
|
|
e2d::Shape::~Shape()
|
|
{
|
|
}
|
|
|
|
void e2d::Shape::onRender()
|
|
{
|
|
switch (m_nStyle)
|
|
{
|
|
case ShapeStyle::FILL:
|
|
{
|
|
Renderer::getSolidColorBrush()->SetColor(D2D1::ColorF(m_nFillColor, m_fDisplayOpacity));
|
|
this->_renderFill();
|
|
|
|
Renderer::getSolidColorBrush()->SetColor(D2D1::ColorF(m_nLineColor, m_fDisplayOpacity));
|
|
this->_renderLine();
|
|
break;
|
|
}
|
|
|
|
case ShapeStyle::ROUND:
|
|
{
|
|
Renderer::getSolidColorBrush()->SetColor(D2D1::ColorF(m_nLineColor, m_fDisplayOpacity));
|
|
this->_renderLine();
|
|
break;
|
|
}
|
|
|
|
case ShapeStyle::SOLID:
|
|
{
|
|
Renderer::getSolidColorBrush()->SetColor(D2D1::ColorF(m_nFillColor, m_fDisplayOpacity));
|
|
this->_renderFill();
|
|
break;
|
|
}
|
|
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
UINT32 e2d::Shape::getFillColor() const
|
|
{
|
|
return m_nFillColor;
|
|
}
|
|
|
|
UINT32 e2d::Shape::getLineColor() const
|
|
{
|
|
return m_nLineColor;
|
|
}
|
|
|
|
double e2d::Shape::getStrokeWidth() const
|
|
{
|
|
return m_fStrokeWidth;
|
|
}
|
|
|
|
int e2d::Shape::getStyle() const
|
|
{
|
|
return m_nStyle;
|
|
}
|
|
|
|
void e2d::Shape::setFillColor(UINT32 fillColor)
|
|
{
|
|
m_nFillColor = fillColor;
|
|
}
|
|
|
|
void e2d::Shape::setLineColor(UINT32 lineColor)
|
|
{
|
|
m_nLineColor = lineColor;
|
|
}
|
|
|
|
void e2d::Shape::setStrokeWidth(double strokeWidth)
|
|
{
|
|
m_fStrokeWidth = static_cast<float>(strokeWidth);
|
|
}
|
|
|
|
void e2d::Shape::setStyle(int style)
|
|
{
|
|
m_nStyle = style;
|
|
}
|