我从HelloWall示例中引用了一个“XBim”示例程序。输出IFC文件似乎没有问题。但当我试图打开Autodesk Navisworks中的IFC文件时,它给了我以下错误-
通用错误:文件中没有找到IfcProjects。中止进口。
通用错误:读取IFC文件时出错:错误处理引用。中止进口。
通用错误:错误处理引用
我用下面的代码创建了项目-
var model = IfcStore.Create(editor, XbimSchemaVersion.Ifc4, XbimStoreType.InMemoryModel);
using (var txn = model.BeginTransaction("project"))
{
//create a project
var project = model.Instances.New<IfcProject>();
//set the units to SI (mm and metres)
project.Initialize(ProjectUnits.SIUnitsUK);
project.Name = "ICF Model.nwc";
txn.Commit();
}有人能帮我在Naviswork打开这个文件吗?
创建的IFC文件是-
ISO-10303-21;
HEADER;
FILE_DESCRIPTION ((''), '2;1');
FILE_NAME ('', '2022-08-12T13:45:00', (''), (''), 'Processor version 5.1.0.0', 'Xbim.IO.MemoryModel', '');
FILE_SCHEMA (('IFC4'));
ENDSEC;
DATA;
#1=IFCPROJECT('0t5Z7nthP2Pv$ovjzne6D$',#2,'ICF Model.nwc',$,$,$,$,(#19,#22),#7);
#2=IFCOWNERHISTORY(#5,#6,$,.ADDED.,1660311931,$,$,0);
#3=IFCPERSON($,'Sush','Sush',$,$,$,$,$);
#4=IFCORGANIZATION($,'xyz Pvt Ltd',$,$,$);
#5=IFCPERSONANDORGANIZATION(#3,#4,$);
#6=IFCAPPLICATION(#4,'1.0','IFC creator','B14F5359 - B769 - 4B8C - A0E0 - FDBD68D1FA9D');
#7=IFCUNITASSIGNMENT((#8,#9,#10,#11,#12,#13,#14,#15,#16));
#8=IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);
#9=IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.);
#10=IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.);
#11=IFCSIUNIT(*,.SOLIDANGLEUNIT.,$,.STERADIAN.);
#12=IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.);
#13=IFCSIUNIT(*,.MASSUNIT.,$,.GRAM.);
#14=IFCSIUNIT(*,.TIMEUNIT.,$,.SECOND.);
#15=IFCSIUNIT(*,.THERMODYNAMICTEMPERATUREUNIT.,$,.DEGREE_CELSIUS.);
#16=IFCSIUNIT(*,.LUMINOUSINTENSITYUNIT.,$,.LUMEN.);
#17=IFCCARTESIANPOINT((0.,0.,0.));
#18=IFCAXIS2PLACEMENT3D(#17,$,$);
#19=IFCGEOMETRICREPRESENTATIONCONTEXT('Building Model','Model',3,1.E-05,#18,$);
#20=IFCCARTESIANPOINT((0.,0.));
#21=IFCAXIS2PLACEMENT2D(#20,$);
#22=IFCGEOMETRICREPRESENTATIONCONTEXT('Building Plan View','Plan',2,1.E-05,#21,$);
#23=IFCBUILDING('3tmrRpSyvE4v1N9Jg$bYtw',#2,'New Building',$,$,#24,$,$,.ELEMENT.,$,$,$);
#24=IFCLOCALPLACEMENT($,#25);
#25=IFCAXIS2PLACEMENT3D(#26,$,$);
#26=IFCCARTESIANPOINT((0.,0.,0.));
#27=IFCRELAGGREGATES('1PmWqkE2D7P8wxZFkDc3Ic',#2,$,$,#1,(#23));
#28=IFCBUILDINGSTOREY('0dqsvK_2z8w90C6SoJ5S1Q',#2,'Default storey',$,$,$,$,$,$,0.);
#29=IFCWALLSTANDARDCASE('0aBuqP2rr8$896T$XLKaKb',#2,'A Standard rectangular wall',$,$,#43,#42,$,$);
#30=IFCRECTANGLEPROFILEDEF(.AREA.,$,#32,100.,400.);
#31=IFCCARTESIANPOINT((0.,100.));
#32=IFCAXIS2PLACEMENT2D(#31,$);
#33=IFCEXTRUDEDAREASOLID(#30,#36,#34,1000.);
#34=IFCDIRECTION((0.,0.,1.));
#35=IFCCARTESIANPOINT((0.,0.,0.));
#36=IFCAXIS2PLACEMENT3D(#35,$,$);
#37=IFCSHAPEREPRESENTATION(#19,'Body','SweptSolid',(#33));
#38=IFCSTYLEDITEM(#33,(#39),$);
#39=IFCSURFACESTYLE($,.BOTH.,(#40));
#40=IFCSURFACESTYLERENDERING(#41,$,$,$,$,$,$,$,.BLINN.);
#41=IFCCOLOURRGB('red',1.,0.,0.);
#42=IFCPRODUCTDEFINITIONSHAPE($,$,(#37,#56));
#43=IFCLOCALPLACEMENT($,#44);
#44=IFCAXIS2PLACEMENT3D(#35,#46,#45);
#45=IFCDIRECTION((0.,1.,0.));
#46=IFCDIRECTION((0.,0.,1.));
#47=IFCMATERIAL('Clay',$,$);
#48=IFCMATERIALLAYERSETUSAGE(#49,.AXIS2.,.NEGATIVE.,150.,$);
#49=IFCMATERIALLAYERSET((#50),$,$);
#50=IFCMATERIALLAYER(#47,10.,$,$,$,$,$);
#51=IFCRELASSOCIATESMATERIAL('2VALhDZtj41QxuMJosbmLu',#2,$,$,(#29),#48);
#52=IFCPRESENTATIONLAYERASSIGNMENT('some ifcPresentationLayerAssignment',$,(#37),$);
#53=IFCPOLYLINE((#54,#55));
#54=IFCCARTESIANPOINT((0.,0.));
#55=IFCCARTESIANPOINT((4000.,0.));
#56=IFCSHAPEREPRESENTATION(#19,'Axis','Curve2D',(#53));
#57=IFCQUANTITYLENGTH('IfcQuantityArea:Area','',#58,100.,$);
#58=IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);
#59=IFCCONTEXTDEPENDENTUNIT(#60,.LENGTHUNIT.,'Elephants');
#60=IFCDIMENSIONALEXPONENTS(1,0,0,0,0,0,0);
#61=IFCQUANTITYCOUNT('IfcQuantityCount:Elephant',$,#59,12.,$);
#62=IFCCONVERSIONBASEDUNIT(#65,.LENGTHUNIT.,'Inch',#63);
#63=IFCMEASUREWITHUNIT(IFCRATIOMEASURE(25.4),#64);
#64=IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);
#65=IFCDIMENSIONALEXPONENTS(1,0,0,0,0,0,0);
#66=IFCQUANTITYLENGTH('IfcQuantityLength:Length','',#62,24.,$);
#67=IFCELEMENTQUANTITY('1nvxj0Nnj5n8qfhyzrJY9J',#2,'Test:IfcElementQuantity','Measurement quantity',$,(#57,#61,#66));
#68=IFCRELDEFINESBYPROPERTIES('1DB4sZX0z05QH_e2Xcn6hS',#2,'Area Association','IfcElementQuantity associated to wall',(#29),#67);
#69=IFCPROPERTYSINGLEVALUE('IfcPropertySingleValue:Time','',IFCTIMEMEASURE(150.),#70);
#70=IFCSIUNIT(*,.TIMEUNIT.,$,.SECOND.);
#71=IFCPROPERTYENUMERATEDVALUE('IfcPropertyEnumeratedValue:Music',$,(IFCLABEL('Do'),IFCLABEL('Re'),IFCLABEL('Mi')),#72);
#72=IFCPROPERTYENUMERATION('Notes',(IFCLABEL('Do'),IFCLABEL('Re'),IFCLABEL('Mi'),IFCLABEL('Fa'),IFCLABEL('So'),IFCLABEL('La'),IFCLABEL('Ti')),$);
#73=IFCPROPERTYBOUNDEDVALUE('IfcPropertyBoundedValue:Mass','',IFCMASSMEASURE(5000.),IFCMASSMEASURE(1000.),#74,$);
#74=IFCSIUNIT(*,.MASSUNIT.,.KILO.,.GRAM.);
#75=IFCPROPERTYTABLEVALUE('IfcPropertyTableValue:Sound',$,(IFCREAL(100.),IFCREAL(200.),IFCREAL(400.),IFCREAL(800.),IFCREAL(1600.),IFCREAL(3200.)),(IFCREAL(20.),IFCREAL(42.),IFCREAL(46.),IFCREAL(56.),IFCREAL(60.),IFCREAL(65.)),$,$,#76,$);
#76=IFCCONTEXTDEPENDENTUNIT(#77,.FREQUENCYUNIT.,'dB');
#77=IFCDIMENSIONALEXPONENTS(0,0,0,0,0,0,0);
#78=IFCPROPERTYLISTVALUE('IfcPropertyListValue:Colours',$,(IFCLABEL('Red'),IFCLABEL('Green'),IFCLABEL('Blue'),IFCLABEL('Pink'),IFCLABEL('White'),IFCLABEL('Black')),$);
#79=IFCMATERIAL('Brick',$,$);
#80=IFCPROPERTYREFERENCEVALUE('IfcPropertyReferenceValue:Material',$,$,#79);
#81=IFCMATERIALLIST((#79,#82,#83));
#82=IFCMATERIAL('Cavity',$,$);
#83=IFCMATERIAL('Block',$,$);
#84=IFCMATERIALLAYER(#79,100.,$,$,$,$,$);
#85=IFCPROPERTYREFERENCEVALUE('IfcPropertyReferenceValue:MaterialLayer',$,$,#84);
#86=IFCDOCUMENTREFERENCE('c://Documents//TheDoc.Txt',$,'Document',$,$);
#87=IFCPROPERTYREFERENCEVALUE('IfcPropertyReferenceValue:Document',$,$,#86);
#88=IFCREGULARTIMESERIES('Regular Time Series','Time series of events','2015-02-14T12:01:01','2015-05-15T12:01:01',.CONTINUOUS.,.MEASURED.,$,$,604800.,());
#89=IFCPROPERTYREFERENCEVALUE('IfcPropertyReferenceValue:TimeSeries',$,$,#88);
#90=IFCPOSTALADDRESS($,$,$,'Room 101',('12 New road','DoxField'),$,'Sunderland',$,'DL01 6SX',$);
#91=IFCPROPERTYREFERENCEVALUE('IfcPropertyReferenceValue:Address',$,$,#90);
#92=IFCTELECOMADDRESS($,$,$,('01325 6589965'),$,$,('bob@bobsworks.com'),$,$);
#93=IFCPROPERTYREFERENCEVALUE('IfcPropertyReferenceValue:Telecom',$,$,#92);
#94=IFCPROPERTYSET('2b3Fwudw51yBaOjJU5HBNI',#2,'Test:IfcPropertySet','Property Set',(#69,#71,#73,#75,#78,#80,#85,#87,#89,#91,#93));
#95=IFCRELDEFINESBYPROPERTIES('0EFQgSLfb5oRgtvm3FuM8n',#2,'Property Association','IfcPropertySet associated to wall',(#29),#94);
#96=IFCRELAGGREGATES('2h1VSG8M96JviAUFYcsscp',#2,$,$,#23,(#28));
#97=IFCRELCONTAINEDINSPATIALSTRUCTURE('0SSu2IeKzE3OgwuORLeUji',#2,$,$,(#29),#28);
ENDSEC;
END-ISO-10303-21;
发布于 2022-10-13 10:20:11
我是xbim开发人员之一,据我所知,这个文件是完全有效的IFC。你可以尝试在免费的IFC观众打开它,它应该是好的。但是,对于IFC来说,Navisworks似乎相当挑剔,而且在某些特定的结构和约定的设置下,它希望在修订IFC出口商:https://knowledge.autodesk.com/support/navisworks-products/troubleshooting/caas/sfdcarticles/sfdcarticles/Disappearing-IFC-at-appending-IFC-to-Navisworks-2019.html时使用某些结构和约定。
您可能需要修改这些IFC进口商选项:

或者是最近版本中的这些:

这一页还表明
可能需要在相应的版本中安装Autodesk Revit的IFC。请参阅Autodesk App :用于Autodesk Revit 2021或其他版本的IFC。2022 :国际金融公司2022
https://stackoverflow.com/questions/73331223
复制相似问题