合工大机器人足球第二次作业

这篇博客展示了如何使用C#编程实现直线与直线、直线与圆、直线与矩形交点的计算。通过定义MathGraph、Line、Cir、Rec和Cac等类,实现了面向对象的设计,包括直线平行、重合、无交点、一个交点或两个交点等不同情况的判断和计算。示例中给出了具体的交点坐标输出。

第二次作业 用面向对象的思维设计相关类,从而实现直线与直线、直线与圆、直线与矩形的交点。 要求各给出每个案例的至少一个示例的程序

C#

namespace Fb
{
    public class FB_2
    {
        // public static void Main(string[] args)
        // {
        //     //说明:实例化图像后,传入Cac即可计算
        //     Line l1 = new Line(1, 1, -1);
        //     Line l2 = new Line(-2, 1, 0);
        //     Cir c1 = new Cir(0, 0, 1);
        //     Rec r1 = new Rec(1, -1, 2, 2);
        //     Console.WriteLine("直线与直线:");
        //     Cac cac1 = new Cac(l1, l2);
        //     Console.WriteLine("直线与圆:");
        //     Cac cac2 = new Cac(l1, c1);
        //     Console.WriteLine("直线与矩形:");
        //     Cac cac3 = new Cac(l1, r1);
        // }

    }

    class MathGraph
    {
        public mathType mType;
    }

    class Line : MathGraph
    {
        public double A { get; set; }
        public double B { get; set; }
        public double C { get; set; }

        public Line() { }
        public Line(double a, double b, double c)
        {
            mType = mathType.line;
            A = a;
            B = b;
            C = c;
        }
    }

    class Cir : MathGraph
    {
        public Vector2D Center = new Vector2D();//圆心
        public double R;//半径

        public Cir() { }
        public Cir(Vector2D center, double r)
        {
            mType = mathType.circle;
            Center = center;
            R = r;
        }
        public Cir(double x, double y, double r)
        {
            mType = mathType.circle;
            Center.x = x;
            C
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值