Advertisement
Guest User

Untitled

a guest
Aug 18th, 2019
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. var lines = new List<Line>();
  2.  
  3. using (doc.LockDocument())
  4. {
  5. using (var tr = db.TransactionManager.StartTransaction())
  6. {
  7. BlockTable bt = (BlockTable)tr.GetObject(db.BlockTableId, OpenMode.ForRead, false);
  8. BlockTableRecord btr = (BlockTableRecord)tr.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForRead, false);
  9.  
  10. foreach (ObjectId id in btr)
  11. {
  12. var entity = tr.GetObject(id, OpenMode.ForRead);
  13.  
  14. if (entity.GetType() != typeof(Line))
  15. continue;
  16.  
  17. lines.Add(entity as Line);
  18. }
  19.  
  20. var csv = new StringBuilder();
  21.  
  22. foreach (var line in lines)
  23. {
  24. var start = line.StartPoint;
  25. var end = line.EndPoint;
  26.  
  27. csv.AppendLine($"{start.X};{start.Y};{start.Z};{end.X};{end.Y};{end.Z};");
  28. }
  29.  
  30. File.WriteAllText(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "output.csv"), csv.ToString());
  31.  
  32. tr.Commit();
  33. }
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement