【问题标题】:how to validate a .dxf file before uploading it using http://www.woutware.com?如何在使用 http://www.woutware.com 上传之前验证 .dxf 文件?
【发布时间】:2012-05-24 17:45:35
【问题描述】:

如何使用 Cad lib 库 (http://www.woutware.com) 对 .dxf 文件应用以下验证。

我想上传一个 .dxf 文件,并想在上传之前应用以下检查。

  • 可用于我的激光机的程序需要 AutoCAD 2000 版本的 .dxf;
  • 绘图必须包含在 1000x700 单位的矩形中,因为程序会将单位解释为毫米;
  • 不接受任何块或 AES 对象;
  • 默认第 0 层用于切割,最多 7 层用于雕刻(最多 8 层)
  • 所有对象都应为 2D,不允许 3D 对象(大多数 SPLines)

【问题讨论】:

    标签: asp.net cad


    【解决方案1】:

    您可能应该在Wout Ware forum 上发布您的问题。大多数检查都很容易完成,除了检查 3D 对象可能需要相当多的工作,因为您需要对每种类型的实体进行一些检查。

    • 可以使用 DxfModel.Header.AcadVersion 验证版本。
    • 矩形很棘手,因为绘制矩形的方法有很多种。可能有 LWPOLYLINE、2D POLYLINE、3D POLYLINE(但没有 z 坐标)、4 条 LINE 的集合,甚至还有其他制作矩形的方法。
    • 可以在 DxfModel.Blocks 中找到块,尽管我会说 INSERTs 的存在在 DxfModel.Entities 中非常重要。 CadLib 不支持 AES 对象,但您可以通过检查 DxfModel.UnsupportedObjects 来检查它们是否存在于原始图形中。
    • 3D 对象检查需要对每个实体进行一些特殊检查。为此实现一个 IEntityVisitor 对象,并遍历所有实体。粗略检查每个实体的 z 轴是否为 (0, 0, 1),并且厚度为零(对于具有厚度的实体)。

    【讨论】:

      猜你喜欢
      • 2015-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-19
      • 1970-01-01
      • 1970-01-01
      • 2015-01-04
      • 1970-01-01
      相关资源
      最近更新 更多