How to check if two circles intersects each other?
How can you check if two circles intersects each other in one way or another? The intersect function in CCircle.cpp is the one that I am having trouble with.
This is what I have done so far.
Code:
#ifndef _CPOINT_H_
#define _CPOINT_H_
class CPoint
{
public:
CPoint();
CPoint(int x, int y);
int getX() const;
int getY() const;
private:
int m_x;
int m_y;
};
#endif
///////////////////////////////////////
Code:
#include "CPoint.h"
CPoint::CPoint()
{
m_x = 0;
m_y = 0;
}
CPoint::CPoint(int x, int y)
{
m_x = x;
m_y = y;
}
int CPoint::getX() const
{
return m_x;
}
int CPoint::getY() const
{
return m_y;
}
///////////////////////////////////////
Code:
#ifndef _CCIRCLE_H_
#define _CCIRCLE_H_
#include "CPoint.h"
class CCircle : public CPoint
{
public:
CCircle();
CCircle(int x, int y, double r);
double getRadius() const;
bool instersect(CCircle & c);
private:
double m_radius;
};
#endif
///////////////////////////////////////
Code:
#include "CCircle.h"
CCircle::CCircle()
{
CPoint(0, 0);
m_radius = 0.0;
}
CCircle::CCircle(int x, int y, double r) : CPoint(x, y)
{
m_radius = r;
}
double CCircle::getRadius() const
{
return m_radius;
}
bool CCircle::instersect(CCircle & c)
{
bool intersected = false;
/* Insert more code!!! */
return intersected;
}
///////////////////////////////////////
Code:
#include "CCircle.h"
int main()
{
CCircle a(2, 3, 5.5);
CCircle b(0, 1, 4.0);
a.instersect(b);
return 0;
}
///////////////////////////////////////
Thanks.