我正在开发一个ifc项目,我想将EXPRESS
文件的类转换为vb.net类。一个一个地处理文件的所有属性真的很困难stp
,所以我想知道是否有其他方法或工具可以转换类。
编辑:我发现javatoolbox完全符合我的要求,但在java中。我也看过IFC Engine DLL
但没有找到任何可用的代码。
Jotne EPM www.epmtech.jotne.com 和 IFC Engine DLL www.ifcengine.com 都声称它们支持 Visual Basic。
你可以试试oipExpress。oipExpress 是一个用 C++ 编写的早期绑定生成器。只需实现我们自己的生成 VB.Net 类的生成器。目前,它只生成 C++ 类。
VB.Net 类的基本生成器可能如下所示(生成的绑定也可以在这里找到):
class GeneratorVBNet : public Generator {
public:
GeneratorVBNet() {
}
virtual ~GeneratorVBNet() {
}
void generate(std::ostream &out, OpenInfraPlatform::ExpressBinding::Schema &schema) {
for (int i = 0; i < schema.getEntityCount(); i++) {
auto &entity = schema.getEntityByIndex(i);
std::stringstream ss;
ss << earlyBindingDestination << "\\" << entity.getName() << ".vb";
std::ofstream ofs(ss.str(), std::ofstream::out);
ofs << "Class " << entity.getName() << std::endl;
ofs << "End Class" << std::endl;
}
}
private:
std::string earlyBindingDestination = "E:\\dev\\EarlyBindingVBNet_IFC4x1_Add1";
};