Add a cut to an element using the unattached voids inside a cutting instance.
Namespace: Autodesk.Revit.DBAssembly: RevitAPI (in RevitAPI.dll) Version: 26.4.0.0 (26.4.0.0)
Syntax
C#
public static void AddInstanceVoidCut(
Document document,
Element element,
Element cuttingInstance
)
Parameters
- document Document
-
The document containing the two elements
- element Element
-
The element to be cut
- cuttingInstance Element
-
The cutting family instance
Exceptions
Example
C#
void CutBeamWithFamilyVoid(Autodesk.Revit.DB.Document doc, FamilyInstance beam, FamilySymbol cuttingSymbol)
{
LocationCurve lc = beam.Location as LocationCurve;
Curve beamCurve = lc.Curve;
for (int i = 1; i <= 3; i++)
{
XYZ beamLocation = beamCurve.Evaluate(i * 0.25, true);
beamLocation = beamLocation - XYZ.BasisZ;
Level level = doc.GetElement(beam.LevelId) as Level;
FamilyInstance cuttingInstance = doc.Create.NewFamilyInstance(beamLocation, cuttingSymbol, level, StructuralType.NonStructural);
InstanceVoidCutUtils.AddInstanceVoidCut(doc, beam, cuttingInstance);
}
}
VB
Private Sub CutBeamWithFamilyVoid(doc As Autodesk.Revit.DB.Document, beam As FamilyInstance, cuttingSymbol As FamilySymbol)
Dim lc As LocationCurve = TryCast(beam.Location, LocationCurve)
Dim beamCurve As Curve = lc.Curve
For i As Integer = 1 To 3
Dim beamLocation As XYZ = beamCurve.Evaluate(i * 0.25, True)
beamLocation = beamLocation - XYZ.BasisZ
Dim level As Level = TryCast(doc.GetElement(beam.LevelId), Level)
Dim cuttingInstance As FamilyInstance = doc.Create.NewFamilyInstance(beamLocation, cuttingSymbol, level, StructuralType.NonStructural)
InstanceVoidCutUtils.AddInstanceVoidCut(doc, beam, cuttingInstance)
Next
End Sub
See Also
Reference