2027 Members
Changes 0
M

ExporterIFCUtils Methods

Name Return Type Description
M AddClippingsToBaseExtrusion(ExporterIFC, Wall, XYZ, IFCRange, IFCRange, IFCAnyHandle, IList<IFCExtrusionData>) IFCAnyHandle
M AddValueString(Element, ElementId, String) None Adds a string value to a built-in parameter.
M AreSolidsEqual(Solid, Solid, Transform%) Boolean Determines whether two solids are identical, potentially offset from each other.
M CanExportWallGeometryAsExtrusion(Element, IFCRange, Curve) Boolean Identifies if the base geometry of the wall can be represented as an extrusion.
M CollectGeometryInfo(ExporterIFC, IFCGeometryInfo, GeometryObject, XYZ, Boolean) None Collects all the target geometry from the input geometry object and adds it as IFC handles to the IFCInfo.
M CollectGeometryInfo(ExporterIFC, IFCGeometryInfo, GeometryObject, XYZ, Boolean, Transform) None Collects all the target geometry from the input geometry object and adds it as IFC handles to the IFCInfo.
M ComputeAreaOfCurveLoops(IList<CurveLoop>) Double
M ComputeRoofProjectedArea(Element) Double Returns the projected area of the room, unscaled.
M ComputeSubcomponents(HostObject) IList<HostObjectSubcomponentInfo> Splits a roof or floor element composed of planar surfaces into a set of roughly vertical extruded loops of uniform depth if possible.
M CreateAlternateGUID(Element) String Creates a GUID for the given element.
M CreateGUID() String Creates a randomized GUID.
M CreateProjectLevelGUID(Document, IFCProjectLevelGUIDType) String Creates a GUID from Revit project for given GUIDType.
M CreateSubElementGUID(Element, Int32) String Creates a consistent GUID for an IFC entity related to a Revit element. A "related" sub-element is one that is unique for a given type of element, and can therefore by identified by a simple index value (e.g. PSet_Wall_Common property set for a wall.) The index value 0 is reserved, as this would generate the GUID of the element itself. A listing of known sub-elements is contained in IFCSubElementEnums.cs; it is expected that this list would be maintained up-to-date, instead of passing arbitrary values into this function.
M EndExportInternal(ExporterIFC) None Use the internal Revit implementation to relate elements at the end of export.
M ExportExtrudedSlabOpenings(ExporterIFC, Element, IFCLevelInfo, IFCAnyHandle, IList<IFCAnyHandle>, IList<IList<CurveLoop>>, Plane, IFCProductWrapper) None Obsolete.
M ExportExtrudedSlabOpeningsAndReturnInfo(ExporterIFC, Element, IFCLevelInfo, IFCAnyHandle, IList<IFCAnyHandle>, IList<IList<CurveLoop>>, Plane, IFCProductWrapper) IList<IFCOpeningDimensions>
M ExportSlabAsExtrusion(ExporterIFC, Element, GeometryElement, IFCTransformSetter, IFCAnyHandle, IList<IFCAnyHandle>, IList<IFCAnyHandle>, IList<IList<CurveLoop>>, IList<IFCExtrusionCreationData>, Plane) Boolean
M GetAttachedColumns(Wall) IList<FamilyInstance> Obtains a list of columns known to Revit as intersecting with this wall.
M GetConnectedWalls(Wall, IFCConnectedWallDataLocation) IList<IFCConnectedWallData> Obtains the IFC-specific information regarding the connections between this wall and other elements.
M GetDoor2DArcsFromFamily(Family) IList<Arc> Gets the arcs associated with the plan view of a door.
M GetElevationProfile(Wall) IList<CurveLoop> Obtains the curve loops which bound the wall's elevation profile.
M GetGeometryFromInplaceWall(FamilyInstance) GeometryElement Obtains a special snapshot of the geometry of an in-place wall element suitable for export.
M GetGlobal2DDirectionHandle(Int32, Boolean) IFCAnyHandle Obtains the handle representing one cardinal direction in 2D.
M GetGlobal2DDirectionHandles(Boolean) IList<IFCAnyHandle> Obsolete. Obtains the handles representing the cardinal directions in 2D.
M GetGlobal2DOriginHandle() IFCAnyHandle Obtains the handle representing the 2D origin.
M GetGlobal3DDirectionHandle(Int32, Boolean) IFCAnyHandle Obtains the handle representing one cardinal direction in 3D.
M GetGlobal3DDirectionHandles(Boolean) IList<IFCAnyHandle> Obsolete. Obtains the handles representing the cardinal directions in 3D.
M GetGlobal3DOriginHandle() IFCAnyHandle Obtains the handle representing the 3D origin.
M GetInstanceCutoutFromWall(Document, Wall, FamilyInstance, XYZ%) CurveLoop Gets the curve loop corresponding to the hole in the wall made by the instance.
M GetLegacyCurtainSubElements(Element) ICollection<ElementId> Gets the sub elements from a legacy curtain element.
M GetLegacyStairOrRampComponents(ExporterIFC, Element) IFCLegacyStairOrRamp Gets the components of a stair or ramp.
M GetLegacyStairsProperties(ExporterIFC, Element, Int32%, Int32%, Double%, Double%, Double%, Double%, Double%) None Returns one or more properties for legacy (created in R2012 or before) Stairs.
M GetLevelIdByHeight(ExporterIFC, Element) ElementId Gets the level if by the height of the element.
M GetLoopsFromTopBottomFace(ExporterIFC, Wall) IList<CurveLoop> Gets the curve loop(s) that represent the bottom or top face of the wall, usable to create an extrusion for the wall geometry.
M GetMinSymbolHeight(FamilySymbol) Double Obtains the minimum height of the given FamilySymbol.
M GetMinSymbolWidth(FamilySymbol) Double Obtains the minimum width of the given FamilySymbol.
M GetOpeningData(ExporterIFC, Element, Transform, IFCRange) IList<IFCOpeningData> Gets the openings data from the element.
M GetOriginalSymbol(FamilyInstance) FamilySymbol Returns the original family symbol of this family instance, before the instance is modified by joins, cuts, coping, extensions, or other post-processing.
M GetRelativeLocalPlacementOffsetTransform(IFCAnyHandle, IFCAnyHandle) Transform Obtains the relative transform between two IfcLocalPlacement handles.
M GetRoofComponents(ExporterIFC, RoofBase) RoofComponents Gets the components of roof slabs.
M GetRoomBoundaryAsCurveLoopArray(SpatialElement, SpatialElementBoundaryOptions, Boolean) IList<CurveLoop> Obtains the spatial element boundary curves as an array of CurveLoops, needed for processing into IFC-specific elements later.
M GetTransformForDoorOrWindow(FamilyInstance, FamilySymbol, Boolean, Boolean) Transform Obtains the transform for the door or window instance.
M GetUnscaledTransform(ExporterIFC, IFCAnyHandle) Transform Obtains the exact unscaled transform from an IfcLocalPlacement handle.
M GetUnscaledTransformWithoutFixOfDirection(ExporterIFC, IFCAnyHandle) Transform Obsolete. Obtains the unscaled transform from an IfcLocalPlacement handle without fix of direction.
M GetWallBaseOffset(Wall) Double Obtains the base offset of the wall.
M GetWallTrimmedCurve(Wall) Curve Obtains the curve of the wall trimmed or extended according to the end conditions of the wall.
M HasElevationProfile(Wall) Boolean Identifies if the wall has a sketched elevation profile.
M IsCurveFromOtherElementSketch(CurveElement) Boolean Identifies if the given curve element is generated by another element's sketch, or if it represents an independent curve element accessible directly by the user.
M IsCurveLoopConvexWithOpenings(CurveLoop, Wall, IFCRange, Boolean%) Boolean Checks if the region bounded by the input curve loop can be represented as the subtraction of 0 or more convex polygons from a base convex polygon.
M IsWallBaseRectangular(Wall, Curve) Boolean Identifies if the wall's base can be represented by a direct thickening of the wall's base curve.
M IsWallCompletelyClipped(Wall, ExporterIFC, IFCRange) Boolean Determines if the input wall is completely removed by interaction with other elements within the given range.
M IsWallJoinedToTop(Wall) Boolean Checks if wall is joined to top.
M SetGlobal2DDirectionHandles(Boolean, IFCAnyHandle, IFCAnyHandle) None Sets the handles representing the cardinal directions in 2D.
M SetGlobal2DOriginHandle(IFCAnyHandle) None Obsolete. Sets the handle representing the 2D origin.
M SetGlobal3DDirectionHandles(Boolean, IFCAnyHandle, IFCAnyHandle, IFCAnyHandle) None Sets the handles representing the cardinal directions in 3D.
M SetGlobal3DOriginHandle(IFCAnyHandle) None Obsolete. Sets the handle representing the 3D origin.
M SortCurveLoops(IList<CurveLoop>) IList<IList<CurveLoop>>
M SortFaceEdges(Face) IList<IList<Int32>> Sorts the edges of a face such that the outer edge loops and their corresponding inner edge loops are separated.
M TransformAndScalePoint(ExporterIFC, XYZ) XYZ Converts a point from global Revit coordinates to current IFC coordinates, including scale.
M TransformAndScaleVector(ExporterIFC, XYZ) XYZ Converts a vector from global Revit coordinates to current IFC coordinates, including scale.
M UsesInstanceGeometry(FamilyInstance) Boolean Identifies if the family instance has its own geometry, or uses the symbol's geometry with a transform.
M ValidateCurveLoops(IList<CurveLoop>, XYZ) IList<CurveLoop>