当前位置: 首页>>代码示例>>C++>>正文


C++ Vector2D::getX方法代码示例

本文整理汇总了C++中Vector2D::getX方法的典型用法代码示例。如果您正苦于以下问题:C++ Vector2D::getX方法的具体用法?C++ Vector2D::getX怎么用?C++ Vector2D::getX使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Vector2D的用法示例。


在下文中一共展示了Vector2D::getX方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: update

void MenuButton::update(){
    Vector2D<double>* pMousePos = InputHandler::Instance()->getMousePosition();
    
    double zoom = Game::Instance()->getGlobalZoom();

    
    if (pMousePos->getX() < GetParams().getX() * zoom +
        GetParams().getWidth() * zoom &&
        pMousePos->getX() > GetParams().getX() * zoom  &&
        pMousePos->getY() < GetParams().getY()  * zoom +
        GetParams().getHeight() * zoom  &&
        pMousePos->getY() > GetParams().getY() * zoom
        ){
        GetParams().setFrame(MOUSE_OVER);
        
        if (InputHandler::Instance()->getMouseButtonState(LEFT)){
            GetParams().setFrame(MOUSE_CLICKED);
            if (m_bReleased && m_callback){
                m_callback();
                m_bReleased = false;
            }
        } else{
            m_bReleased = true;
        }
    } else {
        GetParams().setFrame(MOUSE_OUT);
    }
    
}
开发者ID:iiechapman,项目名称:Sandman2D,代码行数:29,代码来源:MenuButton.cpp

示例2: update

void Enemy::update() {

	m_velocity.setY(5);
	
	m_currentFrame = (int)((SDL_GetTicks() / 100) % m_numsprites);
	if (isCollision())
	{
		if (m_velocity.getX() <= 0) {
			
			if (flip == SDL_FLIP_NONE) {
				m_velocity.setX(-m_originalVelocity.getX());
				flip = SDL_FLIP_HORIZONTAL;
				m_position.setX(m_position.getX() + 2);
			}
			else {
				m_velocity.setX(m_originalVelocity.getX());
				flip = SDL_FLIP_NONE;
				m_position.setX(m_position.getX() - 2);
			}
		}
		collision = false;
	}

	CollisionObject::update();
}
开发者ID:vpuigcerver,项目名称:BaseCode,代码行数:25,代码来源:Enemy.cpp

示例3: actualizar

void BotonMenu::actualizar()
{
    Vector2D* pMousePos = ManejadorDeEntrada::Instancia()->getMousePosition();

    if(pMousePos->getX() < (posicion.getX() + ancho) && pMousePos->getX() > posicion.getX()
       && pMousePos->getY() < (posicion.getY() + altura) && pMousePos->getY() > posicion.getY())
    {
        if(ManejadorDeEntrada::Instancia()->getMouseButtonState(LEFT) && bLiberado)
        {
            frameActual = CLICKED;

            if(callback != 0)
            {
                callback();
            }

            bLiberado = false;
        }
        else if(!ManejadorDeEntrada::Instancia()->getMouseButtonState(LEFT))
        {
            bLiberado = true;
            frameActual = MOUSE_OVER;
        }
    }
    else
    {
        frameActual = MOUSE_OUT;
    }
}
开发者ID:JairFrancesco,项目名称:PacmanSDL2-C-,代码行数:29,代码来源:BotonMenu.cpp

示例4: fillRegion

void GraphicsBuffer::fillRegion( const Vector2D& ul, const Vector2D& lr, const ALLEGRO_COLOR& color )
{
	ALLEGRO_BITMAP* pOldTarget = GraphicsSystem::switchTargetBitmap( mpBitmap );
	al_draw_filled_rectangle( ul.getX(), ul.getY(), lr.getX(), lr.getY(), color );
	GraphicsSystem::switchTargetBitmap( pOldTarget );

}
开发者ID:JackOfDawn,项目名称:AI,代码行数:7,代码来源:GraphicsBuffer.cpp

示例5: overlaps

bool BoundingBox::overlaps(const Vector2D &startOfLine, const Vector2D &endOfLine) {

  // FIXME: optimize me!
  RectangleGeo rect( Vector2D( box.x, box.y ),
		  Vector2D( box.x + box.w, box.y + box.h ) );
  // FIXME: optimize me!

  bool overlaps = false;

  overlaps = rect.isInside( endOfLine );
  if ( overlaps ) return true;
  overlaps = rect.isInside( startOfLine );
  if ( overlaps ) return true;

  // check some points between the two end points
  Vector2D delta((endOfLine.getX() - startOfLine.getX()) / 4.0,
		 (endOfLine.getY() - startOfLine.getY()) / 4.0);
  Vector2D actPoint = startOfLine + delta;
  int i = 1;
  while (!overlaps && i <= 3 ) {
    overlaps = rect.isInside(actPoint);
    actPoint += delta;
    i++;
  }
  return overlaps;
}
开发者ID:Haryaalcar,项目名称:vcmi-build,代码行数:26,代码来源:boundingBox.cpp

