// \89æ\91\9c\82Ì\8d\82\82³\82Æ\88Ü\93x\82Ì\94ä\97¦\82Ì\83X\83P\81[\83\8a\83\93\83O\82Ì\8aî\8f\80\82Æ\82È\82é\81B
const double mapHeight = m_mapImage.height();
m_ratioForImageCoordFromWorldCoord = mapHeight / k_worldHeight;
- m_scaledMapSize = m_mapImage.size();
return true;
}
void GVOWorldMap::setViewSize( const SIZE& viewSize )
{
m_viewSize = viewSize;
- m_viewCenter.x = m_viewSize.cx / 2;
- m_viewCenter.y = m_viewSize.cy / 2;
}
}
if ( m_viewScale != scale ) {
m_viewScale = scale;
- updateScaleCache();
return true;
}
return false;
}
if ( m_viewScale != scale ) {
m_viewScale = scale;
- updateScaleCache();
return true;
}
return false;
::SelectObject( hdcMem, m_mapImage.bitmapHandle() );
- const SIZE mapSize = m_scaledMapSize;
+ const SIZE mapSize = scaledMapSize();
const POINT mapTopLeft = mapOriginInView();
int xDrawOrigin, yDrawOrigin;
}
-void GVOWorldMap::updateScaleCache()
-{
- m_scaledMapSize.cx = LONG( m_mapImage.width() * m_viewScale );
- m_scaledMapSize.cy = LONG( m_mapImage.height() * m_viewScale );
-}
-
-
POINT GVOWorldMap::mapOriginInView()
{
- const POINT viewCenter = m_viewCenter;
- const SIZE mapSize = m_scaledMapSize;
+ const POINT viewCenter = viewCenterPoint();
+ const SIZE mapSize = scaledMapSize();
const POINT worldPosInView = drawOffsetFromWorldCoord( m_focusPointInWorldCoord );
POINT mapTopLeft = {
bool m_linkRoute; //!<@brief \8dq\98H\82ð\8cq\82°\82Ä\95`\89æ\82·\82é\83t\83\89\83O
bool m_shipVectorLineEnabled; //!<@brief \90j\98H\95`\89æ\83t\83\89\83O
- // \8cv\8eZ\83L\83\83\83b\83V\83\85
- SIZE m_scaledMapSize;
- POINT m_viewCenter;
public:
GVOWorldMap() :
m_viewScale( 1.0 ),
m_ratioForImageCoordFromWorldCoord(),
- m_scaledMapSize(),
- m_viewCenter(),
m_positionUpdated(),
m_linkRoute(),
m_shipVectorLineEnabled( true )
m_shipVectorLineEnabled = visible;
}
private:
- void updateScaleCache();
+ inline POINT viewCenterPoint() const
+ {
+ POINT p = {
+ m_viewSize.cx / 2,
+ m_viewSize.cy / 2
+ };
+ return p;
+ }
+ inline SIZE scaledMapSize() const
+ {
+ SIZE size = {
+ LONG( m_mapImage.width() * m_viewScale ),
+ LONG( m_mapImage.height() * m_viewScale )
+ };
+ return size;
+ }
POINT mapOriginInView();
POINT imageCoordFromWorldCoord( const POINT& worldCoord ) const;
POINT drawOffsetFromWorldCoord( const POINT&worldCoord ) const;