C# 二次开发autoCAD,创建了一个方法,将list作为方法的入参,
随后需要在在方法内遍历该数组,而遍历拿到的元素是"System.Collections.Generic.List"
无法转换成所需要的类型"double",尝试强制转换依然报错无法转换
具体问题如下,请指教
internal static void L绘制线并偏移(Point3d x, Point3d y, List<int>[] 偏移集合)
{
Document 当前文档 = Application.DocumentManager.MdiActiveDocument;
Database 当前数据库 = 当前文档.Database;
using (Transaction 事务 = 当前数据库.TransactionManager.StartTransaction())
{
BlockTable 表;
BlockTableRecord CAD对象;
/*使用事务管理器启动一个新事务
使用事务可以确保在操作期间的任何时候发生故障时,所有事务中的操作都将回滚(撤销);
从而保持数据的一致性和完整性*/
表 = 事务.GetObject(当前数据库.BlockTableId,
OpenMode.ForRead) as BlockTable;
CAD对象 = 事务.GetObject(表[BlockTableRecord.ModelSpace],
OpenMode.ForWrite) as BlockTableRecord;
using (Line 线 = new Line(x, y))
{
//将线添加到图形中
CAD对象.AppendEntity(线);
事务.AddNewlyCreatedDBObject(线, true);
for(int i = 0; i <偏移集合.Length; i++)
{
DBObjectCollection 偏移对象的集合 = 线.GetOffsetCurves(偏移集合[i]);
foreach (Entity acEnt in 偏移对象的集合)
{
// Add each offset object
// 逐步将对象偏移并加入集合
CAD对象.AppendEntity(acEnt);
事务.AddNewlyCreatedDBObject(acEnt, true);
}
}
}
// Commit the changes and dispose of the transaction
// 保存并销毁事务
事务.Commit();
}
}