⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 line1.cs

📁 基于BP算法的贝叶斯网络参数学习
💻 CS
字号:
using System;
using System.ComponentModel;
using System.Collections;
using System.Diagnostics;
using System.Drawing.Drawing2D;
using System.Drawing;
using System.Data;
using System.Windows.Forms;

namespace  bs
{
	/// <summary>
	/// Line1 的摘要说明。
	/// </summary>
	public class Line1 :System.Windows.Forms.Label
	{
		/// <summary>
		/// 必需的设计器变量。
		/// </summary>
		private System.ComponentModel.Container components = null;
		public Point StartPoint; 
		public Point EndPoint; 
		public int PenWidth=1;
        public float wij;

		public Line1(Point start,Point end,float i)
		{
			/// <summary>
			/// Windows.Forms 类撰写设计器支持所必需的
			/// </summary>
			
			InitializeComponent();
		
			StartPoint=start;
			EndPoint=end;
            wij=i;

			// TODO: 在 InitializeComponent 调用后添加任何初始化

		}
		public void DrawLine(Graphics g) 
		{ 
			Pen p=new Pen(Color.Black,PenWidth); 

			//g.DrawLine(new Pen(Color.Black,3),StartPoint,StartPoint); 
			
			g.FillEllipse(new SolidBrush(Color.Black),StartPoint.X-2,StartPoint.Y-1,4,4);
			g.DrawLine(p,StartPoint,new Point(StartPoint.X,StartPoint.Y+12));
			g.DrawLine(p,new Point(StartPoint.X,StartPoint.Y+12),new Point(EndPoint.X,EndPoint.Y-12));
			g.DrawLine(p,new Point(EndPoint.X,EndPoint.Y-12),EndPoint);
			Point point1=EndPoint;
			Point point2=new Point(EndPoint.X-5,EndPoint.Y-5);
			Point point3=new Point(EndPoint.X+5,EndPoint.Y-5);
			Point[] triangle=
				{
					point1,
					point2,
					point3
				};
			FillMode newFillMode = FillMode.Winding;
			g.FillPolygon(new SolidBrush(Color.Black),triangle,newFillMode);

			p.Dispose(); 

		} 
		public int yPositon(int x)
		{
			return (((EndPoint.Y-12-StartPoint.Y-12)/(EndPoint.X-StartPoint.X))*(x-StartPoint.X)+StartPoint.Y+12);
		}

		public bool IsInLine(Point pnt) 
		{ 
			Pen p = new Pen(Color.Black,1); 

			GraphicsPath pth=new GraphicsPath(); 

			pth.AddLine(StartPoint,EndPoint); 

			pth.Widen(p); 

			p.Dispose(); 

			if(pth.IsVisible(pnt)) 

				return true; 

			return false; 

		} 
		//
		// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
		//
	

		#region Component Designer generated code
	/// <summary>
	/// 设计器支持所需的方法 - 不要使用代码编辑器修改
	/// 此方法的内容。
	/// </summary>
	private void InitializeComponent()
{
	components = new System.ComponentModel.Container();
}
		#endregion
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -