FamilyItemFactoryNewLoftForm Method |
Create new Form element by Loft operation, and add it into the Autodesk Revit family document.
Namespace: Autodesk.Revit.CreationAssembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntaxpublic Form NewLoftForm(
bool isSolid,
ReferenceArrayArray profiles
)
Public Function NewLoftForm (
isSolid As Boolean,
profiles As ReferenceArrayArray
) As Form
public:
Form^ NewLoftForm(
bool isSolid,
ReferenceArrayArray^ profiles
)
member NewLoftForm :
isSolid : bool *
profiles : ReferenceArrayArray -> Form
Parameters
- isSolid Boolean
- Indicates if the Form is Solid or Void.
- profiles ReferenceArrayArray
- The profile set of the newly created loft. Each profile should consist of only one curve loop.
Return Value
FormIf creation was successful form is are returned.
Exampleprivate Form CreateLoftForm(Autodesk.Revit.DB.Document document)
{
Form loftForm = null;
ReferencePointArray rpa = new ReferencePointArray();
ReferenceArrayArray ref_ar_ar = new ReferenceArrayArray();
ReferenceArray ref_ar = new ReferenceArray();
ReferencePoint rp = null;
XYZ xyz = null;
xyz = document.Application.Create.NewXYZ(0, 0, 0);
rp = document.FamilyCreate.NewReferencePoint(xyz);
rpa.Append(rp);
xyz = document.Application.Create.NewXYZ(0, 50, 10);
rp = document.FamilyCreate.NewReferencePoint(xyz);
rpa.Append(rp);
xyz = document.Application.Create.NewXYZ(0, 100, 0);
rp = document.FamilyCreate.NewReferencePoint(xyz);
rpa.Append(rp);
CurveByPoints cbp = document.FamilyCreate.NewCurveByPoints(rpa);
ref_ar.Append(cbp.GeometryCurve.Reference);
ref_ar_ar.Append(ref_ar);
rpa.Clear();
ref_ar = new ReferenceArray();
xyz = document.Application.Create.NewXYZ(50, 0, 0);
rp = document.FamilyCreate.NewReferencePoint(xyz);
rpa.Append(rp);
xyz = document.Application.Create.NewXYZ(50, 50, 30);
rp = document.FamilyCreate.NewReferencePoint(xyz);
rpa.Append(rp);
xyz = document.Application.Create.NewXYZ(50, 100, 0);
rp = document.FamilyCreate.NewReferencePoint(xyz);
rpa.Append(rp);
cbp = document.FamilyCreate.NewCurveByPoints(rpa);
ref_ar.Append(cbp.GeometryCurve.Reference);
ref_ar_ar.Append(ref_ar);
rpa.Clear();
ref_ar = new ReferenceArray();
xyz = document.Application.Create.NewXYZ(75, 0, 0);
rp = document.FamilyCreate.NewReferencePoint(xyz);
rpa.Append(rp);
xyz = document.Application.Create.NewXYZ(75, 50, 5);
rp = document.FamilyCreate.NewReferencePoint(xyz);
rpa.Append(rp);
xyz = document.Application.Create.NewXYZ(75, 100, 0);
rp = document.FamilyCreate.NewReferencePoint(xyz);
rpa.Append(rp);
cbp = document.FamilyCreate.NewCurveByPoints(rpa);
ref_ar.Append(cbp.GeometryCurve.Reference);
ref_ar_ar.Append(ref_ar);
loftForm = document.FamilyCreate.NewLoftForm(true, ref_ar_ar);
return loftForm;
}
Private Function CreateLoftForm(document As Autodesk.Revit.DB.Document) As Form
Dim loftForm As Form = Nothing
Dim rpa As New ReferencePointArray()
Dim ref_ar_ar As New ReferenceArrayArray()
Dim ref_ar As New ReferenceArray()
Dim rp As ReferencePoint = Nothing
Dim xyz As XYZ = Nothing
xyz = document.Application.Create.NewXYZ(0, 0, 0)
rp = document.FamilyCreate.NewReferencePoint(xyz)
rpa.Append(rp)
xyz = document.Application.Create.NewXYZ(0, 50, 10)
rp = document.FamilyCreate.NewReferencePoint(xyz)
rpa.Append(rp)
xyz = document.Application.Create.NewXYZ(0, 100, 0)
rp = document.FamilyCreate.NewReferencePoint(xyz)
rpa.Append(rp)
Dim cbp As CurveByPoints = document.FamilyCreate.NewCurveByPoints(rpa)
ref_ar.Append(cbp.GeometryCurve.Reference)
ref_ar_ar.Append(ref_ar)
rpa.Clear()
ref_ar = New ReferenceArray()
xyz = document.Application.Create.NewXYZ(50, 0, 0)
rp = document.FamilyCreate.NewReferencePoint(xyz)
rpa.Append(rp)
xyz = document.Application.Create.NewXYZ(50, 50, 30)
rp = document.FamilyCreate.NewReferencePoint(xyz)
rpa.Append(rp)
xyz = document.Application.Create.NewXYZ(50, 100, 0)
rp = document.FamilyCreate.NewReferencePoint(xyz)
rpa.Append(rp)
cbp = document.FamilyCreate.NewCurveByPoints(rpa)
ref_ar.Append(cbp.GeometryCurve.Reference)
ref_ar_ar.Append(ref_ar)
rpa.Clear()
ref_ar = New ReferenceArray()
xyz = document.Application.Create.NewXYZ(75, 0, 0)
rp = document.FamilyCreate.NewReferencePoint(xyz)
rpa.Append(rp)
xyz = document.Application.Create.NewXYZ(75, 50, 5)
rp = document.FamilyCreate.NewReferencePoint(xyz)
rpa.Append(rp)
xyz = document.Application.Create.NewXYZ(75, 100, 0)
rp = document.FamilyCreate.NewReferencePoint(xyz)
rpa.Append(rp)
cbp = document.FamilyCreate.NewCurveByPoints(rpa)
ref_ar.Append(cbp.GeometryCurve.Reference)
ref_ar_ar.Append(ref_ar)
loftForm = document.FamilyCreate.NewLoftForm(True, ref_ar_ar)
Return loftForm
End Function
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.
See Also