资源简介
利用三角形生长法快速形成三角网,界面良好,有基本注释。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections;
using System.Drawing.Drawing2D;
namespace TIN
{
public partial class Form1 : Form
{
private static Bitmap bitmap = null; // 创建bitmap对象
private Graphics g =null; //为graphics对象赋予值
private Pen pen = new Pen(Color.Red 1);
private Brush brush = Brushes.Red;
private ArrayList list =null;
private ArrayList linelist = null;
private Bitmap huanyuanbitmap = null;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender EventArgs e)
{
Initialize_drawingboard();
}
//用余弦定理求三个点夹角,cenPoint为顶点。
public float Angle(Point cenPoint Point firstPoint Point secondPoint)
{
float dx1 dx2 dy1 dy2;
float angle;
dx1 = firstPoint.X - cenPoint.X;
dy1 = firstPoint.Y - cenPoint.Y;
dx2 = secondPoint.X - cenPoint.X;
dy2 = secondPoint.Y - cenPoint.Y;
float c = (float)Math.Sqrt(dx1 * dx1 + dy1 * dy1) * (float)Math.Sqrt(dx2 * dx2 + dy2 * dy2);
if (c == 0) return -1;
angle = (float)Math.Acos((dx1 * dx2 + dy1 * dy2) / c);
return angle;
}
//两点距离。
public double Distance(Point firstNum Point secondNum)
{
double dis = Math.Sqrt((secondNum.Y - firstNum.Y) * (secondNum.Y - firstNum.Y)
+ (secondNum.X - firstNum.X) * (secondNum.X - firstNum.X));
return dis;
}
private void creatTIN_Btn_Click(object sender EventArgs e)
{
Initialize_Bitmap();
this.pictureBox1.Update();
creatTIN();
}
/*运用矢量判断点在一条有明确起始方向的线的左还是右;令矢量的起点为A,终点为B,判断的点为C,
如果S(A,B,C)为正数,则C在矢量AB的左侧;
如果S(A,B,C)为负数,则C在矢量AB的右侧;
如果S(A,B,C)为0,则C在直线AB上。*/
public int JudgeLOrR(Point cenPoint Point firstPoint Point secondPoint)
{
double s;
s = (firstPoint.X - cenPoint.X) * (secondPoint.Y - cenPoint.Y) - (firstPoint.Y - cenPoint.Y) * (secondPoint.X - cenPoint.X);
if (s > 0)
{
return 1;
}
else if (s < 0)
return 2;
else
return 0;
}
private void pictureBox1_MouseMove(object sender MouseEventArgs e)
{
this.position_label.Visible = true;
this.position_label.Text = e.X.ToString() + ““ + e.Y.ToString();
}
private void pictureBox1_MouseLeave(object sender EventArgs e)
{
this.position_label.Visible = false;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-06-20 21:44 生长法生成TIN\
目录 0 2013-06-20 21:39 生长法生成TIN\TIN\
文件 27648 2013-06-20 21:12 生长法生成TIN\TIN.suo
目录 0 2013-06-20 21:38 生长法生成TIN\TIN\bin\
目录 0 2013-06-20 21:38 生长法生成TIN\TIN\bin\Debug\
文件 32256 2013-06-20 16:39 生长法生成TIN\TIN\bin\Debug\TIN.pdb
文件 490 2010-03-17 22:39 生长法生成TIN\TIN\bin\Debug\TIN.vshost.exe.manifest
文件 13824 2013-06-20 21:09 生长法生成TIN\TIN\bin\Debug\TIN生成器.exe
文件 32256 2013-06-20 21:09 生长法生成TIN\TIN\bin\Debug\TIN生成器.pdb
文件 11600 2013-06-20 21:40 生长法生成TIN\TIN\bin\Debug\TIN生成器.vshost.exe
文件 490 2010-03-17 22:39 生长法生成TIN\TIN\bin\Debug\TIN生成器.vshost.exe.manifest
目录 0 2013-06-20 21:38 生长法生成TIN\TIN\bin\Release\
文件 9910 2013-06-20 21:08 生长法生成TIN\TIN\Form1.cs
文件 6554 2013-06-20 21:05 生长法生成TIN\TIN\Form1.Designer.cs
文件 5817 2013-06-20 20:16 生长法生成TIN\TIN\Form1.resx
文件 205 2013-06-20 21:08 生长法生成TIN\TIN\Line.cs
目录 0 2013-06-20 21:38 生长法生成TIN\TIN\obj\
目录 0 2013-06-20 21:38 生长法生成TIN\TIN\obj\x86\
目录 0 2013-06-20 21:38 生长法生成TIN\TIN\obj\x86\Debug\
文件 4440 2013-06-20 16:43 生长法生成TIN\TIN\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache
文件 6362 2013-06-20 21:24 生长法生成TIN\TIN\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 316 2013-06-20 21:08 生长法生成TIN\TIN\obj\x86\Debug\GenerateResource.read.1.tlog
文件 714 2013-06-20 21:08 生长法生成TIN\TIN\obj\x86\Debug\GenerateResource.write.1.tlog
目录 0 2013-06-20 21:38 生长法生成TIN\TIN\obj\x86\Debug\TempPE\
文件 1902 2013-06-20 16:39 生长法生成TIN\TIN\obj\x86\Debug\TIN.csproj.FileListAbsolute.txt
文件 12800 2013-06-20 16:39 生长法生成TIN\TIN\obj\x86\Debug\TIN.exe
文件 180 2013-06-20 21:08 生长法生成TIN\TIN\obj\x86\Debug\TIN.Form1.resources
文件 32256 2013-06-20 16:39 生长法生成TIN\TIN\obj\x86\Debug\TIN.pdb
文件 180 2013-06-20 21:08 生长法生成TIN\TIN\obj\x86\Debug\TIN.Properties.Resources.resources
文件 1372 2013-06-20 21:40 生长法生成TIN\TIN\obj\x86\Debug\TIN生成器(生长法).csproj.FileListAbsolute.txt
文件 1132 2013-06-20 21:08 生长法生成TIN\TIN\obj\x86\Debug\TIN生成器.csproj.FileListAbsolute.txt
............此处省略12个文件信息
相关资源
- TCC(Tiny C Compiler)0.9.26源码 原版和
- backupsettings.conf
- tinyOS 路由样例代码
- tinymce powerpaste插件3.3.3-308
- Computing Discrete Fr´echet Distance
- ZEMAX中关于光栅的模拟
- 作业系统恐龙书第七版解答Operating
- 操作系统概论Operating_System_Concepts课后
- mstar LCD_PANEL_SETTING
- Writing A Compiler In Go
- 10分钟搞定Sentinellm保护的程序
- SentinelLM SDK 7.2软件
-
command-line sc
ripting for Quartus IIVer12. - TinyWebDB浏览器 - APPInventor网络微数据库
- Exported-2019-10-17.vssettings
- 用TINA设计的 低通 高通 带通滤波器电
- detection of diabetic retinopathy in retinal f
- tiny24__直流马达正反转
- tiny4412上实现QT控制LED
- RetinaNet深入理解损失函数详解
- linux下dnw安装包适合tiny4412
- 最快的TIN三角网生成算法
- Everything桌面搜索原理源码
- ISO 29119-5软件测试国际标准
- 基于TinyOS的温度监测程序
- 图片图片工具——TinyPng多线程压缩
- Tinymce组件
- 提升小波变换讲义
- MacFilterCalloutInstaller
- debian-10.4.0-amd64-netinst.iso
评论
共有 条评论