第十二周项目4——圆,点的关系(两个交点的坐标)
来源:互联网 发布:免费手机绘图软件 编辑:程序博客网 时间:2024/05/17 01:18
(6)与圆心相连的直线:给定一点p,其与圆心相连成的直线,会和圆有两个交点,如图。在上面定义的Point(点)类和Circle(圆)类基础上,设计一种方案,输出这两点的坐标。
提示:
代码如下:
提示:
代码如下:
#include <iostream>#include <Cmath>using namespace std;class Circle;class Point{protected: double x,y;public: Point(int xx=0,int yy=0):x(xx),y(yy) {} friend ostream& operator<<(ostream&output,const Point &c); friend void Point_intersection(Point &p,Circle &c,Point &p1,Point &p2); //求交点的友元函数};ostream& operator<<(ostream &output,const Point &c){ output<<"("<<c.x<<","<<c.y<<")"<<endl; return output;}class Circle:public Point{protected: double r;public: Circle(int xx=0,int yy=0,double rr=0):Point(xx,yy),r(rr){}; friend ostream& operator<<(ostream&output,const Circle &c); friend void Point_intersection(Point &p,Circle &c,Point &p1,Point &p2); //求交点的友元函数};ostream& operator<<(ostream&output,const Circle &c){ output<<"("<<c.x<<","<<c.y<<","<<c.r<<")"<<endl; return output;}void Point_intersection(Point &p,Circle &c,Point &p1,Point &p2){ p1.x=c.x+sqrt((c.r*c.r)/(1+((c.y-p.y)/(c.x-p.x)*(c.y-p.y)/(c.x-p.x)))); p2.x=c.x-sqrt((c.r*c.r)/(1+((c.y-p.y)/(c.x-p.x)*(c.y-p.y)/(c.x-p.x)))); p1.y=((c.y-p.y)/(c.x-p.x))*(p1.x-p.x)+p.y; p2.y=((c.y-p.y)/(c.x-p.x))*(p2.x-p.x)+p.y;}int main( ){ Circle c(3,2,4); Point p(10,10),p1,p2; Point_intersection(p,c,p1,p2); cout<<"点p"<<p<<"与圆c"<<c<<"的圆心确定的一条直线与圆的两个交点:"<<endl; cout<<"交点1: "<<p1<<endl; cout<<"交点2: "<<p2<<endl; return 0;}
总结:
没有公式真心算不出来
0 0
- 第十二周项目4——圆,点的关系(两个交点的坐标)
- 第十二周项目4-3:点,圆的关系-输出线和圆的交点
- 第11周-项目4-点、圆的关系-两交点的坐标
- 第十二周项目4——点与圆的关系{(判断两个圆面积的大小)
- 第十二周项目4——点, 圆的关系(判断点p与圆的关系)
- 第十二周项目四——点.圆的关系
- 第十二周 项目4-点,圆的关系(1)
- 第十二周项目四 点、圆的关系-(3)求点与圆心的连线在圆上的交点
- 第十二周项目4——点、圆的关系(1—4)
- 第十二周项目4——点、圆的关系(5)
- 第十二周项目四 点、圆的关系-(2)重载关系运算符比较两个圆的面积
- 第十二周项目4 - 点、圆的关系
- 第十二周 【项目4 - 点、圆的关系】
- 第十二周项目4 - 点、圆的关系
- 第十二周 项目4-点,圆的关系
- 第十二周项目4 : 点、圆的关系
- 第十二周【项目4 - 点、圆的关系】
- 第十二周项目4--点、圆的关系
- elasticsearch的实现全文检索
- 第十三周 项目2-形状类族的中的纯虚函数
- 第13周 【项目 - 链表类】阅读项目
- C++刷题——2802: 判断字符串是否为回文
- 第13周项目 程序阅读(4)
- 第十二周项目4——圆,点的关系(两个交点的坐标)
- 数据清洗小记(1):正确英文日期转换报“无效的月份”
- OJ对象数组输入与输出
- [Android实例] 细谈Ble4.0 APP开发
- 第十三周项目三:立体类族共有的抽象类
- 第十三周项目1--动物这样叫(3)
- 第13周项目2-形状类族的中的纯虚函数
- Installing Node.js on pi
- 第13周项目 程序阅读(5)