示例6: update

void MenuButton::update()
{
    Vector2D* pMousePos =TheInputHandler::Instance()->getMousePosition();
    if (pMousePos->getX() < (m_position.getX() + m_width)
        && pMousePos->getX() > m_position.getX()
        && pMousePos->getY() < (m_position.getY()) + m_height
        && pMousePos->getY() > m_position.getY()) {
        m_currentFrame = MOUSE_OVER;
        
        if (TheInputHandler::Instance()->getMouseButtonState(LEFT)) {
            //std::cout << "Mouse clicked" << std::endl;
            m_currentFrame = CLICKED;
            m_bReleased = false;
        }
        else if (!TheInputHandler::Instance()->getMouseButtonState(LEFT) && !m_bReleased)
        {
            //std::cout << "Mouse was released." << std::endl;
            m_bReleased = true;
            m_currentFrame = MOUSE_OVER;
            m_callback();
        }
        else if (!TheInputHandler::Instance()->getMouseButtonState(LEFT))
        {
            //std::cout << "Mouse over" << std::endl;
            m_bReleased = true;
            m_currentFrame = MOUSE_OVER;
        }
    }
    else
    {
        m_bReleased = true;
        m_currentFrame = MOUSE_OUT;
    }
}
开发者ID:floriankdrone,项目名称:kdrones-discwars,代码行数:34,代码来源:MenuButton.cpp

示例7: update

void MenuButton::update()
{
    Vector2D* pMousePos = TheInputHandler::Instance()->getMousePosition();
    
	if (pMousePos->getX() < (SDL_RATIO_X(m_position.getX()) + SDL_RATIO_X(m_width)) && pMousePos->getX() > SDL_RATIO_X(m_position.getX())
		&& pMousePos->getY() < (SDL_RATIO_Y(m_position.getY()) + SDL_RATIO_Y(m_height)) && pMousePos->getY() > SDL_RATIO_Y(m_position.getY()))
    {
        if(TheInputHandler::Instance()->getMouseButtonState(LEFT) && m_bReleased)
        {
            m_currentFrame = CLICKED;
            
            if(m_callback != 0)
            {
                m_callback();
            }
            
            m_bReleased = false;
        }
        else if(!TheInputHandler::Instance()->getMouseButtonState(LEFT))
        {
            m_bReleased = true;
            m_currentFrame = MOUSE_OVER;
        }
    }
    else
    {
        m_currentFrame = MOUSE_OUT;
    }
}
开发者ID:ZHANITEST,项目名称:SDLProgramming,代码行数:29,代码来源:MenuButton.cpp

示例8: update

void MenuButton::update()
{
	Vector2D* pMousePos = TheInputHandler::Instance()->getMousePostion();

	if (pMousePos->getX() < (m_postion.getX() + m_width) &&
		pMousePos->getX() >  m_postion.getX() &&
		pMousePos->getY() < (m_postion.getY() + m_height) &&
		pMousePos->getY() >  m_postion.getY())
	{
		m_currentFrame = MOUSEOVER;

		if (TheInputHandler::Instance()->getMouseButtonState(LEFT) == true && m_bReleased)
		{
			m_currentFrame = CLICKED;
			m_callback();
			m_bReleased = false;
		}

		else if (TheInputHandler::Instance()->getMouseButtonState(LEFT) == false)
		{
			m_bReleased = true;
			m_currentFrame = MOUSEOVER;
		}
	}
	else
	{
		m_currentFrame = MOUSEOUT;
	}
}
开发者ID:regimental12,项目名称:CourseWork,代码行数:29,代码来源:MenuButton.cpp

示例9: update

