IExportContext2D Interface


IExport Context 2D Interface

An interface that is used in custom export to export 2D views of a Revit model.

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public interface IExportContext2D : IExportContextBase

The IExportContext2D type exposes the following members.

Methods
Name Description
Public method OnCurve This method is called when a Curve is being output.
(Inherited from IExportContextBase )
Public method OnElementBegin2D This method marks the beginning of an element to be exported.
Public method OnElementEnd2D This method marks the end of an element being exported.
Public method OnFaceEdge2D This method is called when a Face edge is being output.
Public method OnFaceSilhouette2D This method is called when a Face silhouette is being output.
Public method OnLineSegment This method is called after unhandled curve was tessellated to line segments and sent to the output.

Note for 2D export: if the export is performed for the view in non-Wireframe display style, then

  • this method is called outside of view, instance and link begin/end calls but still between OnElementBegin2D/OnElementEnd2D calls
  • this method is never called for annotation elements, i.e. their geometry should be processed in methods OnCurve and OnPolyline


(Inherited from IExportContextBase )
Public method OnPolyline This method is called when a Polyline is being output.
(Inherited from IExportContextBase )
Public method OnPolylineSegments This method is called after unhandled curve was tessellated to polyline segments and sent to the output.

Note for 2D export: if the export is performed for the view in non-Wireframe display style, then

  • this method is called outside of view, instance and link begin/end calls but still between OnElementBegin2D/OnElementEnd2D calls
  • this method is never called for annotation elements, i.e. their geometry should be processed in methods OnCurve and OnPolyline


(Inherited from IExportContextBase )
Public method OnText This method is called when a text annotation object is being output.
(Inherited from IExportContextBase )
Top
Remarks

An instance of a class that implements this interface is passed in as a parameter of the CustomExporter constructor. The interface methods are then called at times of drawing entities that are currently visible in the view being exported.

With this type of export context used to perform a custom export, Revit will traverse the model and output the model's geometry as if in the process of regular displaying or exporting a 2D View. It means that any geometry which is visible in an open view (taking any current visibility setting applicable to the view) will be processed and output. Optionally, annotation objects are also output.

Note 1. Curves passed to calls OnFaceEdge2D(FaceEdgeNode) and OnFaceSilhouette2D(FaceSilhouetteNode) may be partially duplicating each other.

Note 2. If element E is a FamilyInstance and it contains an imported instance then:

  • between the calls to OnElementBegin2D/OnElementEnd2D for element E there will be calls to OnInstanceBegin/OnInstanceEnd with the "node" argument pointing to the element with its symbol being of category BuiltInCategories.OST_ImportObjectStyles
  • all geometry exported for the element E has to be additionally subject to the transform T=E.GetTotalTransform()

See Also