0

我有一个关于导入 dxf 文件的渲染问题。

渲染成功:

  • 对 dxf 文件使用 linear_extrude() 并显示一个球体。
  • 仅对 dxf 文件使用 rotate_extrude()。

渲染失败:

  • 对 dxf 文件使用 rotate_extrude() 并显示一个球体。

这是我的源代码:

module loadFile() {
    rotate_extrude()
        import("import_exercise.dxf");
}

module loadSphere() {
    translate([0,0,-30])
        sphere(10);
}

loadFile();
loadSphere();

这是错误消息:

ERROR: CGAL error in CGAL_Nef_polyhedron3(): CGAL ERROR: assertion violation! Expr: e->incident_sface() != SFace_const_handle() File: /Users/kintel/code/OpenSCAD/openscad/../libraries/install/include/CGAL/Nef_S2/SM_const_decorator.h Line: 329

这是scad文件:

https://drive.google.com/file/d/1dT84jAzTGn-FxavEXamVivUwODelRqLS/view?usp=sharing

这是.dxf文件:

https://drive.google.com/file/d/1XhjWkydDVEnrn-vYcJOT5-yIjSRtdQaT/view?usp=sharing

预览成功

渲染失败

渲染成功

谢谢!

4

1 回答 1

0

问题出在 dxf 文件中。您的模型以 1 点接触 y 轴。解释见openscad论坛。我以两种方式修改了您的 dxf。在第一个中,y 轴不是被一个点而是被一个形状所触及,在第二个中,形状是 0.1 mm 平行于 y 轴。两者都没有错误地渲染,并且最终的设计是有效的!

在此处输入图像描述

您可以从框中下载 dxf 文件

于 2018-01-12T14:13:48.170 回答