我希望有人可以帮助我。我正在使用yCad库读取多个dxf文件并输出复合模型到dxf格式。
完成了读取文件的初始过程。但是,当我保存文件时,它会在没有模型的情况下保存。
以下是用于保存dxf文件的代码示例
public static boolean SaveDxf(String outputPath, String fileName, Yxxf model)
{
try
{
model.iohandler = new YutilIOHandler();
model.ioname = new YutilIOHandlerName(fileName);
model.ioname.dstfile = outputPath + "\\" + fileName + ".dxf";
YdxfPutHandler handler = new YdxfPutHandler();
handler.commandPutMainStart(model.iohandler, model);
return true;
}
catch(Exception ex)
{
System.out.println("failed to save dxf file: " + ex.getMessage());
return false;
}
}
从编辑器查看文件时,会报告错误,指出模型为空。
即使读取了dxf文件,然后在没有操作的情况下保存,也会发生错误。
答案 0 :(得分:1)
我已经解决了这个问题。
该决议要求修改我正在使用的YCad库的版本,原因如下。
if (ent instanceof YxxfEntLine)
{
YdxfPutEntLine.put(putbfr, (YxxfEntLine)ent);
}
注意:这可能是由于库的过期版本造成的。
修改了该方法以包含所有必需的类型。
else if(ent instanceof YxxfEntPolyline)
{
YdxfPutPolyline.put(putbfr, (YxxfEntPolyline)ent);
}
解决方案中添加了许多新类。
当我有时间时,如果需要,我会看看是否可以将这些修改提交给源库。