예제 #1
0
 internal XbimGeometryData GetGeometryData(XbimGeometryHandle handle)
 {
     Api.JetSetCurrentIndex(Sesid, Table, GeometryTablePrimaryIndex);
     Api.MakeKey(Sesid, Table, handle.GeometryLabel, MakeKeyGrbit.NewKey);
     if (Api.TrySeek(Sesid, Table, SeekGrbit.SeekEQ))
     {
         Api.RetrieveColumns(Sesid, Table, _colValues);
         _colValGeometryLabel.Value = Api.RetrieveColumnAsInt32(Sesid, Table, _colIdGeometryLabel);
         return(new XbimGeometryData(_colValGeometryLabel.Value.Value, _colValProductLabel.Value.Value, (XbimGeometryType)_colValGeomType.Value, _colValProductIfcTypeId.Value.Value, _colValShapeData.Value, _colValTransformMatrix.Value, _colValGeometryHash.Value.Value, _colValStyleLabel.Value.HasValue ? _colValStyleLabel.Value.Value : 0, _colValSubPart.Value.HasValue ? _colValSubPart.Value.Value : 0));
     }
     else
     {
         return(null);
     }
 }
예제 #2
0
 public XbimGeometryData GetGeometryData(XbimGeometryHandle handle)
 {
     return(InstanceCache.GetGeometryData(handle));
 }