应用程序名称:ModelLines
Revit 平台:所有版本
Revit 版本:2011.0
首次发布于:2008.2
编程语言:C#
技能级别:初级
类别:元素
类型:外部命令
主题:显示和创建模型线。
摘要:
该示例演示如何使用 Revit API 获取所有种类的模型线,并如何创建模型线。
类:
Autodesk.Revit.UI.IExternalCommand
Autodesk.Revit.DB.ModelArc
Autodesk.Revit.DB.ModelLine
Autodesk.Revit.DB.ModelCurveArray
Autodesk.Revit.DB.ModelCurve
Autodesk.Revit.DB.SketchPlane
Autodesk.Revit.Creation.Application
Autodesk.Revit.DB.Arc
Autodesk.Revit.DB.XYZ
Autodesk.Revit.DB.Line
项目文件:
ModelLines.cs
该文件包含 ModelLines 类,它是主要的类,并负责显示每种模型线类型的数量,并使用 Revit API 为每种类型创建一个实例。
ModelLinesForm.cs
这是主窗体,显示所有模型线并允许用户创建模型线和草图平面。
描述:
- 获取列表中每种模型线类型的数量。可以通过迭代文档元素(如 ModelArc、ModelEllipse、ModelLine 等)来定位 ModelLines。
- 要创建 ModelArc 类型的模型线,请输入三个点来创建它。
- 要创建 ModelLine 类型的模型线,请输入两个点来创建它。
- 对于其他类型,请选择提供相应曲线的基本模型曲线,然后输入从所选基本模型曲线的偏移向量。
- 选择草图平面来放置创建的模型曲线,如果需要,您还可以创建一个新的草图平面。可以使用 Autodesk.Revit.Creation.Document 类中的 NewSketchPlane() 方法创建草图平面。
- 可以使用 Autodesk.Revit.Creation.Document 类中的 NewModelCurve() 和 NewModelCurveArray() 方法创建模型线。
说明:
1. 在 Revit 中绘制一些模型线。
2. 加载 ModelLines.dll 并运行该命令,它将获取 Revit 中的所有模型线并显示每种类型的数目。
3. 您可以通过在草图平面上输入一些信息来创建模型线类型。例如,输入三个点来创建一个 ModelArc 类型的模型线,然后单击“创建”按钮。
4. 您还可以使用“新建”按钮创建新的
源代码
完整的源代码请加入QQ群649037449,在群文件中下载RevitSDK.exe,解压后在文件夹中搜索本文中应用程序名称即可获得完整源码
ModelLines.cs
//
// (C) Copyright 2003-2019 by Autodesk, Inc.
//
// Permission to use, copy, modify, and distribute this software in
// object code form for any purpose and without fee is hereby granted,
// provided that the above copyright notice appears in all copies and
// that both that copyright notice and the limited warranty and
// restricted rights notice below appear in all supporting
// documentation.
//
// AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
// AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. AUTODESK, INC.
// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
// UNINTERRUPTED OR ERROR FREE.
//
// Use, duplication, or disclosure by the U.S. Government is subject to
// restrictions set forth in FAR 52.227-19 (Commercial Computer
// Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii)
// (Rights in Technical Data and Computer Software), as applicable.
//
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections.ObjectModel;
using System.Linq;
using Autodesk.Revit;
using Autodesk.Revit.DB;
namespace Revit.SDK.Samples.ModelLines.CS
{
/// <summary>
/// The main deal class, which takes charge of showing the number of each model line type
/// and creating one instance for each type using Revit API
/// </summary>
public class ModelLines
{
// Private members
Autodesk.Revit.UI.UIApplication m_revit; // Store the reference of the application in revit
Autodesk.Revit.Creation.Application m_createApp;// Store the create Application reference
Autodesk.Revit.Creation.Document m_createDoc; // Store the create Document reference
ModelCurveArray m_lineArray; // Store the ModelLine references
ModelCurveArray m_arcArray; // Store the ModelArc references
ModelCurveArray m_ellipseArray; // Store the ModelEllipse references
ModelCurveArray m_hermiteArray; // Store the ModelHermiteSpline references
ModelCurveArray m_nurbArray; // Store the ModelNurbSpline references
List<SketchPlane> m_sketchArray; // Store the SketchPlane references
List<ModelCurveCounter> m_informationMap; // Store the number of each model line type
#region Properties
/// <summary>
/// The type-number map, store the number of each model line type
/// </summary>
public ReadOnlyCollection<ModelCurveCounter> InformationMap
{
get
{
return new ReadOnlyCollection<ModelCurveCounter>(m_informationMap);
}
}
/// <summary>
/// Get the id information of all ModelEllipses in revit,
/// which displayed this in elementIdComboBox when ellipseRadioButton checked
/// </summary>
public ReadOnlyCollection<IdInfo> EllispeIDArray
{
get
{
// Create a new list
List<IdInfo> idArray = new List<IdInfo>();
// Add all ModelEllipses' id information into the list
foreach (ModelCurve ellipse in m_ellipseArray)
{
IdInfo info = new IdInfo("ModelEllipse", ellipse.Id.IntegerValue);
idArray.Add(info);
}
// return a read only list
return new ReadOnlyCollection<IdInfo>(idArray);
}
}
/// <summary>
/// Get the id information of all ModelHermiteSpline in revit,
/// which displayed this in elementIdComboBox when hermiteSplineRadioButton checked
/// </summary>
public ReadOnlyCollection<IdInfo> HermiteSplineIDArray
{
get
{
// Create a new list
List<IdInfo> idArray = new List<IdInfo>();
// Add all ModelHermiteSplines' id information into the list
foreach (ModelCurve hermite in m_hermiteArray)
{
IdInfo info = new IdInfo("ModelHermiteSpline", hermite.Id.IntegerValue);
idArray.Add(info);
}
// return a read only list
return new ReadOnlyCollection<IdInfo>(idArray);
}
}
/// <summary>
/// Get the id information of all ModelNurbSpline in revit,
/// which displayed this in elementIdComboBox when NurbSplineRadioButton checked
/// </summary>
public ReadOnlyCollection<IdInfo> NurbSplineIDArray
{
get
{
// Create a new list
List<IdInfo> idArray = new List<IdInfo>();
// Add all ModelNurbSplines' id information into the list
foreach (ModelCurve nurb in m_nurbArray)
{
IdInfo info = new IdInfo("ModelNurbSpline", nurb.Id.IntegerValue);
idArray.Add(info);
}
// return a read only list
return new ReadOnlyCollection<IdInfo>(idArray);
}
}
/// <summary>
/// Allow the user to get all sketch plane in revit
/// </summary>
public ReadOnlyCollection<IdInfo> SketchPlaneIDArray
{
get
{
// Create a new list
List<IdInfo> idArray = new List<IdInfo>();
// Add all SketchPlane' id information into the list
foreach (SketchPlane sketch in m_sketchArray)
{
IdInfo info = new IdInfo("SketchPlane", sketch.Id.IntegerValue);
idArray.Add(info);
}
// return a read only list
return new ReadOnlyCollection<IdInfo>(idArray);
}
}
#endregion
#region Public Methods
/// <summary>
/// The default constructor
/// </summary>
/// <param name="revit">The reference of the application in revit</param>
public ModelLines(Autodesk.Revit.UI.UIApplication revit)
{
// Store the reference of the application for further use.
m_revit = revit;
// Get the create references
m_createApp = m_revit.Application.Create; // Creation.Application
m_createDoc = m_revit.ActiveUIDocument.Document.Create;// Creation.Document
// Construct all the ModelCurveArray instances for model lines
m_lineArray = new ModelCurveArray();
m_arcArray = new ModelCurveArray();
m_ellipseArray = new ModelCurveArray();
m_hermiteArray = new ModelCurveArray();
m_nurbArray = new ModelCurveArray();
// Construct the sketch plane list data
m_sketchArray = new List<SketchPlane>();
// Construct the information list data
m_informationMap = new List<ModelCurveCounter>();
}
/// <summary>
/// This is the main deal method in this example.
/// </summary>
public void Run()
{
// Get all sketch plane in revit
GetSketchPlane();
// Get all model lines in revit
GetModelLines();
// Initialize the InformationMap property for DataGridView display
InitDisplayInformation();
// Display the form and allow the user to create one of each model line in revit
using (ModelLinesForm displayForm = new ModelLinesForm(this))
{
displayForm.ShowDialog();
}
}
/// <summary>
/// Create a new sketch plane which all model lines are placed on.
/// </summary>
/// <param name="normal"></param>
/// <param name="origin"></param>
public void CreateSketchPlane(Autodesk.Revit.DB.XYZ normal, Autodesk.Revit.DB.XYZ origin)
{
try
{
// First create a Geometry.Plane which need in NewSketchPlane() method
Plane geometryPlane = Plane.CreateByNormalAndOrigin(normal, origin);
if (null == geometryPlane) // assert the creation is successful
{
throw new Exception("Create the geometry plane failed.");
}
// Then create a sketch plane using the Geometry.Plane
SketchPlane plane = SketchPlane.Create(m_revit.ActiveUIDocument.Document, geometryPlane);
if (null == plane) // assert the creation is successful
{
throw new Exception("Create the sketch plane failed.");
}
// Finally add the created plane into the sketch plane array
m_sketchArray.Add(plane);
}
catch (Exception ex)
{
throw new Exception("Can not create the sketch plane, message: " + ex.Message);
}
}
/// <summary>
/// Create the line(ModelLine)
/// </summary>
/// <param name="sketchId">the id of the sketch plane</param>
/// <param name="startPoint">the start point of the line</param>
/// <param name="endPoint">the end point of the line</param>
public void CreateLine(int sketchId, Autodesk.Revit.DB.XYZ startPoint, Autodesk.Revit.DB.XYZ endPoint)
{
try
{
// First get the sketch plane by the giving element id.
SketchPlane workPlane = GetSketchPlaneById(sketchId);
// Additional check: start point should not equal end point
if (startPoint.Equals(endPoint))
{
throw new ArgumentException("Two points should not be the same.");
}
// create geometry line
Line geometryLine = Line.CreateBound(startPoint, endPoint);
if (null == geometryLine) // assert the creation is successful
{
throw new Exception("Create the geometry line failed.");
}
// create the ModelLine
ModelLine line = m_createDoc.NewModelCurve(geometryLine, workPlane) as ModelLine;
if (null == line) // assert the creation is successful
{
throw new Exception("Create the ModelLine failed.");
}
// Add the created ModelLine into the line array
m_lineArray.Append(line);
// Finally refresh information map.
RefreshInformationMap();
}
catch (Exception ex)
{
throw new Exception("Can not create the ModelLine, message: " + ex.Message);
}
}
/// <summary>
/// Create the arc(ModelArc)
/// </summary>
/// <param name="sketchId">the id of the sketch plane</param>
/// <param name="startPoint">the start point of the arc</param>
/// <param name="endPoint">the end point of the arc</param>
/// <param name="thirdPoint">the third point which is on the arc</param>
public void CreateArc(int sketchId, Autodesk.Revit.DB.XYZ startPoint, Autodesk.Revit.DB.XYZ endPoint, Autodesk.Revit.DB.XYZ thirdPoint)
{
try
{
// First get the sketch plane by the giving element id.
SketchPlane workPlane = GetSketchPlaneById(sketchId);
// Additional check: the start, end and third point should not be the same
if (startPoint.Equals(endPoint) || startPoint.Equals(thirdPoint)
|| endPoint.Equals(thirdPoint))
{
throw new ArgumentException("Three points should not be the same.");
}
// create the geometry arc
Arc geometryArc = Arc.Create(startPoint, endPoint, thirdPoint);
if (null == geometryArc) // assert the creation is successful
{
throw new Exception("Create the geometry arc failed.");
}
// create the ModelArc
ModelArc arc = m_createDoc.NewModelCurve(geometryArc, workPlane) as ModelArc;
if (null == arc) // assert the creation is successful
{
throw new Exception("Create the ModelArc failed.");
}
// Add the created ModelArc into the arc array
m_arcArray.Append(arc);
// Finally refresh information map.
RefreshInformationMap();
}
catch (Exception ex)
{
throw new Exception("Can not create the ModelArc, message: " + ex.Message);
}
}
/// <summary>
/// Create other lines, including Ellipse, HermiteSpline and NurbSpline
/// </summary>
/// <param name="sketchId">the id of the sketch plane</param>
/// <param name="elementId">the element id which copy the curve from</param>
/// <param name="offsetPoint">the offset direction from the copied line</param>
public void CreateOthers(int sketchId, int elementId, Autodesk.Revit.DB.XYZ offsetPoint)
{
// First get the sketch plane by the giving element id.
SketchPlane workPlane = GetSketchPlaneById(sketchId);
// Because the geometry of these lines can't be created by API,
// use an existing geometry to create ModelEllipse, ModelHermiteSpline, ModelNurbSpline
// and then move a bit to make the user see the creation distinctly
// This method use NewModelCurveArray() method to create model lines
CurveArray curves = m_createApp.NewCurveArray();// create a geometry curve array
// Get the Autodesk.Revit.DB.ElementId which used to get the corresponding element
ModelCurve selected = GetElementById(elementId) as ModelCurve;
if (null == selected)
{
throw new Exception("Don't have the element you select");
}
// add the geometry curve of the element
curves.Append(selected.GeometryCurve); // add the geometry ellipse
// Create the model line
ModelCurveArray modelCurves = m_createDoc.NewModelCurveArray(curves, workPlane);
if (null == modelCurves || 1 != modelCurves.Size) // assert the creation is successful
{
throw new Exception("Create the ModelCurveArray failed.");
}
// Offset the create model lines in order to differentiate the existing model lines
foreach (ModelCurve m in modelCurves)
{
ElementTransformUtils.MoveElement(m.Document, m.Id, offsetPoint); // move the lines
}
// Add the created model lines into corresponding array
foreach (ModelCurve m in modelCurves)
{
switch (m.GetType().Name)
{
case "ModelEllipse": // If the line is Ellipse
m_ellipseArray.Append(m); // Add to Ellipse array
break;
case "ModelHermiteSpline": // If the line is HermiteSpline
m_hermiteArray.Append(m); // Add to HermiteSpline array
break;
case "ModelNurbSpline": // If the line is NurbSpline
m_nurbArray.Append(m); // Add to NurbSpline
break;
default:
break;
}
}
// Finally refresh information map.
RefreshInformationMap();
}
#endregion
#region Private Methods
/// <summary>
/// Get all model lines in current document of revit, and store them into the arrays
/// </summary>
void GetModelLines()
{
// Search all elements in current document and find all model lines
// ModelLine is not supported by ElementClassFilter/OfClass,
// so use its base type to find all CurveElement and then process the results further to find modelline
IEnumerable<ModelCurve> modelCurves = from elem in ((new FilteredElementCollector(m_revit.ActiveUIDocument.Document)).OfClass(typeof(CurveElement)).ToElements())
let modelCurve = elem as ModelCurve
where modelCurve != null
select modelCurve;
foreach (ModelCurve modelCurve in modelCurves)
{
// Get all the ModelLines references
String typeName = modelCurve.GetType().Name;
switch (typeName)
{
case "ModelLine": // Get all the ModelLine references
m_lineArray.Append(modelCurve);
break;
case "ModelArc": // Get all the ModelArc references
m_arcArray.Append(modelCurve);
break;
case "ModelEllipse":// Get all the ModelEllipse references
m_ellipseArray.Append(modelCurve);
break;
case "ModelHermiteSpline": // Get all the ModelHermiteSpline references
m_hermiteArray.Append(modelCurve);
break;
case "ModelNurbSpline": // Get all the ModelNurbSpline references
m_nurbArray.Append(modelCurve);
break;
default: // If not a model curve, just break
break;
}
}
}
/// <summary>
/// Get all sketch planes in revit
/// </summary>
void GetSketchPlane()
{
// Search all elements in current document and find all sketch planes
IList<Element> elements = (new FilteredElementCollector(m_revit.ActiveUIDocument.Document)).OfClass(typeof(SketchPlane)).ToElements();
foreach (Element elem in elements)
{
SketchPlane sketch = elem as SketchPlane;
if (null != sketch)
{
// Add all the sketchPlane into the array
m_sketchArray.Add(sketch);
}
}
}
/// <summary>
/// Initiate the information map which will display in information DataGridView
/// </summary>
void InitDisplayInformation()
{
// First add the type name into the m_information data map
m_informationMap.Add(new ModelCurveCounter("ModelArc"));
m_informationMap.Add(new ModelCurveCounter("ModelLine"));
m_informationMap.Add(new ModelCurveCounter("ModelEllipse"));
m_informationMap.Add(new ModelCurveCounter("ModelHermiteSpline"));
m_informationMap.Add(new ModelCurveCounter("ModelNurbSpline"));
// Use RefreshInformationMap to refresh the number of each model line type
RefreshInformationMap();
}
/// <summary>
/// Refresh the m_informationMap member, include the number of each model line type
/// </summary>
public void RefreshInformationMap()
{
// Search the model line types in the map, and refresh the number of each type
foreach (ModelCurveCounter info in m_informationMap)
{
switch (info.TypeName)
{
case "ModelArc": // if the type is ModelAre
info.Number = m_arcArray.Size; // refresh the number of arc
break;
case "ModelLine": // if the type is ModelLine
info.Number = m_lineArray.Size; // refresh the number of line
break;
case "ModelEllipse":// If the type is ModelEllipse
info.Number = m_ellipseArray.Size; // refresh the number of ellipse
break;
case "ModelHermiteSpline": // If the type is ModelHermiteSpline
info.Number = m_hermiteArray.Size; // refresh the number of HermiteSpline
break;
case "ModelNurbSpline": // If the type is ModelNurbSpline
info.Number = m_nurbArray.Size; // refresh the number of NurbSpline
break;
default:
break;
}
}
}
/// <summary>
/// Use Autodesk.Revit.DB.ElementId to get the corresponding element
/// </summary>
/// <param name="id">the element id value</param>
/// <returns>the corresponding element</returns>
Autodesk.Revit.DB.Element GetElementById(int id)
{
// Create a Autodesk.Revit.DB.ElementId data
Autodesk.Revit.DB.ElementId elementId = new Autodesk.Revit.DB.ElementId(id);
// Get the corresponding element
return m_revit.ActiveUIDocument.Document.GetElement(elementId);
}
/// <summary>
/// Use Autodesk.Revit.DB.ElementId to get the corresponding sketch plane
/// </summary>
/// <param name="id">the element id value</param>
/// <returns>the corresponding sketch plane</returns>
SketchPlane GetSketchPlaneById(int id)
{
// First get the sketch plane by the giving element id.
SketchPlane workPlane = GetElementById(id) as SketchPlane;
if (null == workPlane)
{
throw new Exception("Don't have the work plane you select.");
}
return workPlane;
}
#endregion
}
}
ModelLinesForm.cs
//
// (C) Copyright 2003-2019 by Autodesk, Inc.
//
// Permission to use, copy, modify, and distribute this software in
// object code form for any purpose and without fee is hereby granted,
// provided that the above copyright notice appears in all copies and
// that both that copyright notice and the limited warranty and
// restricted rights notice below appear in all supporting
// documentation.
//
// AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
// AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. AUTODESK, INC.
// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
// UNINTERRUPTED OR ERROR FREE.
//
// Use, duplication, or disclosure by the U.S. Government is subject to
// restrictions set forth in FAR 52.227-19 (Commercial Computer
// Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii)
// (Rights in Technical Data and Computer Software), as applicable.
//
namespace Revit.SDK.Samples.ModelLines.CS
{
/// <summary>
/// The Mail Form
/// </summary>
partial class ModelLinesForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.informationGroupBox = new System.Windows.Forms.GroupBox();
this.informationDataGridView = new System.Windows.Forms.DataGridView();
this.typeColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.numberColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.otherPanel = new System.Windows.Forms.Panel();
this.offsetPointUserControl = new Revit.SDK.Samples.ModelLines.CS.PointUserControl();
this.elementIdComboBox = new System.Windows.Forms.ComboBox();
this.offsetLabel = new System.Windows.Forms.Label();
this.copyFromLabel = new System.Windows.Forms.Label();
this.otherInfoLabel = new System.Windows.Forms.Label();
this.creationGroupBox = new System.Windows.Forms.GroupBox();
this.createSketchPlaneButton = new System.Windows.Forms.Button();
this.sketchPlaneComboBox = new System.Windows.Forms.ComboBox();
this.sketchPlaneLabel = new System.Windows.Forms.Label();
this.NurbSplineRadioButton = new System.Windows.Forms.RadioButton();
this.hermiteSplineRadioButton = new System.Windows.Forms.RadioButton();
this.ellipseRadioButton = new System.Windows.Forms.RadioButton();
this.arcRadioButton = new System.Windows.Forms.RadioButton();
this.lineRadioButton = new System.Windows.Forms.RadioButton();
this.lineArcPanel = new System.Windows.Forms.Panel();
this.lineArcInfoLabel = new System.Windows.Forms.Label();
this.thirdPointUserControl = new Revit.SDK.Samples.ModelLines.CS.PointUserControl();
this.secondPointUserControl = new Revit.SDK.Samples.ModelLines.CS.PointUserControl();
this.thirdPointLabel = new System.Windows.Forms.Label();
this.secondPointLabel = new System.Windows.Forms.Label();
this.firstPointLabel = new System.Windows.Forms.Label();
this.firstPointUserControl = new Revit.SDK.Samples.ModelLines.CS.PointUserControl();
this.createButton = new System.Windows.Forms.Button();
this.closeButton = new System.Windows.Forms.Button();
this.informationGroupBox.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.informationDataGridView)).BeginInit();
this.otherPanel.SuspendLayout();
this.creationGroupBox.SuspendLayout();
this.lineArcPanel.SuspendLayout();
this.SuspendLayout();
//
// informationGroupBox
//
this.informationGroupBox.Controls.Add(this.informationDataGridView);
this.informationGroupBox.Location = new System.Drawing.Point(12, 12);
this.informationGroupBox.Name = "informationGroupBox";
this.informationGroupBox.Size = new System.Drawing.Size(481, 161);
this.informationGroupBox.TabIndex = 1;
this.informationGroupBox.TabStop = false;
this.informationGroupBox.Text = "Model Lines Information";
//
// informationDataGridView
//
this.informationDataGridView.AllowUserToAddRows = false;
this.informationDataGridView.AllowUserToDeleteRows = false;
this.informationDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.informationDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.typeColumn,
this.numberColumn});
this.informationDataGridView.Location = new System.Drawing.Point(6, 19);
this.informationDataGridView.Name = "informationDataGridView";
this.informationDataGridView.ReadOnly = true;
this.informationDataGridView.RowHeadersVisible = false;
this.informationDataGridView.Size = new System.Drawing.Size(469, 133);
this.informationDataGridView.TabIndex = 1;
//
// typeColumn
//
this.typeColumn.HeaderText = "Type";
this.typeColumn.Name = "typeColumn";
this.typeColumn.ReadOnly = true;
this.typeColumn.Width = 150;
//
// numberColumn
//
this.numberColumn.HeaderText = "Number";
this.numberColumn.Name = "numberColumn";
this.numberColumn.ReadOnly = true;
this.numberColumn.Width = 150;
//
// otherPanel
//
this.otherPanel.Controls.Add(this.offsetPointUserControl);
this.otherPanel.Controls.Add(this.elementIdComboBox);
this.otherPanel.Controls.Add(this.offsetLabel);
this.otherPanel.Controls.Add(this.copyFromLabel);
this.otherPanel.Controls.Add(this.otherInfoLabel);
this.otherPanel.Location = new System.Drawing.Point(7, 19);
this.otherPanel.Name = "otherPanel";
this.otherPanel.Size = new System.Drawing.Size(346, 117);
this.otherPanel.TabIndex = 4;
this.otherPanel.Visible = false;
//
// offsetPointUserControl
//
this.offsetPointUserControl.Location = new System.Drawing.Point(118, 81);
this.offsetPointUserControl.Name = "offsetPointUserControl";
this.offsetPointUserControl.Size = new System.Drawing.Size(213, 28);
this.offsetPointUserControl.TabIndex = 3;
//
// elementIdComboBox
//
this.elementIdComboBox.FormattingEnabled = true;
this.elementIdComboBox.Location = new System.Drawing.Point(117, 39);
this.elementIdComboBox.Name = "elementIdComboBox";
this.elementIdComboBox.Size = new System.Drawing.Size(213, 21);
this.elementIdComboBox.TabIndex = 4;
//
// offsetLabel
//
this.offsetLabel.AutoSize = true;
this.offsetLabel.Location = new System.Drawing.Point(24, 87);
this.offsetLabel.Name = "offsetLabel";
this.offsetLabel.Size = new System.Drawing.Size(38, 13);
this.offsetLabel.TabIndex = 2;
this.offsetLabel.Text = "Offset:";
//
// copyFromLabel
//
this.copyFromLabel.AutoSize = true;
this.copyFromLabel.Location = new System.Drawing.Point(24, 42);
this.copyFromLabel.Name = "copyFromLabel";
this.copyFromLabel.Size = new System.Drawing.Size(82, 13);
this.copyFromLabel.TabIndex = 1;
this.copyFromLabel.Text = "Use curve from:";
//
// otherInfoLabel
//
this.otherInfoLabel.AutoSize = true;
this.otherInfoLabel.Location = new System.Drawing.Point(3, 12);
this.otherInfoLabel.Name = "otherInfoLabel";
this.otherInfoLabel.Size = new System.Drawing.Size(145, 13);
this.otherInfoLabel.TabIndex = 0;
this.otherInfoLabel.Text = "New ellipse need information:";
//
// creationGroupBox
//
this.creationGroupBox.Controls.Add(this.createSketchPlaneButton);
this.creationGroupBox.Controls.Add(this.sketchPlaneComboBox);
this.creationGroupBox.Controls.Add(this.sketchPlaneLabel);
this.creationGroupBox.Controls.Add(this.NurbSplineRadioButton);
this.creationGroupBox.Controls.Add(this.hermiteSplineRadioButton);
this.creationGroupBox.Controls.Add(this.ellipseRadioButton);
this.creationGroupBox.Controls.Add(this.arcRadioButton);
this.creationGroupBox.Controls.Add(this.lineRadioButton);
this.creationGroupBox.Controls.Add(this.otherPanel);
this.creationGroupBox.Controls.Add(this.lineArcPanel);
this.creationGroupBox.Location = new System.Drawing.Point(12, 179);
this.creationGroupBox.Name = "creationGroupBox";
this.creationGroupBox.Size = new System.Drawing.Size(481, 167);
this.creationGroupBox.TabIndex = 3;
this.creationGroupBox.TabStop = false;
this.creationGroupBox.Text = "Model Lines Creation";
//
// createSketchPlaneButton
//
this.createSketchPlaneButton.Location = new System.Drawing.Point(294, 139);
this.createSketchPlaneButton.Name = "createSketchPlaneButton";
this.createSketchPlaneButton.Size = new System.Drawing.Size(44, 23);
this.createSketchPlaneButton.TabIndex = 5;
this.createSketchPlaneButton.Text = "&New";
this.createSketchPlaneButton.UseVisualStyleBackColor = true;
this.createSketchPlaneButton.Click += new System.EventHandler(this.createSketchPlaneButton_Click);
//
// sketchPlaneComboBox
//
this.sketchPlaneComboBox.FormattingEnabled = true;
this.sketchPlaneComboBox.Location = new System.Drawing.Point(119, 139);
this.sketchPlaneComboBox.Name = "sketchPlaneComboBox";
this.sketchPlaneComboBox.Size = new System.Drawing.Size(162, 21);
this.sketchPlaneComboBox.TabIndex = 4;
//
// sketchPlaneLabel
//
this.sketchPlaneLabel.AutoSize = true;
this.sketchPlaneLabel.Location = new System.Drawing.Point(10, 144);
this.sketchPlaneLabel.Name = "sketchPlaneLabel";
this.sketchPlaneLabel.Size = new System.Drawing.Size(74, 13);
this.sketchPlaneLabel.TabIndex = 18;
this.sketchPlaneLabel.Text = "Sketch Plane:";
//
// NurbSplineRadioButton
//
this.NurbSplineRadioButton.AutoSize = true;
this.NurbSplineRadioButton.Location = new System.Drawing.Point(359, 140);
this.NurbSplineRadioButton.Name = "NurbSplineRadioButton";
this.NurbSplineRadioButton.Size = new System.Drawing.Size(106, 17);
this.NurbSplineRadioButton.TabIndex = 10;
this.NurbSplineRadioButton.TabStop = true;
this.NurbSplineRadioButton.Text = "ModelNurbSpline";
this.NurbSplineRadioButton.UseVisualStyleBackColor = true;
this.NurbSplineRadioButton.CheckedChanged += new System.EventHandler(this.NurbSplineRadioButton_CheckedChanged);
//
// hermiteSplineRadioButton
//
this.hermiteSplineRadioButton.AutoSize = true;
this.hermiteSplineRadioButton.Location = new System.Drawing.Point(359, 111);
this.hermiteSplineRadioButton.Name = "hermiteSplineRadioButton";
this.hermiteSplineRadioButton.Size = new System.Drawing.Size(119, 17);
this.hermiteSplineRadioButton.TabIndex = 9;
this.hermiteSplineRadioButton.TabStop = true;
this.hermiteSplineRadioButton.Text = "ModelHermiteSpline";
this.hermiteSplineRadioButton.UseVisualStyleBackColor = true;
this.hermiteSplineRadioButton.CheckedChanged += new System.EventHandler(this.hermiteSplineRadioButton_CheckedChanged);
//
// ellipseRadioButton
//
this.ellipseRadioButton.AutoSize = true;
this.ellipseRadioButton.Location = new System.Drawing.Point(359, 82);
this.ellipseRadioButton.Name = "ellipseRadioButton";
this.ellipseRadioButton.Size = new System.Drawing.Size(84, 17);
this.ellipseRadioButton.TabIndex = 8;
this.ellipseRadioButton.TabStop = true;
this.ellipseRadioButton.Text = "ModelEllipse";
this.ellipseRadioButton.UseVisualStyleBackColor = true;
this.ellipseRadioButton.CheckedChanged += new System.EventHandler(this.ellipseRadioButton_CheckedChanged);
//
// arcRadioButton
//
this.arcRadioButton.AutoSize = true;
this.arcRadioButton.Location = new System.Drawing.Point(359, 24);
this.arcRadioButton.Name = "arcRadioButton";
this.arcRadioButton.Size = new System.Drawing.Size(70, 17);
this.arcRadioButton.TabIndex = 6;
this.arcRadioButton.TabStop = true;
this.arcRadioButton.Text = "ModelArc";
this.arcRadioButton.UseVisualStyleBackColor = true;
this.arcRadioButton.CheckedChanged += new System.EventHandler(this.arcRadioButton_CheckedChanged);
//
// lineRadioButton
//
this.lineRadioButton.AutoSize = true;
this.lineRadioButton.Location = new System.Drawing.Point(359, 53);
this.lineRadioButton.Name = "lineRadioButton";
this.lineRadioButton.Size = new System.Drawing.Size(74, 17);
this.lineRadioButton.TabIndex = 7;
this.lineRadioButton.TabStop = true;
this.lineRadioButton.Text = "ModelLine";
this.lineRadioButton.UseVisualStyleBackColor = true;
this.lineRadioButton.CheckedChanged += new System.EventHandler(this.lineRadioButton_CheckedChanged);
//
// lineArcPanel
//
this.lineArcPanel.Controls.Add(this.lineArcInfoLabel);
this.lineArcPanel.Controls.Add(this.thirdPointUserControl);
this.lineArcPanel.Controls.Add(this.secondPointUserControl);
this.lineArcPanel.Controls.Add(this.thirdPointLabel);
this.lineArcPanel.Controls.Add(this.secondPointLabel);
this.lineArcPanel.Controls.Add(this.firstPointLabel);
this.lineArcPanel.Controls.Add(this.firstPointUserControl);
this.lineArcPanel.Location = new System.Drawing.Point(7, 19);
this.lineArcPanel.Name = "lineArcPanel";
this.lineArcPanel.Size = new System.Drawing.Size(346, 117);
this.lineArcPanel.TabIndex = 5;
this.lineArcPanel.Visible = false;
//
// lineArcInfoLabel
//
this.lineArcInfoLabel.AutoSize = true;
this.lineArcInfoLabel.Location = new System.Drawing.Point(3, 12);
this.lineArcInfoLabel.Name = "lineArcInfoLabel";
this.lineArcInfoLabel.Size = new System.Drawing.Size(131, 13);
this.lineArcInfoLabel.TabIndex = 6;
this.lineArcInfoLabel.Text = "New arc need information:";
//
// thirdPointUserControl
//
this.thirdPointUserControl.Location = new System.Drawing.Point(118, 92);
this.thirdPointUserControl.Name = "thirdPointUserControl";
this.thirdPointUserControl.Size = new System.Drawing.Size(213, 22);
this.thirdPointUserControl.TabIndex = 16;
//
// secondPointUserControl
//
this.secondPointUserControl.Location = new System.Drawing.Point(118, 63);
this.secondPointUserControl.Name = "secondPointUserControl";
this.secondPointUserControl.Size = new System.Drawing.Size(213, 25);
this.secondPointUserControl.TabIndex = 15;
//
// thirdPointLabel
//
this.thirdPointLabel.AutoSize = true;
this.thirdPointLabel.Location = new System.Drawing.Point(24, 96);
this.thirdPointLabel.Name = "thirdPointLabel";
this.thirdPointLabel.Size = new System.Drawing.Size(61, 13);
this.thirdPointLabel.TabIndex = 13;
this.thirdPointLabel.Text = "Third Point:";
//
// secondPointLabel
//
this.secondPointLabel.AutoSize = true;
this.secondPointLabel.Location = new System.Drawing.Point(24, 67);
this.secondPointLabel.Name = "secondPointLabel";
this.secondPointLabel.Size = new System.Drawing.Size(74, 13);
this.secondPointLabel.TabIndex = 12;
this.secondPointLabel.Text = "Second Point:";
//
// firstPointLabel
//
this.firstPointLabel.AutoSize = true;
this.firstPointLabel.Location = new System.Drawing.Point(24, 42);
this.firstPointLabel.Name = "firstPointLabel";
this.firstPointLabel.Size = new System.Drawing.Size(56, 13);
this.firstPointLabel.TabIndex = 11;
this.firstPointLabel.Text = "First Point:";
//
// firstPointUserControl
//
this.firstPointUserControl.Location = new System.Drawing.Point(118, 35);
this.firstPointUserControl.Name = "firstPointUserControl";
this.firstPointUserControl.Size = new System.Drawing.Size(213, 25);
this.firstPointUserControl.TabIndex = 2;
//
// createButton
//
this.createButton.Location = new System.Drawing.Point(337, 352);
this.createButton.Name = "createButton";
this.createButton.Size = new System.Drawing.Size(75, 23);
this.createButton.TabIndex = 11;
this.createButton.Text = "C&reate";
this.createButton.UseVisualStyleBackColor = true;
this.createButton.Click += new System.EventHandler(this.createButton_Click);
//
// closeButton
//
this.closeButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.closeButton.Location = new System.Drawing.Point(418, 352);
this.closeButton.Name = "closeButton";
this.closeButton.Size = new System.Drawing.Size(75, 23);
this.closeButton.TabIndex = 12;
this.closeButton.Text = "&Close";
this.closeButton.UseVisualStyleBackColor = true;
this.closeButton.Click += new System.EventHandler(this.closeButton_Click);
//
// ModelLinesForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.closeButton;
this.ClientSize = new System.Drawing.Size(506, 382);
this.Controls.Add(this.closeButton);
this.Controls.Add(this.createButton);
this.Controls.Add(this.creationGroupBox);
this.Controls.Add(this.informationGroupBox);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "ModelLinesForm";
this.ShowInTaskbar = false;
this.Text = "Model Lines";
this.informationGroupBox.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.informationDataGridView)).EndInit();
this.otherPanel.ResumeLayout(false);
this.otherPanel.PerformLayout();
this.creationGroupBox.ResumeLayout(false);
this.creationGroupBox.PerformLayout();
this.lineArcPanel.ResumeLayout(false);
this.lineArcPanel.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.GroupBox informationGroupBox;
private System.Windows.Forms.DataGridView informationDataGridView;
private System.Windows.Forms.DataGridViewTextBoxColumn typeColumn;
private System.Windows.Forms.DataGridViewTextBoxColumn numberColumn;
private System.Windows.Forms.GroupBox creationGroupBox;
private System.Windows.Forms.Button createButton;
private System.Windows.Forms.Button closeButton;
private System.Windows.Forms.Panel lineArcPanel;
private System.Windows.Forms.Label thirdPointLabel;
private System.Windows.Forms.Label secondPointLabel;
private System.Windows.Forms.Label firstPointLabel;
private System.Windows.Forms.Panel otherPanel;
private System.Windows.Forms.Label otherInfoLabel;
private System.Windows.Forms.Label offsetLabel;
private System.Windows.Forms.Label copyFromLabel;
private System.Windows.Forms.ComboBox elementIdComboBox;
private System.Windows.Forms.RadioButton NurbSplineRadioButton;
private System.Windows.Forms.RadioButton hermiteSplineRadioButton;
private System.Windows.Forms.RadioButton ellipseRadioButton;
private System.Windows.Forms.RadioButton arcRadioButton;
private System.Windows.Forms.RadioButton lineRadioButton;
private PointUserControl offsetPointUserControl;
private PointUserControl thirdPointUserControl;
private PointUserControl secondPointUserControl;
private PointUserControl firstPointUserControl;
private System.Windows.Forms.Button createSketchPlaneButton;
private System.Windows.Forms.ComboBox sketchPlaneComboBox;
private System.Windows.Forms.Label sketchPlaneLabel;
private System.Windows.Forms.Label lineArcInfoLabel;
}
}
版权所有 :无锡模信建筑科技有限公司 苏ICP备2021028830号-1 BIM建模|BIM技术应用|BIM软件开发
联系地址:江苏省无锡市新吴区龙山路4号B座705 手机:18761516598