void MenuButton::update()
{
    InputHandler* pIH = InputHandler::Instance();
    Vector2D* pMousePos = pIH->getMousePosition();

    if (pMousePos->getX() >= m_position.getX() &&
            pMousePos->getX() <= m_position.getX() + m_width &&
            pMousePos->getY() >= m_position.getY() &&
            pMousePos->getY() <= m_position.getY() + m_height)
    {
        m_currentFrame = MOUSE_OVER;

        if (pIH->getMouseButtonState(LEFT))
        {
            m_currentFrame = CLICKED;
            if (m_bReleased)
            {
                m_callback();
                m_bReleased = false;
            }
        }
        else
        {
            m_bReleased = true;
        }
    }
    else
    {
        m_currentFrame = MOUSE_OUT;
        m_bReleased = true;
    }
}
开发者ID:ducki13,项目名称:Shooter,代码行数:32,代码来源:MenuButton.cpp

示例10: main

int main(int argc, char** argv) {
    
    srand(time(NULL));    // seed random
    
    std::cout << CLEAR;
    
    // get 2 vector objects based on randomly generated 2D Vectors
    Vector2D vectorA = randVector();
    Vector2D vectorB = randVector();
    
    // output Vectors to console
    std::cout << "vectorA = " << vectorA.getX() << "x + " <<
            vectorA.getY() << "y\n";
    std::cout << "vectorB = " << vectorB.getX() << "x + " <<
            vectorB.getY() << "y\n";
    std::cout << "\nLAB ASSIGNMENT PART 1: VECTOR DOT PRODUCT WITH * "
            << "OPERATOR OVERLOAD\n";
    std::cout << "--------------------------------------------------------"
            <<"----------\n";
    std::cout << "Dot product = vectorA * vectorB = " << vectorA * vectorB
            << std::endl;
    
    // Lab part 2 - do vector addition overload with + operator
    std::cout << "\nLAB ASSIGNMENT PART 2: VECTOR ADDITION WITH + "
            << "OPERATOR OVERLOAD\n";
    std::cout << "-------------------------------------------------------"
            <<"--------\n";
    Vector2D vectorC = vectorA + vectorB;
    std::cout << "Vector addition = vectorA + vectorB = " <<
            (vectorC).getX() << "x + " <<
            (vectorC).getY() << "y\n";
            

    return 0;
}
开发者ID:vschmidt94,项目名称:CS161-Code,代码行数:35,代码来源:main.cpp

示例11: isBound

bool BoundingBox::isBound(Vector2D vector)
{
	if (vector.getX() < topLeft.getX())
		if (vector.getX() > bottomRight.getX())
			if (vector.getY() < topLeft.getY())
				if (vector.getY() > bottomRight.getY())
					return true;
	return false;
}
开发者ID:kobr4,项目名称:Nicuga,代码行数:9,代码来源:BoundingBox.cpp

示例12: setVideoMode

        void VideoManager::setVideoMode(const Vector2D &size)
        {
            this->size = Vector2D((float)(int) size.getX(),
                    (float)(int) size.getY());

            SDL_SetVideoMode((int) size.getX(), (int) size.getY(), 0, flags);
            SDL_ShowCursor(0);
            
            setVideoDefaults();
        }
开发者ID:ELMERzark,项目名称:JVGS,代码行数:10,代码来源:VideoManager.cpp

示例13: drawLine

void Painter::drawLine(Vector2D& p1, Vector2D& p2)
{
	// no need to reinvent the wheel
	int x1 = static_cast<int>(p1.getX());
	int y1 = static_cast<int>(p1.getY());
	int x2 = static_cast<int>(p2.getX());
	int y2 = static_cast<int>(p2.getY());

	this->drawLine(x1, y1, x2, y2, lineColor_);
}
开发者ID:rumpfc,项目名称:CGG,代码行数:10,代码来源:Painter.cpp

示例14: drawRect

void Painter::drawRect(Vector2D& topleft, Vector2D& bottomright)
{
	Vector2D diff = bottomright - topleft;

	int x      = static_cast<int>(topleft.getX());
	int y      = static_cast<int>(topleft.getY());
	int width  = static_cast<int>(diff.getX());
	int height = static_cast<int>(diff.getY());

	drawRect(x, y, width, height);
}
开发者ID:rumpfc,项目名称:CGG,代码行数:11,代码来源:Painter.cpp

示例15: hasPoint

 bool BoundingBox::hasPoint(const Vector2D &point) const
 {
     if(point.getX() < topLeft.getX())
         return false;
     if(point.getX() > bottomRight.getX())
         return false;
     if(point.getY() < topLeft.getY())
         return false;
     if(point.getY() > bottomRight.getY())
         return false;
     return true;
 }
开发者ID:ELMERzark,项目名称:JVGS,代码行数:12,代码来源:BoundingBox.cpp


注:本文中的Vector2D::getX方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。