Some smaller changes (mainly ui stuff)

git-svn-id: https://triangle.svn.codeplex.com/svn@68234 0e2699bc-83d4-4a8f-98e7-55e24ab8c7a5
This commit is contained in:
SND\wo80_cp
2012-06-19 21:46:15 +00:00
parent fc8eb1d2cd
commit 402672c9e6
13 changed files with 426 additions and 297 deletions
+17 -15
View File
@@ -11,6 +11,7 @@ namespace MeshExplorer.Controls
using System.Text;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Text;
using System.Windows.Forms;
/// <summary>
@@ -56,7 +57,7 @@ namespace MeshExplorer.Controls
enum eButtonState { Normal, MouseOver, Down }
eButtonState m_State = eButtonState.Normal;
// make sure the control is invalidated(repainted) when the text is changed
// Make sure the control is invalidated when the text is changed.
public override string Text
{
get { return base.Text; }
@@ -72,14 +73,17 @@ namespace MeshExplorer.Controls
set { isChecked = value; this.Invalidate(); }
}
//--------------------------------------------------------------------------------
/// <summary>
/// Constructor.
/// </summary>
public DarkCheckBox()
{
this.BackColor = Color.FromArgb(76, 76, 76);
InitializeComponent();
}
#region Control overrides
//--------------------------------------------------------------------------------
protected override void OnPaint(PaintEventArgs e)
{
//base.OnPaint(e);
@@ -146,25 +150,24 @@ namespace MeshExplorer.Controls
e.Graphics.DrawRectangle(brushBorder, newRect);
}
e.Graphics.SmoothingMode = SmoothingMode.HighQuality;
e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
if (this.isChecked)
{
e.Graphics.DrawLine(checkMark, 4, newRect.Bottom - boxSize / 2, newRect.Left + boxSize / 2.5f, newRect.Bottom - 2);
e.Graphics.DrawLine(checkMark, newRect.Left + boxSize / 2.6f, newRect.Bottom - 2, newRect.Right, newRect.Top);
}
e.Graphics.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;
SizeF szL = e.Graphics.MeasureString(this.Text, base.Font, this.Width);
e.Graphics.DrawString(this.Text, base.Font, new SolidBrush(text_color), boxSize + 4, (this.Height - szL.Height) / 2);
if (this.isChecked)
{
e.Graphics.SmoothingMode = SmoothingMode.HighQuality;
e.Graphics.DrawLine(checkMark, 4, newRect.Bottom - boxSize / 2, newRect.Left + boxSize / 2.5f, newRect.Bottom - 2);
e.Graphics.DrawLine(checkMark, newRect.Left + boxSize / 2.6f, newRect.Bottom - 2, newRect.Right, newRect.Top);
}
if (brushOuter != null) brushOuter.Dispose();
if (brushInner != null) brushInner.Dispose();
if (brushBorder != null) brushBorder.Dispose();
if (checkMark != null) checkMark.Dispose();
}
//--------------------------------------------------------------------------------
protected override void OnMouseLeave(System.EventArgs e)
{
m_State = eButtonState.Normal;
@@ -172,7 +175,6 @@ namespace MeshExplorer.Controls
base.OnMouseLeave(e);
}
//--------------------------------------------------------------------------------
protected override void OnMouseEnter(System.EventArgs e)
{
m_State = eButtonState.MouseOver;
@@ -180,7 +182,6 @@ namespace MeshExplorer.Controls
base.OnMouseEnter(e);
}
//--------------------------------------------------------------------------------
protected override void OnMouseUp(System.Windows.Forms.MouseEventArgs e)
{
m_State = eButtonState.MouseOver;
@@ -188,7 +189,6 @@ namespace MeshExplorer.Controls
base.OnMouseUp(e);
}
//--------------------------------------------------------------------------------
protected override void OnMouseDown(System.Windows.Forms.MouseEventArgs e)
{
m_State = eButtonState.Down;
@@ -202,5 +202,7 @@ namespace MeshExplorer.Controls
this.Invalidate();
base.OnClick(e);
}
#endregion
}
}
+1
View File
@@ -37,6 +37,7 @@ namespace MeshExplorer
public string ImageName
{
get { return darkTextBox1.Text; }
set { darkTextBox1.Text = value; }
}
protected override void OnPaint(PaintEventArgs e)
+1
View File
@@ -218,6 +218,7 @@
this.ShowInTaskbar = false;
this.Text = "Input Generator";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FormGenerator_FormClosing);
this.Load += new System.EventHandler(this.FormGenerator_Load);
this.ResumeLayout(false);
}
+10 -5
View File
@@ -15,11 +15,6 @@ namespace MeshExplorer
public FormGenerator()
{
InitializeComponent();
darkListBox1.Items.Add(new RandomPoints());
darkListBox1.Items.Add(new RandomPointsCircle());
darkListBox1.Items.Add(new StarInBox());
darkListBox1.Items.Add(new RingPolygon());
}
private void UpdateControls()
@@ -132,5 +127,15 @@ namespace MeshExplorer
lbParam3Val.Text = currentGenerator.ParameterDescription(3, sliderParam3.Value);
}
}
private void FormGenerator_Load(object sender, EventArgs e)
{
darkListBox1.Items.Add(new RandomPoints());
darkListBox1.Items.Add(new RandomPointsCircle());
darkListBox1.Items.Add(new StarInBox());
darkListBox1.Items.Add(new RingPolygon());
darkListBox1.SelectedIndex = 0;
}
}
}
+262 -231
View File
@@ -29,18 +29,34 @@
private void InitializeComponent()
{
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.menuFile = new System.Windows.Forms.ToolStripMenuItem();
this.menuFileOpen = new System.Windows.Forms.ToolStripMenuItem();
this.menuFileSave = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.menuFileExport = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.menuFileQuit = new System.Windows.Forms.ToolStripMenuItem();
this.menuView = new System.Windows.Forms.ToolStripMenuItem();
this.menuViewVoronoi = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.menuViewLog = new System.Windows.Forms.ToolStripMenuItem();
this.menuTools = new System.Windows.Forms.ToolStripMenuItem();
this.menuToolsGen = new System.Windows.Forms.ToolStripMenuItem();
this.menuToolsCheck = new System.Windows.Forms.ToolStripMenuItem();
this.btnSmooth = new MeshExplorer.Controls.DarkButton();
this.flatTabControl1 = new MeshExplorer.Controls.DarkTabControl();
this.tabPage1 = new System.Windows.Forms.TabPage();
this.btnSmooth = new MeshExplorer.Controls.DarkButton();
this.lbMaxArea = new System.Windows.Forms.Label();
this.btnMesh = new MeshExplorer.Controls.DarkButton();
this.label6 = new System.Windows.Forms.Label();
this.lbMinAngle = new System.Windows.Forms.Label();
this.label23 = new System.Windows.Forms.Label();
this.label9 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
this.slMaxArea = new MeshExplorer.Controls.DarkSlider();
this.slMinAngle = new MeshExplorer.Controls.DarkSlider();
this.cbConformDel = new MeshExplorer.Controls.DarkCheckBox();
this.cbConvex = new MeshExplorer.Controls.DarkCheckBox();
this.cbQuality = new MeshExplorer.Controls.DarkCheckBox();
this.tabPage2 = new System.Windows.Forms.TabPage();
@@ -85,31 +101,17 @@
this.label18 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.lbShortcuts = new System.Windows.Forms.Label();
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.fileMenu = new System.Windows.Forms.ToolStripMenuItem();
this.fileMenuOpen = new System.Windows.Forms.ToolStripMenuItem();
this.fileMenuSave = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.menuFileExport = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.fileMenuQuit = new System.Windows.Forms.ToolStripMenuItem();
this.viewMenu = new System.Windows.Forms.ToolStripMenuItem();
this.viewMenuVoronoi = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.viewMenuLog = new System.Windows.Forms.ToolStripMenuItem();
this.toolsMenu = new System.Windows.Forms.ToolStripMenuItem();
this.toolsMenuGen = new System.Windows.Forms.ToolStripMenuItem();
this.toolsMenuCheck = new System.Windows.Forms.ToolStripMenuItem();
this.btnMesh = new MeshExplorer.Controls.DarkButton();
this.renderControl1 = new MeshExplorer.Controls.RendererControl();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout();
this.splitContainer1.SuspendLayout();
this.menuStrip1.SuspendLayout();
this.flatTabControl1.SuspendLayout();
this.tabPage1.SuspendLayout();
this.tabPage2.SuspendLayout();
this.tabPage3.SuspendLayout();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
//
// splitContainer1
@@ -124,8 +126,10 @@
// splitContainer1.Panel1
//
this.splitContainer1.Panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(76)))), ((int)(((byte)(76)))));
this.splitContainer1.Panel1.Controls.Add(this.btnSmooth);
this.splitContainer1.Panel1.Controls.Add(this.flatTabControl1);
this.splitContainer1.Panel1.Controls.Add(this.menuStrip1);
this.splitContainer1.Panel1.Controls.Add(this.btnMesh);
//
// splitContainer1.Panel2
//
@@ -136,77 +140,193 @@
this.splitContainer1.SplitterWidth = 1;
this.splitContainer1.TabIndex = 0;
//
// menuStrip1
//
this.menuStrip1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.menuStrip1.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.menuStrip1.GripMargin = new System.Windows.Forms.Padding(0);
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.menuFile,
this.menuView,
this.menuTools});
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Padding = new System.Windows.Forms.Padding(0);
this.menuStrip1.Size = new System.Drawing.Size(280, 24);
this.menuStrip1.TabIndex = 0;
this.menuStrip1.Text = "menuStrip1";
//
// menuFile
//
this.menuFile.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.menuFile.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.menuFile.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.menuFileOpen,
this.menuFileSave,
this.toolStripSeparator3,
this.menuFileExport,
this.toolStripSeparator2,
this.menuFileQuit});
this.menuFile.Name = "menuFile";
this.menuFile.Size = new System.Drawing.Size(37, 24);
this.menuFile.Text = "File";
//
// menuFileOpen
//
this.menuFileOpen.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.menuFileOpen.Name = "menuFileOpen";
this.menuFileOpen.Size = new System.Drawing.Size(141, 22);
this.menuFileOpen.Text = "Open";
this.menuFileOpen.Click += new System.EventHandler(this.menuFileOpen_Click);
//
// menuFileSave
//
this.menuFileSave.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.menuFileSave.Enabled = false;
this.menuFileSave.Name = "menuFileSave";
this.menuFileSave.Size = new System.Drawing.Size(141, 22);
this.menuFileSave.Text = "Save";
this.menuFileSave.Click += new System.EventHandler(this.menuFileSave_Click);
//
// toolStripSeparator3
//
this.toolStripSeparator3.Name = "toolStripSeparator3";
this.toolStripSeparator3.Size = new System.Drawing.Size(138, 6);
//
// menuFileExport
//
this.menuFileExport.Enabled = false;
this.menuFileExport.Name = "menuFileExport";
this.menuFileExport.Size = new System.Drawing.Size(141, 22);
this.menuFileExport.Text = "Export Image";
this.menuFileExport.Click += new System.EventHandler(this.menuFileExport_Click);
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
this.toolStripSeparator2.Size = new System.Drawing.Size(138, 6);
//
// menuFileQuit
//
this.menuFileQuit.Name = "menuFileQuit";
this.menuFileQuit.Size = new System.Drawing.Size(141, 22);
this.menuFileQuit.Text = "Quit";
this.menuFileQuit.Click += new System.EventHandler(this.menuFileQuit_Click);
//
// menuView
//
this.menuView.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.menuViewVoronoi,
this.toolStripSeparator1,
this.menuViewLog});
this.menuView.Name = "menuView";
this.menuView.Size = new System.Drawing.Size(44, 24);
this.menuView.Text = "View";
//
// menuViewVoronoi
//
this.menuViewVoronoi.Enabled = false;
this.menuViewVoronoi.Name = "menuViewVoronoi";
this.menuViewVoronoi.Size = new System.Drawing.Size(162, 22);
this.menuViewVoronoi.Text = "Voronoi Diagram";
this.menuViewVoronoi.Click += new System.EventHandler(this.menuViewVoronoi_Click);
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(159, 6);
//
// menuViewLog
//
this.menuViewLog.Name = "menuViewLog";
this.menuViewLog.Size = new System.Drawing.Size(162, 22);
this.menuViewLog.Text = "Show Log";
this.menuViewLog.Click += new System.EventHandler(this.menuViewLog_Click);
//
// menuTools
//
this.menuTools.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.menuToolsGen,
this.menuToolsCheck});
this.menuTools.Name = "menuTools";
this.menuTools.Size = new System.Drawing.Size(46, 24);
this.menuTools.Text = "Tools";
//
// menuToolsGen
//
this.menuToolsGen.Name = "menuToolsGen";
this.menuToolsGen.Size = new System.Drawing.Size(157, 22);
this.menuToolsGen.Text = "Input Generator";
this.menuToolsGen.Click += new System.EventHandler(this.menuToolsGenerator_Click);
//
// menuToolsCheck
//
this.menuToolsCheck.Enabled = false;
this.menuToolsCheck.Name = "menuToolsCheck";
this.menuToolsCheck.Size = new System.Drawing.Size(157, 22);
this.menuToolsCheck.Text = "Check Mesh";
this.menuToolsCheck.Click += new System.EventHandler(this.menuToolsCheck_Click);
//
// btnSmooth
//
this.btnSmooth.Enabled = false;
this.btnSmooth.Location = new System.Drawing.Point(146, 44);
this.btnSmooth.Name = "btnSmooth";
this.btnSmooth.Size = new System.Drawing.Size(130, 23);
this.btnSmooth.TabIndex = 12;
this.btnSmooth.Text = "Smooth";
this.btnSmooth.UseVisualStyleBackColor = true;
this.btnSmooth.Click += new System.EventHandler(this.btnSmooth_Click);
//
// flatTabControl1
//
this.flatTabControl1.Alignment = System.Windows.Forms.TabAlignment.Bottom;
this.flatTabControl1.Controls.Add(this.tabPage1);
this.flatTabControl1.Controls.Add(this.tabPage2);
this.flatTabControl1.Controls.Add(this.tabPage3);
this.flatTabControl1.Location = new System.Drawing.Point(0, 27);
this.flatTabControl1.Location = new System.Drawing.Point(0, 73);
this.flatTabControl1.Name = "flatTabControl1";
this.flatTabControl1.SelectedIndex = 0;
this.flatTabControl1.Size = new System.Drawing.Size(280, 584);
this.flatTabControl1.Size = new System.Drawing.Size(280, 538);
this.flatTabControl1.TabIndex = 1;
//
// tabPage1
//
this.tabPage1.BackColor = System.Drawing.Color.DimGray;
this.tabPage1.Controls.Add(this.btnSmooth);
this.tabPage1.Controls.Add(this.lbMaxArea);
this.tabPage1.Controls.Add(this.btnMesh);
this.tabPage1.Controls.Add(this.label6);
this.tabPage1.Controls.Add(this.lbMinAngle);
this.tabPage1.Controls.Add(this.label23);
this.tabPage1.Controls.Add(this.label9);
this.tabPage1.Controls.Add(this.label8);
this.tabPage1.Controls.Add(this.label5);
this.tabPage1.Controls.Add(this.slMaxArea);
this.tabPage1.Controls.Add(this.slMinAngle);
this.tabPage1.Controls.Add(this.cbConformDel);
this.tabPage1.Controls.Add(this.cbConvex);
this.tabPage1.Controls.Add(this.cbQuality);
this.tabPage1.ForeColor = System.Drawing.Color.DarkGray;
this.tabPage1.Location = new System.Drawing.Point(4, 4);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Size = new System.Drawing.Size(272, 555);
this.tabPage1.Size = new System.Drawing.Size(272, 509);
this.tabPage1.TabIndex = 0;
this.tabPage1.Text = "Mesh Control";
//
// btnSmooth
//
this.btnSmooth.Enabled = false;
this.btnSmooth.Location = new System.Drawing.Point(144, 16);
this.btnSmooth.Name = "btnSmooth";
this.btnSmooth.Size = new System.Drawing.Size(115, 23);
this.btnSmooth.TabIndex = 12;
this.btnSmooth.Text = "Smooth";
this.btnSmooth.UseVisualStyleBackColor = true;
this.btnSmooth.Click += new System.EventHandler(this.btnSmooth_Click);
//
// lbMaxArea
//
this.lbMaxArea.AutoSize = true;
this.lbMaxArea.ForeColor = System.Drawing.Color.White;
this.lbMaxArea.Location = new System.Drawing.Point(227, 191);
this.lbMaxArea.Location = new System.Drawing.Point(227, 66);
this.lbMaxArea.Name = "lbMaxArea";
this.lbMaxArea.Size = new System.Drawing.Size(13, 13);
this.lbMaxArea.TabIndex = 14;
this.lbMaxArea.Text = "0";
//
// btnMesh
//
this.btnMesh.Enabled = false;
this.btnMesh.Location = new System.Drawing.Point(11, 16);
this.btnMesh.Name = "btnMesh";
this.btnMesh.Size = new System.Drawing.Size(115, 23);
this.btnMesh.TabIndex = 12;
this.btnMesh.Text = "Triangulate";
this.btnMesh.UseVisualStyleBackColor = true;
this.btnMesh.Click += new System.EventHandler(this.btnMesh_Click);
//
// label6
//
this.label6.AutoSize = true;
this.label6.ForeColor = System.Drawing.Color.White;
this.label6.Location = new System.Drawing.Point(8, 126);
this.label6.Location = new System.Drawing.Point(8, 65);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(81, 13);
this.label6.TabIndex = 14;
@@ -216,17 +336,28 @@
//
this.lbMinAngle.AutoSize = true;
this.lbMinAngle.ForeColor = System.Drawing.Color.White;
this.lbMinAngle.Location = new System.Drawing.Point(227, 169);
this.lbMinAngle.Location = new System.Drawing.Point(227, 44);
this.lbMinAngle.Name = "lbMinAngle";
this.lbMinAngle.Size = new System.Drawing.Size(19, 13);
this.lbMinAngle.TabIndex = 14;
this.lbMinAngle.Text = "20";
//
// label23
//
this.label23.BackColor = System.Drawing.Color.DimGray;
this.label23.ForeColor = System.Drawing.Color.DarkGray;
this.label23.Location = new System.Drawing.Point(8, 152);
this.label23.Name = "label23";
this.label23.Size = new System.Drawing.Size(251, 33);
this.label23.TabIndex = 14;
this.label23.Text = "Ensure that all triangles in the mesh are truly Delaunay, and not just constraine" +
"d Delaunay.";
//
// label9
//
this.label9.BackColor = System.Drawing.Color.DimGray;
this.label9.ForeColor = System.Drawing.Color.DarkGray;
this.label9.Location = new System.Drawing.Point(8, 231);
this.label9.Location = new System.Drawing.Point(8, 216);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(258, 33);
this.label9.TabIndex = 14;
@@ -236,7 +367,7 @@
//
this.label8.BackColor = System.Drawing.Color.DimGray;
this.label8.ForeColor = System.Drawing.Color.DarkGray;
this.label8.Location = new System.Drawing.Point(8, 150);
this.label8.Location = new System.Drawing.Point(8, 89);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(258, 33);
this.label8.TabIndex = 14;
@@ -247,7 +378,7 @@
//
this.label5.AutoSize = true;
this.label5.ForeColor = System.Drawing.Color.White;
this.label5.Location = new System.Drawing.Point(8, 104);
this.label5.Location = new System.Drawing.Point(8, 43);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(87, 13);
this.label5.TabIndex = 14;
@@ -257,7 +388,7 @@
//
this.slMaxArea.BackColor = System.Drawing.Color.Transparent;
this.slMaxArea.CriticalPercent = ((uint)(0u));
this.slMaxArea.Location = new System.Drawing.Point(102, 123);
this.slMaxArea.Location = new System.Drawing.Point(102, 62);
this.slMaxArea.Maximum = 100;
this.slMaxArea.Minimum = 0;
this.slMaxArea.Name = "slMaxArea";
@@ -271,7 +402,7 @@
//
this.slMinAngle.BackColor = System.Drawing.Color.Transparent;
this.slMinAngle.CriticalPercent = ((uint)(89u));
this.slMinAngle.Location = new System.Drawing.Point(102, 101);
this.slMinAngle.Location = new System.Drawing.Point(102, 40);
this.slMinAngle.Maximum = 100;
this.slMinAngle.Minimum = 0;
this.slMinAngle.Name = "slMinAngle";
@@ -281,11 +412,22 @@
this.slMinAngle.Value = 50;
this.slMinAngle.ValueChanging += new System.EventHandler(this.slMinAngle_ValueChanging);
//
// cbConformDel
//
this.cbConformDel.BackColor = System.Drawing.Color.DimGray;
this.cbConformDel.Checked = false;
this.cbConformDel.Location = new System.Drawing.Point(11, 132);
this.cbConformDel.Name = "cbConformDel";
this.cbConformDel.Size = new System.Drawing.Size(142, 17);
this.cbConformDel.TabIndex = 0;
this.cbConformDel.Text = "Conforming Delaunay";
this.cbConformDel.UseVisualStyleBackColor = false;
//
// cbConvex
//
this.cbConvex.BackColor = System.Drawing.Color.DimGray;
this.cbConvex.Checked = false;
this.cbConvex.Location = new System.Drawing.Point(11, 211);
this.cbConvex.Location = new System.Drawing.Point(11, 196);
this.cbConvex.Name = "cbConvex";
this.cbConvex.Size = new System.Drawing.Size(115, 17);
this.cbConvex.TabIndex = 0;
@@ -296,7 +438,7 @@
//
this.cbQuality.BackColor = System.Drawing.Color.DimGray;
this.cbQuality.Checked = false;
this.cbQuality.Location = new System.Drawing.Point(11, 78);
this.cbQuality.Location = new System.Drawing.Point(11, 17);
this.cbQuality.Name = "cbQuality";
this.cbQuality.Size = new System.Drawing.Size(115, 17);
this.cbQuality.TabIndex = 0;
@@ -343,7 +485,7 @@
this.tabPage2.Location = new System.Drawing.Point(4, 4);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
this.tabPage2.Size = new System.Drawing.Size(272, 555);
this.tabPage2.Size = new System.Drawing.Size(272, 509);
this.tabPage2.TabIndex = 1;
this.tabPage2.Text = "Statistic";
//
@@ -352,7 +494,7 @@
this.label20.AutoSize = true;
this.label20.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label20.ForeColor = System.Drawing.Color.White;
this.label20.Location = new System.Drawing.Point(8, 13);
this.label20.Location = new System.Drawing.Point(8, 17);
this.label20.Name = "label20";
this.label20.Size = new System.Drawing.Size(39, 13);
this.label20.TabIndex = 26;
@@ -362,7 +504,7 @@
//
this.label4.AutoSize = true;
this.label4.ForeColor = System.Drawing.Color.DarkGray;
this.label4.Location = new System.Drawing.Point(8, 53);
this.label4.Location = new System.Drawing.Point(8, 57);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(60, 13);
this.label4.TabIndex = 23;
@@ -372,7 +514,7 @@
//
this.label3.AutoSize = true;
this.label3.ForeColor = System.Drawing.Color.DarkGray;
this.label3.Location = new System.Drawing.Point(8, 72);
this.label3.Location = new System.Drawing.Point(8, 76);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(56, 13);
this.label3.TabIndex = 24;
@@ -382,7 +524,7 @@
//
this.label2.AutoSize = true;
this.label2.ForeColor = System.Drawing.Color.DarkGray;
this.label2.Location = new System.Drawing.Point(8, 34);
this.label2.Location = new System.Drawing.Point(8, 38);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(50, 13);
this.label2.TabIndex = 25;
@@ -391,7 +533,7 @@
// lbNumSeg
//
this.lbNumSeg.ForeColor = System.Drawing.Color.White;
this.lbNumSeg.Location = new System.Drawing.Point(98, 53);
this.lbNumSeg.Location = new System.Drawing.Point(98, 57);
this.lbNumSeg.Name = "lbNumSeg";
this.lbNumSeg.Size = new System.Drawing.Size(70, 13);
this.lbNumSeg.TabIndex = 20;
@@ -401,7 +543,7 @@
// lbNumSeg2
//
this.lbNumSeg2.ForeColor = System.Drawing.Color.DarkGray;
this.lbNumSeg2.Location = new System.Drawing.Point(188, 53);
this.lbNumSeg2.Location = new System.Drawing.Point(188, 57);
this.lbNumSeg2.Name = "lbNumSeg2";
this.lbNumSeg2.Size = new System.Drawing.Size(70, 13);
this.lbNumSeg2.TabIndex = 19;
@@ -411,7 +553,7 @@
// lbNumTri
//
this.lbNumTri.ForeColor = System.Drawing.Color.White;
this.lbNumTri.Location = new System.Drawing.Point(98, 72);
this.lbNumTri.Location = new System.Drawing.Point(98, 76);
this.lbNumTri.Name = "lbNumTri";
this.lbNumTri.Size = new System.Drawing.Size(70, 13);
this.lbNumTri.TabIndex = 17;
@@ -421,7 +563,7 @@
// lbNumTri2
//
this.lbNumTri2.ForeColor = System.Drawing.Color.DarkGray;
this.lbNumTri2.Location = new System.Drawing.Point(188, 72);
this.lbNumTri2.Location = new System.Drawing.Point(188, 76);
this.lbNumTri2.Name = "lbNumTri2";
this.lbNumTri2.Size = new System.Drawing.Size(70, 13);
this.lbNumTri2.TabIndex = 18;
@@ -431,7 +573,7 @@
// lbNumVert
//
this.lbNumVert.ForeColor = System.Drawing.Color.White;
this.lbNumVert.Location = new System.Drawing.Point(98, 34);
this.lbNumVert.Location = new System.Drawing.Point(98, 38);
this.lbNumVert.Name = "lbNumVert";
this.lbNumVert.Size = new System.Drawing.Size(70, 13);
this.lbNumVert.TabIndex = 21;
@@ -441,7 +583,7 @@
// lbNumVert2
//
this.lbNumVert2.ForeColor = System.Drawing.Color.DarkGray;
this.lbNumVert2.Location = new System.Drawing.Point(188, 34);
this.lbNumVert2.Location = new System.Drawing.Point(188, 38);
this.lbNumVert2.Name = "lbNumVert2";
this.lbNumVert2.Size = new System.Drawing.Size(70, 13);
this.lbNumVert2.TabIndex = 22;
@@ -452,7 +594,7 @@
//
this.label32.AutoSize = true;
this.label32.ForeColor = System.Drawing.Color.DarkGray;
this.label32.Location = new System.Drawing.Point(210, 209);
this.label32.Location = new System.Drawing.Point(210, 213);
this.label32.Name = "label32";
this.label32.Size = new System.Drawing.Size(48, 13);
this.label32.TabIndex = 11;
@@ -462,7 +604,7 @@
//
this.label13.AutoSize = true;
this.label13.ForeColor = System.Drawing.Color.DarkGray;
this.label13.Location = new System.Drawing.Point(202, 110);
this.label13.Location = new System.Drawing.Point(202, 114);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(56, 13);
this.label13.TabIndex = 11;
@@ -472,7 +614,7 @@
//
this.label31.AutoSize = true;
this.label31.ForeColor = System.Drawing.Color.DarkGray;
this.label31.Location = new System.Drawing.Point(112, 209);
this.label31.Location = new System.Drawing.Point(112, 213);
this.label31.Name = "label31";
this.label31.Size = new System.Drawing.Size(55, 13);
this.label31.TabIndex = 12;
@@ -482,7 +624,7 @@
//
this.label12.AutoSize = true;
this.label12.ForeColor = System.Drawing.Color.DarkGray;
this.label12.Location = new System.Drawing.Point(113, 110);
this.label12.Location = new System.Drawing.Point(113, 114);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(55, 13);
this.label12.TabIndex = 12;
@@ -492,7 +634,7 @@
//
this.label16.AutoSize = true;
this.label16.ForeColor = System.Drawing.Color.DarkGray;
this.label16.Location = new System.Drawing.Point(8, 169);
this.label16.Location = new System.Drawing.Point(8, 173);
this.label16.Name = "label16";
this.label16.Size = new System.Drawing.Size(40, 13);
this.label16.TabIndex = 9;
@@ -502,7 +644,7 @@
//
this.label29.AutoSize = true;
this.label29.ForeColor = System.Drawing.Color.DarkGray;
this.label29.Location = new System.Drawing.Point(8, 249);
this.label29.Location = new System.Drawing.Point(8, 253);
this.label29.Name = "label29";
this.label29.Size = new System.Drawing.Size(71, 13);
this.label29.TabIndex = 15;
@@ -512,7 +654,7 @@
//
this.label14.AutoSize = true;
this.label14.ForeColor = System.Drawing.Color.DarkGray;
this.label14.Location = new System.Drawing.Point(8, 150);
this.label14.Location = new System.Drawing.Point(8, 154);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(73, 13);
this.label14.TabIndex = 15;
@@ -521,7 +663,7 @@
// lbAngleMax
//
this.lbAngleMax.ForeColor = System.Drawing.Color.White;
this.lbAngleMax.Location = new System.Drawing.Point(182, 169);
this.lbAngleMax.Location = new System.Drawing.Point(182, 173);
this.lbAngleMax.Name = "lbAngleMax";
this.lbAngleMax.Size = new System.Drawing.Size(76, 13);
this.lbAngleMax.TabIndex = 16;
@@ -531,7 +673,7 @@
// lbQualAspectAve
//
this.lbQualAspectAve.ForeColor = System.Drawing.Color.White;
this.lbQualAspectAve.Location = new System.Drawing.Point(182, 249);
this.lbQualAspectAve.Location = new System.Drawing.Point(182, 253);
this.lbQualAspectAve.Name = "lbQualAspectAve";
this.lbQualAspectAve.Size = new System.Drawing.Size(76, 13);
this.lbQualAspectAve.TabIndex = 14;
@@ -541,7 +683,7 @@
// lbEdgeMax
//
this.lbEdgeMax.ForeColor = System.Drawing.Color.White;
this.lbEdgeMax.Location = new System.Drawing.Point(182, 150);
this.lbEdgeMax.Location = new System.Drawing.Point(182, 154);
this.lbEdgeMax.Name = "lbEdgeMax";
this.lbEdgeMax.Size = new System.Drawing.Size(76, 13);
this.lbEdgeMax.TabIndex = 14;
@@ -551,7 +693,7 @@
// lbQualAlphaAve
//
this.lbQualAlphaAve.ForeColor = System.Drawing.Color.White;
this.lbQualAlphaAve.Location = new System.Drawing.Point(182, 230);
this.lbQualAlphaAve.Location = new System.Drawing.Point(182, 234);
this.lbQualAlphaAve.Name = "lbQualAlphaAve";
this.lbQualAlphaAve.Size = new System.Drawing.Size(76, 13);
this.lbQualAlphaAve.TabIndex = 3;
@@ -561,7 +703,7 @@
// lbAreaMax
//
this.lbAreaMax.ForeColor = System.Drawing.Color.White;
this.lbAreaMax.Location = new System.Drawing.Point(182, 131);
this.lbAreaMax.Location = new System.Drawing.Point(182, 135);
this.lbAreaMax.Name = "lbAreaMax";
this.lbAreaMax.Size = new System.Drawing.Size(76, 13);
this.lbAreaMax.TabIndex = 3;
@@ -571,7 +713,7 @@
// lbAngleMin
//
this.lbAngleMin.ForeColor = System.Drawing.Color.White;
this.lbAngleMin.Location = new System.Drawing.Point(100, 169);
this.lbAngleMin.Location = new System.Drawing.Point(100, 173);
this.lbAngleMin.Name = "lbAngleMin";
this.lbAngleMin.Size = new System.Drawing.Size(68, 13);
this.lbAngleMin.TabIndex = 4;
@@ -581,7 +723,7 @@
// lbQualAspectMin
//
this.lbQualAspectMin.ForeColor = System.Drawing.Color.White;
this.lbQualAspectMin.Location = new System.Drawing.Point(100, 249);
this.lbQualAspectMin.Location = new System.Drawing.Point(100, 253);
this.lbQualAspectMin.Name = "lbQualAspectMin";
this.lbQualAspectMin.Size = new System.Drawing.Size(68, 13);
this.lbQualAspectMin.TabIndex = 2;
@@ -591,7 +733,7 @@
// lbEdgeMin
//
this.lbEdgeMin.ForeColor = System.Drawing.Color.White;
this.lbEdgeMin.Location = new System.Drawing.Point(100, 150);
this.lbEdgeMin.Location = new System.Drawing.Point(100, 154);
this.lbEdgeMin.Name = "lbEdgeMin";
this.lbEdgeMin.Size = new System.Drawing.Size(68, 13);
this.lbEdgeMin.TabIndex = 2;
@@ -601,7 +743,7 @@
// lbQualAlphaMin
//
this.lbQualAlphaMin.ForeColor = System.Drawing.Color.White;
this.lbQualAlphaMin.Location = new System.Drawing.Point(100, 230);
this.lbQualAlphaMin.Location = new System.Drawing.Point(100, 234);
this.lbQualAlphaMin.Name = "lbQualAlphaMin";
this.lbQualAlphaMin.Size = new System.Drawing.Size(68, 13);
this.lbQualAlphaMin.TabIndex = 7;
@@ -611,7 +753,7 @@
// lbAreaMin
//
this.lbAreaMin.ForeColor = System.Drawing.Color.White;
this.lbAreaMin.Location = new System.Drawing.Point(100, 131);
this.lbAreaMin.Location = new System.Drawing.Point(100, 135);
this.lbAreaMin.Name = "lbAreaMin";
this.lbAreaMin.Size = new System.Drawing.Size(68, 13);
this.lbAreaMin.TabIndex = 7;
@@ -622,7 +764,7 @@
//
this.label22.AutoSize = true;
this.label22.ForeColor = System.Drawing.Color.DarkGray;
this.label22.Location = new System.Drawing.Point(8, 230);
this.label22.Location = new System.Drawing.Point(8, 234);
this.label22.Name = "label22";
this.label22.Size = new System.Drawing.Size(65, 13);
this.label22.TabIndex = 8;
@@ -632,7 +774,7 @@
//
this.label10.AutoSize = true;
this.label10.ForeColor = System.Drawing.Color.DarkGray;
this.label10.Location = new System.Drawing.Point(8, 131);
this.label10.Location = new System.Drawing.Point(8, 135);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(76, 13);
this.label10.TabIndex = 8;
@@ -643,7 +785,7 @@
this.label17.AutoSize = true;
this.label17.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label17.ForeColor = System.Drawing.Color.White;
this.label17.Location = new System.Drawing.Point(8, 336);
this.label17.Location = new System.Drawing.Point(8, 290);
this.label17.Name = "label17";
this.label17.Size = new System.Drawing.Size(97, 13);
this.label17.TabIndex = 5;
@@ -654,7 +796,7 @@
this.label21.AutoSize = true;
this.label21.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label21.ForeColor = System.Drawing.Color.White;
this.label21.Location = new System.Drawing.Point(8, 209);
this.label21.Location = new System.Drawing.Point(8, 213);
this.label21.Name = "label21";
this.label21.Size = new System.Drawing.Size(47, 13);
this.label21.TabIndex = 6;
@@ -665,7 +807,7 @@
this.label11.AutoSize = true;
this.label11.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label11.ForeColor = System.Drawing.Color.White;
this.label11.Location = new System.Drawing.Point(8, 110);
this.label11.Location = new System.Drawing.Point(8, 114);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(50, 13);
this.label11.TabIndex = 6;
@@ -675,7 +817,7 @@
//
this.angleHistogram1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(76)))), ((int)(((byte)(76)))));
this.angleHistogram1.Font = new System.Drawing.Font("Segoe UI", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.angleHistogram1.Location = new System.Drawing.Point(6, 354);
this.angleHistogram1.Location = new System.Drawing.Point(6, 308);
this.angleHistogram1.Name = "angleHistogram1";
this.angleHistogram1.Size = new System.Drawing.Size(260, 195);
this.angleHistogram1.TabIndex = 0;
@@ -694,7 +836,7 @@
this.tabPage3.Location = new System.Drawing.Point(4, 4);
this.tabPage3.Name = "tabPage3";
this.tabPage3.Padding = new System.Windows.Forms.Padding(3);
this.tabPage3.Size = new System.Drawing.Size(272, 555);
this.tabPage3.Size = new System.Drawing.Size(272, 509);
this.tabPage3.TabIndex = 2;
this.tabPage3.Text = "About";
//
@@ -703,7 +845,7 @@
this.lbCodeplex.AutoSize = true;
this.lbCodeplex.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbCodeplex.ForeColor = System.Drawing.Color.White;
this.lbCodeplex.Location = new System.Drawing.Point(70, 80);
this.lbCodeplex.Location = new System.Drawing.Point(70, 82);
this.lbCodeplex.Name = "lbCodeplex";
this.lbCodeplex.Size = new System.Drawing.Size(153, 13);
this.lbCodeplex.TabIndex = 2;
@@ -715,7 +857,7 @@
this.label15.AutoSize = true;
this.label15.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label15.ForeColor = System.Drawing.Color.White;
this.label15.Location = new System.Drawing.Point(8, 15);
this.label15.Location = new System.Drawing.Point(8, 17);
this.label15.Name = "label15";
this.label15.Size = new System.Drawing.Size(73, 13);
this.label15.TabIndex = 1;
@@ -726,7 +868,7 @@
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label1.ForeColor = System.Drawing.Color.White;
this.label1.Location = new System.Drawing.Point(8, 130);
this.label1.Location = new System.Drawing.Point(8, 132);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(108, 13);
this.label1.TabIndex = 1;
@@ -736,7 +878,7 @@
//
this.label19.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label19.ForeColor = System.Drawing.Color.White;
this.label19.Location = new System.Drawing.Point(70, 40);
this.label19.Location = new System.Drawing.Point(70, 42);
this.label19.Name = "label19";
this.label19.Size = new System.Drawing.Size(134, 40);
this.label19.TabIndex = 0;
@@ -745,7 +887,7 @@
// label18
//
this.label18.ForeColor = System.Drawing.Color.White;
this.label18.Location = new System.Drawing.Point(13, 40);
this.label18.Location = new System.Drawing.Point(13, 42);
this.label18.Name = "label18";
this.label18.Size = new System.Drawing.Size(51, 40);
this.label18.TabIndex = 0;
@@ -756,7 +898,7 @@
//
this.label7.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.label7.ForeColor = System.Drawing.Color.White;
this.label7.Location = new System.Drawing.Point(70, 153);
this.label7.Location = new System.Drawing.Point(70, 155);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(134, 108);
this.label7.TabIndex = 0;
@@ -765,136 +907,23 @@
// lbShortcuts
//
this.lbShortcuts.ForeColor = System.Drawing.Color.White;
this.lbShortcuts.Location = new System.Drawing.Point(22, 153);
this.lbShortcuts.Location = new System.Drawing.Point(22, 155);
this.lbShortcuts.Name = "lbShortcuts";
this.lbShortcuts.Size = new System.Drawing.Size(36, 108);
this.lbShortcuts.TabIndex = 0;
this.lbShortcuts.Text = "F3\r\nF4\r\nF5\r\n\r\nF8\r\nF9\r\n\r\nF12";
this.lbShortcuts.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// menuStrip1
// btnMesh
//
this.menuStrip1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.menuStrip1.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.menuStrip1.GripMargin = new System.Windows.Forms.Padding(0);
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.fileMenu,
this.viewMenu,
this.toolsMenu});
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Padding = new System.Windows.Forms.Padding(0);
this.menuStrip1.Size = new System.Drawing.Size(280, 24);
this.menuStrip1.TabIndex = 0;
this.menuStrip1.Text = "menuStrip1";
//
// fileMenu
//
this.fileMenu.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
this.fileMenu.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.fileMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.fileMenuOpen,
this.fileMenuSave,
this.toolStripSeparator3,
this.menuFileExport,
this.toolStripSeparator2,
this.fileMenuQuit});
this.fileMenu.Name = "fileMenu";
this.fileMenu.Size = new System.Drawing.Size(37, 24);
this.fileMenu.Text = "File";
//
// fileMenuOpen
//
this.fileMenuOpen.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.fileMenuOpen.Name = "fileMenuOpen";
this.fileMenuOpen.Size = new System.Drawing.Size(141, 22);
this.fileMenuOpen.Text = "Open";
this.fileMenuOpen.Click += new System.EventHandler(this.fileMenuOpen_Click);
//
// fileMenuSave
//
this.fileMenuSave.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.fileMenuSave.Name = "fileMenuSave";
this.fileMenuSave.Size = new System.Drawing.Size(141, 22);
this.fileMenuSave.Text = "Save";
this.fileMenuSave.Click += new System.EventHandler(this.fileMenuSave_Click);
//
// toolStripSeparator3
//
this.toolStripSeparator3.Name = "toolStripSeparator3";
this.toolStripSeparator3.Size = new System.Drawing.Size(138, 6);
//
// menuFileExport
//
this.menuFileExport.Name = "menuFileExport";
this.menuFileExport.Size = new System.Drawing.Size(141, 22);
this.menuFileExport.Text = "Export Image";
this.menuFileExport.Click += new System.EventHandler(this.menuFileExport_Click);
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
this.toolStripSeparator2.Size = new System.Drawing.Size(138, 6);
//
// fileMenuQuit
//
this.fileMenuQuit.Name = "fileMenuQuit";
this.fileMenuQuit.Size = new System.Drawing.Size(141, 22);
this.fileMenuQuit.Text = "Quit";
this.fileMenuQuit.Click += new System.EventHandler(this.fileMenuQuit_Click);
//
// viewMenu
//
this.viewMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.viewMenuVoronoi,
this.toolStripSeparator1,
this.viewMenuLog});
this.viewMenu.Name = "viewMenu";
this.viewMenu.Size = new System.Drawing.Size(44, 24);
this.viewMenu.Text = "View";
//
// viewMenuVoronoi
//
this.viewMenuVoronoi.Enabled = false;
this.viewMenuVoronoi.Name = "viewMenuVoronoi";
this.viewMenuVoronoi.Size = new System.Drawing.Size(162, 22);
this.viewMenuVoronoi.Text = "Voronoi Diagram";
this.viewMenuVoronoi.Click += new System.EventHandler(this.viewMenuVoronoi_Click);
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(159, 6);
//
// viewMenuLog
//
this.viewMenuLog.Name = "viewMenuLog";
this.viewMenuLog.Size = new System.Drawing.Size(162, 22);
this.viewMenuLog.Text = "Show Log";
this.viewMenuLog.Click += new System.EventHandler(this.viewMenuLog_Click);
//
// toolsMenu
//
this.toolsMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolsMenuGen,
this.toolsMenuCheck});
this.toolsMenu.Name = "toolsMenu";
this.toolsMenu.Size = new System.Drawing.Size(46, 24);
this.toolsMenu.Text = "Tools";
//
// toolsMenuGen
//
this.toolsMenuGen.Name = "toolsMenuGen";
this.toolsMenuGen.Size = new System.Drawing.Size(157, 22);
this.toolsMenuGen.Text = "Input Generator";
this.toolsMenuGen.Click += new System.EventHandler(this.toolsMenuGenerator_Click);
//
// toolsMenuCheck
//
this.toolsMenuCheck.Name = "toolsMenuCheck";
this.toolsMenuCheck.Size = new System.Drawing.Size(157, 22);
this.toolsMenuCheck.Text = "Check Mesh";
this.toolsMenuCheck.Click += new System.EventHandler(this.toolsMenuCheck_Click);
this.btnMesh.Enabled = false;
this.btnMesh.Location = new System.Drawing.Point(4, 44);
this.btnMesh.Name = "btnMesh";
this.btnMesh.Size = new System.Drawing.Size(130, 23);
this.btnMesh.TabIndex = 12;
this.btnMesh.Text = "Triangulate";
this.btnMesh.UseVisualStyleBackColor = true;
this.btnMesh.Click += new System.EventHandler(this.btnMesh_Click);
//
// renderControl1
//
@@ -931,6 +960,8 @@
this.splitContainer1.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
this.splitContainer1.ResumeLayout(false);
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.flatTabControl1.ResumeLayout(false);
this.tabPage1.ResumeLayout(false);
this.tabPage1.PerformLayout();
@@ -938,8 +969,6 @@
this.tabPage2.PerformLayout();
this.tabPage3.ResumeLayout(false);
this.tabPage3.PerformLayout();
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.ResumeLayout(false);
}
@@ -949,9 +978,9 @@
private System.Windows.Forms.SplitContainer splitContainer1;
private Controls.RendererControl renderControl1;
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.ToolStripMenuItem fileMenu;
private System.Windows.Forms.ToolStripMenuItem fileMenuOpen;
private System.Windows.Forms.ToolStripMenuItem fileMenuSave;
private System.Windows.Forms.ToolStripMenuItem menuFile;
private System.Windows.Forms.ToolStripMenuItem menuFileOpen;
private System.Windows.Forms.ToolStripMenuItem menuFileSave;
private Controls.DarkTabControl flatTabControl1;
private System.Windows.Forms.TabPage tabPage1;
private System.Windows.Forms.TabPage tabPage2;
@@ -985,15 +1014,15 @@
private System.Windows.Forms.Label label10;
private System.Windows.Forms.Label label17;
private System.Windows.Forms.Label label11;
private System.Windows.Forms.ToolStripMenuItem viewMenu;
private System.Windows.Forms.ToolStripMenuItem viewMenuVoronoi;
private System.Windows.Forms.ToolStripMenuItem menuView;
private System.Windows.Forms.ToolStripMenuItem menuViewVoronoi;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
private System.Windows.Forms.ToolStripMenuItem viewMenuLog;
private System.Windows.Forms.ToolStripMenuItem toolsMenu;
private System.Windows.Forms.ToolStripMenuItem toolsMenuGen;
private System.Windows.Forms.ToolStripMenuItem toolsMenuCheck;
private System.Windows.Forms.ToolStripMenuItem menuViewLog;
private System.Windows.Forms.ToolStripMenuItem menuTools;
private System.Windows.Forms.ToolStripMenuItem menuToolsGen;
private System.Windows.Forms.ToolStripMenuItem menuToolsCheck;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
private System.Windows.Forms.ToolStripMenuItem fileMenuQuit;
private System.Windows.Forms.ToolStripMenuItem menuFileQuit;
private System.Windows.Forms.Label label15;
private System.Windows.Forms.Label label19;
private System.Windows.Forms.Label label18;
@@ -1019,6 +1048,8 @@
private System.Windows.Forms.Label lbNumTri2;
private System.Windows.Forms.Label lbNumVert;
private System.Windows.Forms.Label lbNumVert2;
private System.Windows.Forms.Label label23;
private Controls.DarkCheckBox cbConformDel;
}
}
+53 -24
View File
@@ -181,18 +181,21 @@ namespace MeshExplorer
btnMesh.Text = "Triangulate";
btnSmooth.Enabled = false;
// Clear voronoi
menuViewVoronoi.Checked = false;
renderControl1.ShowVoronoi = false;
// Disable menu items
menuFileSave.Enabled = false;
menuFileExport.Enabled = false;
menuViewVoronoi.Enabled = false;
menuToolsCheck.Enabled = false;
// Render input
renderControl1.SetData(input);
// Update window caption
this.Text = "Triangle.NET - Mesh Explorer - " + settings.CurrentFile;
// Disable menu items
viewMenuVoronoi.Enabled = false;
// Clear voronoi
viewMenuVoronoi.Checked = false;
renderControl1.ShowVoronoi = false;
}
private void HandleMeshChange()
@@ -221,7 +224,10 @@ namespace MeshExplorer
lbAngleMax.Text = Util.AngleToString(stats.LargestAngle);
// Enable menu items
viewMenuVoronoi.Enabled = true;
menuFileSave.Enabled = true;
menuFileExport.Enabled = true;
menuViewVoronoi.Enabled = true;
menuToolsCheck.Enabled = true;
// Update quality
if (quality == null)
@@ -243,6 +249,9 @@ namespace MeshExplorer
// Render mesh
renderControl1.SetData(mesh, true);
// Update window caption
this.Text = "Triangle.NET - Mesh Explorer - " + settings.CurrentFile;
// Previous mesh stats
lbNumVert2.Text = "-";
lbNumTri2.Text = "-";
@@ -264,7 +273,10 @@ namespace MeshExplorer
lbAngleMax.Text = Util.AngleToString(stats.LargestAngle);
// Enable menu items
viewMenuVoronoi.Enabled = true;
menuFileSave.Enabled = true;
menuFileExport.Enabled = true;
menuViewVoronoi.Enabled = true;
menuToolsCheck.Enabled = true;
// Set refine mode
btnMesh.Enabled = true;
@@ -318,12 +330,13 @@ namespace MeshExplorer
settings.CurrentFile = Path.GetFileName(ofd.FileName);
HandleMeshImport();
btnSmooth.Enabled = true; // TODO: Remove
}
// else Message
// Update folder settings
settings.OfdFilterIndex = ofd.FilterIndex;
settings.OfdDirectory = Path.GetFullPath(ofd.FileName);
settings.OfdDirectory = Path.GetDirectoryName(ofd.FileName);
return;
}
@@ -342,7 +355,7 @@ namespace MeshExplorer
// Update folder settings
settings.OfdFilterIndex = ofd.FilterIndex;
settings.OfdDirectory = Path.GetFullPath(ofd.FileName);
settings.OfdDirectory = Path.GetDirectoryName(ofd.FileName);
}
}
@@ -406,6 +419,11 @@ namespace MeshExplorer
mesh = new Mesh();
if (cbConformDel.Checked)
{
mesh.SetOption(Options.ConformingDelaunay, true);
}
if (cbQuality.Checked)
{
mesh.SetOption(Options.Quality, true);
@@ -540,12 +558,12 @@ namespace MeshExplorer
#region Menu Handler
private void fileMenuOpen_Click(object sender, EventArgs e)
private void menuFileOpen_Click(object sender, EventArgs e)
{
Open();
}
private void fileMenuSave_Click(object sender, EventArgs ev)
private void menuFileSave_Click(object sender, EventArgs ev)
{
if (mesh != null)
{
@@ -553,12 +571,12 @@ namespace MeshExplorer
}
}
private void viewMenuLog_Click(object sender, EventArgs e)
private void menuViewLog_Click(object sender, EventArgs e)
{
ShowLog();
}
private void toolsMenuGenerator_Click(object sender, EventArgs e)
private void menuToolsGenerator_Click(object sender, EventArgs e)
{
if (frmGenerator == null || frmGenerator.IsDisposed)
{
@@ -576,7 +594,7 @@ namespace MeshExplorer
}
}
private void toolsMenuCheck_Click(object sender, EventArgs e)
private void menuToolsCheck_Click(object sender, EventArgs e)
{
if (mesh != null)
{
@@ -591,6 +609,17 @@ namespace MeshExplorer
{
FormExport export = new FormExport();
string file = settings.OfdDirectory;
if (!file.EndsWith("\\"))
{
file += "\\";
}
file += settings.CurrentFile;
export.ImageName = Path.ChangeExtension(file, ".png");
if (export.ShowDialog() == DialogResult.OK)
{
int format = export.ImageFormat;
@@ -616,17 +645,17 @@ namespace MeshExplorer
}
}
private void viewMenuVoronoi_Click(object sender, EventArgs e)
private void menuViewVoronoi_Click(object sender, EventArgs e)
{
viewMenuVoronoi.Checked = !viewMenuVoronoi.Checked;
renderControl1.ShowVoronoi = viewMenuVoronoi.Checked;
}
private void fileMenuQuit_Click(object sender, EventArgs e)
{
this.Close();
menuViewVoronoi.Checked = !menuViewVoronoi.Checked;
renderControl1.ShowVoronoi = menuViewVoronoi.Checked;
}
#endregion
private void menuFileQuit_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
@@ -29,7 +29,7 @@ namespace MeshExplorer.Generators
public int ParameterCount
{
get { return 1; }
get { return 3; }
}
public string ParameterDescription(int paramIndex)
@@ -39,7 +39,12 @@ namespace MeshExplorer.Generators
return "Number of points:";
}
return "";
if (paramIndex == 2)
{
return "Width:";
}
return "Height:";
}
public string ParameterDescription(int paramIndex, double paramValue)
@@ -57,6 +62,13 @@ namespace MeshExplorer.Generators
return numPoints.ToString();
}
if (paramIndex == 2 || paramIndex == 3)
{
int numPoints = (int)paramValue + 100;
return numPoints.ToString();
}
return "";
}
@@ -72,8 +84,8 @@ namespace MeshExplorer.Generators
InputGeometry input = new InputGeometry(numPoints);
int width = Util.Random.Next(100, 200);
int height = Util.Random.Next(100, 200);
int width = (int)param2 + 100;
int height = (int)param3 + 100;
for (int i = 0; i < numPoints; i++)
{
+1 -2
View File
@@ -1,7 +1,6 @@
// -----------------------------------------------------------------------
// <copyright file="EpsImage.cs" company="">
// John Burkardt, Florida State University
// http://people.sc.fsu.edu/~jburkardt/m_src/fem2d_poisson/
// Original Matlab code by John Burkardt, Florida State University
// </copyright>
// -----------------------------------------------------------------------
+13 -8
View File
@@ -67,6 +67,8 @@ namespace MeshExplorer.Rendering
this.Triangles = mesh.Triangles;
this.Segments = null;
int n = mesh.NumberOfVertices;
// Convert points to float
@@ -75,16 +77,19 @@ namespace MeshExplorer.Rendering
SetPoints(mesh.Vertices);
// Get segments
var segs = mesh.Segments;
List<Edge> segList = new List<Edge>(mesh.NumberOfSegments);
foreach (var seg in segs)
if (mesh.IsPolygon)
{
segList.Add(new Edge(seg.P0, seg.P1));
}
var segs = mesh.Segments;
this.Segments = segList.ToArray();
List<Edge> segList = new List<Edge>(mesh.NumberOfSegments);
foreach (var seg in segs)
{
segList.Add(new Edge(seg.P0, seg.P1));
}
this.Segments = segList.ToArray();
}
// Get edges (more efficient than rendering triangles)
EdgeEnumerator e = new EdgeEnumerator(mesh);
+5
View File
@@ -91,4 +91,9 @@ namespace TriangleNet
/// The type of the mesh vertex.
/// </summary>
public enum VertexType { InputVertex, SegmentVertex, FreeVertex, DeadVertex, UndeadVertex };
/// <summary>
/// Node renumbering algorithms.
/// </summary>
public enum NodeNumbering { Linear, CuthillMcKee };
}
+28 -3
View File
@@ -470,12 +470,37 @@ namespace TriangleNet
/// </summary>
public void Renumber()
{
int id = 0;
foreach (var item in this.vertices.Values)
this.Renumber(NodeNumbering.Linear);
}
/// <summary>
/// Renumber vertex and triangle id's.
/// </summary>
public void Renumber(NodeNumbering num)
{
int id;
if (num == NodeNumbering.Linear)
{
item.id = id++;
id = 0;
foreach (var item in this.vertices.Values)
{
item.id = id++;
}
}
else
{
//CuthillMcKee rcm = new CuthillMcKee();
//int[] perm_inv = rcm.Renumber(this);
//// Permute the node indices.
//foreach (var node in this.vertices.Values)
//{
// node.id = perm_inv[node.id];
//}
}
// Triangles will always be numbered from 0..n
id = 0;
foreach (var item in this.triangles.Values)
{
+4 -4
View File
@@ -181,7 +181,7 @@ namespace TriangleNet
// adjoining triangle whose pointer is larger (to ensure that
// each pair isn't tested twice).
shouldbedelaunay = (oppotri.triangle != Mesh.dummytri) &&
!Otri.IsDead(oppotri.triangle) && //(triangleloop.tri < oppotri.tri) &&
!Otri.IsDead(oppotri.triangle) && loop.triangle.id < oppotri.triangle.id &&
(triorg != mesh.infvertex1) && (triorg != mesh.infvertex2) &&
(triorg != mesh.infvertex3) &&
(tridest != mesh.infvertex1) && (tridest != mesh.infvertex2) &&
@@ -204,8 +204,8 @@ namespace TriangleNet
{
if (Primitives.NonRegular(triorg, tridest, triapex, oppoapex) > 0.0)
{
logger.Warning("Non-regular pair of triangles found (ID " + loop.triangle.id + ").",
"Quality.CheckDelaunay()");
logger.Warning(String.Format("Non-regular pair of triangles found (IDs {0}+{1}).",
loop.triangle.id, oppotri.triangle.id), "Quality.CheckDelaunay()");
horrors++;
}
}
@@ -1001,7 +1001,7 @@ namespace TriangleNet
logger.Warning("I ran out of Steiner points, but the mesh has encroached subsegments, "
+ "and therefore might not be truly Delaunay. If the Delaunay property is important "
+ "to you, try increasing the number of Steiner points",
+ "to you, try increasing the number of Steiner points.",
"Quality.EnforceQuality()");
}
}
+15 -1
View File
@@ -59,7 +59,8 @@ namespace TriangleNet.Tools
foreach (var v in mesh.vertices.Values)
{
if (v.type == VertexType.FreeVertex)
// TODO: Need a reliable way to check if a vertex is on a segment
if (v.type == VertexType.FreeVertex || v.Boundary == 0)
{
voronoi.Add(ConstructBvdCell(v));
}
@@ -70,6 +71,13 @@ namespace TriangleNet.Tools
}
}
/// <summary>
/// Tag all blind triangles.
/// </summary>
/// <remarks>
/// A triangle is said to be blind if the triangle and its circumcenter
/// lie on two different sides of a constrained edge.
/// </remarks>
private void TagBlindTriangles()
{
int blinded = 0;
@@ -153,6 +161,12 @@ namespace TriangleNet.Tools
blinded = 0;
}
/// <summary>
/// Check if given triangle is blinded by given segment.
/// </summary>
/// <param name="tri">Triangle.</param>
/// <param name="seg">Segments</param>
/// <returns>Returns true, if the triangle is blinded.</returns>
private bool TriangleIsBlinded(ref Otri tri, ref Osub seg)
{
Point cc, pt = new Point();