?? dxfpolybezier.cs
字號:
?using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DXFFile
{
public class DXFPolyBezier :DXFPolyline
{
// Methods
public DXFPolyBezier()
{
}
public DXFPolyBezier(DXFData aData, int aIndex)
: base(aData, aIndex)
{
}
public override void ExportAsDXF(DXFExport ADXFExport)
{
if (((base.data.points.Count - 4) % 3) != 0)
{
base.ExportAsDXF(ADXFExport);
}
else
{
int num5;
int num3 = (base.data.points.Count - 1) + ((int)Math.Floor((double)(base.data.points.Count / 3)));
float num2 = 1f / ((float)num3);
ADXFExport.AddName("SPLINE", "AcDbSpline");
ADXFExport.AddColor(base.data);
ADXFExport.AddThickness(base.data);
ADXFExport.Add3DPoint(210, new DXFPoint(0f, 0f, 1f));
ADXFExport.AddInt(70, 8);
ADXFExport.AddInt(0x47, 3);
ADXFExport.AddInt(0x48, num3 + DXFTables.cnstAmount);
ADXFExport.AddInt(0x49, num3);
ADXFExport.AddInt(0x4a, 0);
ADXFExport.AddFloat(0x2a, 1E-07f);
ADXFExport.AddFloat(0x2b, 1E-07f);
int num4 = 0;
float num = 0f;
while (num4 < num3)
{
num5 = 0;
while (num5 < DXFTables.cnstAmount)
{
ADXFExport.AddFloat(40, num);
num5++;
}
num += num2;
num4 += DXFTables.cnstAmount;
}
num = 1f;
for (num5 = 0; num5 < DXFTables.cnstAmount; num5++)
{
ADXFExport.AddFloat(40, num);
}
for (num4 = 0; num4 < base.data.points.Count; num4++)
{
ADXFExport.Add3DPoint(10, (DXFPoint)base.data.points[num4]);
if ((((num4 % 3) == 0) && (num4 != 0)) && (num4 != (base.data.points.Count - 1)))
{
ADXFExport.Add3DPoint(10, (DXFPoint)base.data.points[num4]);
}
}
}
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -