PathReinforcement.Create(Document, Element, IList<Curve>, Boolean, ElementId, ElementId, ElementId, ElementId)
Method
Description:
Creates a new PathReinforcement object from an array of curves. The newly created object will use a default Rebar Shape.
Creates a new PathReinforcement object from an array of curves. The newly created object will use a default Rebar Shape.
Remarks:
The method sets Rebar Shape of primary bars only.
The method sets Rebar Shape of primary bars only.
Syntax
Examples
PathReinforcement CreatePathReinforcement(Autodesk.Revit.DB.Document document, Wall wall)
{
// Create a geometry line in the selected wall as the path
List<Curve> curves = new List<Curve>();
LocationCurve location = wall.Location as LocationCurve;
XYZ start = location.Curve.GetEndPoint(0);
XYZ end = location.Curve.GetEndPoint(1);
curves.Add(Line.CreateBound(start, end));
// Obtain the default types
ElementId defaultRebarBarTypeId = document.GetDefaultElementTypeId(ElementTypeGroup.RebarBarType);
ElementId defaultPathReinforcementTypeId = document.GetDefaultElementTypeId(ElementTypeGroup.PathReinforcementType);
ElementId defaultHookTypeId = ElementId.InvalidElementId;
// Begin to create the path reinforcement
PathReinforcement rein = PathReinforcement.Create(document, wall, curves, true, defaultPathReinforcementTypeId, defaultRebarBarTypeId, defaultHookTypeId, defaultHookTypeId);
if (null == rein)
{
throw new Exception("Create path reinforcement failed.");
}
// Give the user some information
TaskDialog.Show("Revit","Create path reinforcement succeed.");
return rein;
}
Parameters
Parameter | Type | Description |
---|---|---|
document | Document | The document. |
hostElement | Element | The element that will host the PathReinforcement. The host can be a Structural Floor, Structural Wall, Structural Slab, or a Part created from a structural layer belonging to one of those element types. |
curveArray | IList | An array of curves that will define the outline of the PathReinforcement. |
flip | Boolean | A flag controlling the bars relative to the curves. |
pathReinforcementTypeId | ElementId | The id of the PathReinforcementType. |
rebarBarTypeId | ElementId | The id of the RebarBarType. |
startRebarHookTypeId | ElementId | The id of the RebarHookType for the start of the bar. If this parameter is InvalidElementId, it means to create a rebar with no start hook. |
endRebarHookTypeId | ElementId | The id of the RebarHookType for the end of the bar. If this parameter is InvalidElementId, it means to create a rebar with no end hook. |
Return Value
Type | Description |
---|---|
PathReinforcement | The newly created PathReinforcement. |
Exceptions
Exception | Condition |
---|---|
ArgumentException | The input curveArray is empty. -or- The input curveArray contains at least one helical curve and is not supported for this operation. -or- The element hostElement was not found in the given document. -or- the host Element is not a valid host for Area Reinforcement, Path Reinforcement, Fabric Area or Fabric Sheet. -or- curves in curveArray are not continuous and open. -or- pathReinforcementTypeId should refer to an Path Reinforcement Type element. -or- rebarBarTypeId should refer to an RebarBarType element. -or- startRebarHookTypeId should be invalid or refer to an RebarHookType element. -or- endRebarHookTypeId should be invalid or refer to an RebarHookType element. |
ArgumentNullException | A non-optional argument was null |
ForbiddenForDynamicUpdateException | This method may not be called during dynamic update. |