本文整理汇总了C++中mygui::IntCoord::point方法的典型用法代码示例。如果您正苦于以下问题:C++ IntCoord::point方法的具体用法?C++ IntCoord::point怎么用?C++ IntCoord::point使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mygui::IntCoord
的用法示例。
在下文中一共展示了IntCoord::point方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: loadMouseRelative
void TextureControl::loadMouseRelative()
{
MyGUI::IntPoint viewOffset = mView->getViewOffset();
MyGUI::IntCoord viewCoord = mView->getViewCoord();
MyGUI::IntSize canvasSize = mView->getCanvasSize();
MyGUI::IntPoint mousePoint = MyGUI::InputManager::getInstance().getMousePositionByLayer();
// смещение мыши относительно вью
MyGUI::IntPoint mouseOffset = mousePoint - mView->getAbsolutePosition() - viewCoord.point();
// смещение нужной точки внутри текстуры в пикселях
MyGUI::IntPoint canvasPointOffset((int)(mMouseRelative.left * (float)canvasSize.width), (int)(mMouseRelative.top * (float)canvasSize.height));
// смещение вью в пикселях
MyGUI::IntPoint canvasOffset = canvasPointOffset - mouseOffset;
mView->setViewOffset(MyGUI::IntPoint(-canvasOffset.left, -canvasOffset.top));
}
示例2: animate
size_t WobbleNodeAnimator::animate(
bool _update,
size_t _quad_count,
MyGUI::VectorQuadData& _data,
float _time,
MyGUI::IVertexBuffer* _buffer,
MyGUI::ITexture* _texture,
const MyGUI::RenderTargetInfo& _info,
const MyGUI::IntCoord& _coord,
bool& _isAnimate
)
{
if (mDestroy)
{
return _quad_count;
}
// проверяем смещения виджета
if (mOldCoord.empty())
{
mOldCoord = _coord;
}
else if (mOldCoord.size() != _coord.size() && mOldCoord.point() != _coord.point())
{
mInertiaPoint.set(0.5, 0.5);
mInertiaMode = false;
addInertia(MyGUI::FloatPoint(_coord.left-mOldCoord.left, _coord.top-mOldCoord.top));
}
else if (mOldCoord.size() != _coord.size())
{
mInertiaMode = true;
addInertia(MyGUI::FloatPoint(_coord.width - mOldCoord.width, _coord.height-mOldCoord.height));
}
else if (mOldCoord.point() != _coord.point())
{
const MyGUI::IntPoint& point = MyGUI::InputManager::getInstance().getMousePosition();
mInertiaPoint = MyGUI::FloatPoint((float)(point.left - _coord.left) / (float)_coord.width , (float)(point.top - _coord.top) / (float)_coord.height);
mInertiaMode = false;
addInertia(MyGUI::FloatPoint(_coord.left-mOldCoord.left, _coord.top-mOldCoord.top));
}
mOldCoord = _coord;
addTime(_time);
bool anim_update = squaredLength(mDragOffset) >= 0.3f;
if (!anim_update)
{
return _quad_count;
}
_isAnimate = true;
_quad_count = tesselation(
_quad_count,
_data,
_texture,
_info,
_coord);
buildQuadVertex(_data);
return _quad_count;
}