2027 Class Back to 2027
C

GeometryCreationUtilities

Version comparison

Members across versions

13 members across 9 versions · 10 changed

Member-name color: stable · changed · removed · obsolete · added later

Member 2020 2021 2022 2023 2024 2025 2025.3 2026 2027
M CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>, SolidOptions)
same same same same same changed same same same
M CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>)
same same same same same changed same same same
M CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double)
same same same same same changed same same same
M CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double, SolidOptions)
same same same same same changed same same same
M CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ, SolidOptions)
same same same same same changed same same same
M CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ)
same same same same same changed same same same
M CreateLoftGeometry(IList<CurveLoop>, SolidOptions)
same same same same same same same same same
M CreateRevolvedGeometry(Frame, IList<CurveLoop>, Double, Double)
same same same same same same same same same
M CreateRevolvedGeometry(Frame, IList<CurveLoop>, Double, Double, SolidOptions)
same same same same same same same same same
M CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>, SolidOptions)
same same same same same changed same same same
M CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>)
same same same same same changed same same same
M CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, SolidOptions)
same same same same same changed same same same
M CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>)
same same same same same changed same same same

Per-version detail

Click a version below to see what changed in that release vs your current frame (2027).
Identical to 2027: 2025, 2025.3, 2026
2027 current

Changes in 2020 vs 2027 10 changed

Flip API Versions →

Changed members

GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>, SolidOptions)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double, SolidOptions)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above. The profile CurveLoops do not satisfy the input requirements.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>, SolidOptions)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
→ returns Solid The requested solid.

Changes in 2021 vs 2027 10 changed

Flip API Versions →

Changed members

GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>, SolidOptions)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double, SolidOptions)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above. The profile CurveLoops do not satisfy the input requirements.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>, SolidOptions)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
→ returns Solid The requested solid.

Changes in 2022 vs 2027 10 changed

Flip API Versions →

Changed members

GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>, SolidOptions)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double, SolidOptions)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above. The profile CurveLoops do not satisfy the input requirements.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>, SolidOptions)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
→ returns Solid The requested solid.

Changes in 2023 vs 2027 10 changed

Flip API Versions →

Changed members

GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>, SolidOptions)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double, SolidOptions)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above. The profile CurveLoops do not satisfy the input requirements.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>, SolidOptions)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
→ returns Solid The requested solid.

Changes in 2024 vs 2027 10 changed

Flip API Versions →

Changed members

GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>, SolidOptions)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateBlendGeometry(CurveLoop, CurveLoop, ICollection<VertexPair>)
firstLoop CurveLoop The first curve loop. The loop must be a closed planar loop without intersections or degeneracies. No orientation conditions are imposed. The loop may not contain just one closed curve - split such a loop into two or more curves beforehand.
secondLoop CurveLoop The second curve loop, satisfying the same conditions as the first loop. The planes of the first and second loops must not be coincident, but they need not be parallel.
vertexPairs ICollection<VertexPair> This input specifies how the two profile loops should be connected. If null, the function chooses vertex connections that will result in a geometrically reasonable blend.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateExtrusionGeometry(IList<CurveLoop>, XYZ, Double, SolidOptions)
profileLoops IList<CurveLoop> The profile loops to be extruded. The loops must be closed, coplanar, and without intersections, self-intersections, or degeneracies. No loop may contain just one closed curve - split such loops into two or more curves beforehand. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions.
extrusionDir XYZ The direction in which to extrude the profile loops. This vector must be non-zero and transverse (i.e., not parallel) to the plane of the profile loops. Its length is irrelevant; only its direction is used.
extrusionDist Double The positive distance by which the loops are to be extruded in the direction of the input extrusionDir.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above. The profile CurveLoops do not satisfy the input requirements.
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateFixedReferenceSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, XYZ)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar. With the exception of path curves that lie in a plane parallel to %fixedReferenceDirection%, the curve's tangent should be nowhere parallel to %fixedReferenceDirection%. If the sweep path has corners, the solid segments that meet at a corner may not meet smoothly.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops; this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops). </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
fixedReferenceDirection XYZ A unit vector specifying the fixed direction used to control how the profile plane is swept along the path; see the description and remarks above.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>, SolidOptions)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptBlendGeometry(Curve, IList<Double>, IList<CurveLoop>, IList<ICollection<VertexPair>>)
pathCurve Curve The sweep path, consisting of a single bounded, open curve.
pathParams IList<Double> An increasing sequence of parameters along the path curve (lying within the curve's bounds). These parameters specify the locations of the planes orthogonal to the path that contain the profile loops. This array must have the same size as the input array "profileLoops".
profileLoops IList<CurveLoop> Closed, planar curve loops arrayed along the path. No loop may contain just one closed curve - split such loops into two or more curves beforehand. The solid will have these profiles as cross-sections at the points specified by the input pathParams. The solid will blend smoothly between the profiles. This array must have the same size as the input array "pathParams", and each profile loop must lie in the plane orthogonal to the path at the point specified by the corresponding entry in the input array "pathParams". Each profile loop must define a single planar domain and must be free of intersections and degeneracies. No orientation conditions on the loops are imposed.
vertexPairs IList<ICollection<VertexPair>> This input specifies how adjacent profile loops should be connected. It must contain one less element than the "profileLoops" input, and entry vertexPairs[idx] specifies how profileLoops[idx] and profileLoops[idx+1] should be connected (indexing starts at 0).
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>, SolidOptions)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
solidOptions SolidOptions The optional information to control the properties of the Solid.
→ returns Solid The requested solid.
GeometryCreationUtilities.CreateSweptGeometry(CurveLoop, Int32, Double, IList<CurveLoop>)
sweepPath CurveLoop The sweep path, consisting of a set of contiguous curves. The path may be open or closed, but should not otherwise have any self-intersections. The path may be planar or non-planar.
pathAttachmentCrvIdx Int32 The index of the curve in the sweep path where the profile loops are situated. Indexing starts at 0. Together with pathAttachmentParam, this specifies the profile's attachment point.
pathAttachmentParam Double Parameter of the path curve specified by pathAttachmentCrvIdx. The profile curves must lie in the plane orthogonal to the path at this attachment point.
profileLoops IList<CurveLoop> The curve loops defining the planar domain to be swept along the path. No conditions are imposed on the orientations of the loops: this function will use copies of the input loops that have been oriented as necessary to conform to Revit's orientation conventions. Restrictions: <ul><li>The loops must lie in the plane orthogonal to the path at the attachment point as defined above. </li><li>The curve loop(s) must be closed and should define a single planar domain (one outer loop and, optionally, one or more inner loops) </li><li>The curve loops must be without intersections, self-intersections, or degeneracies. </li><li>No loop may contain just one closed curve - split such loops into two or more curves beforehand. </li></ul>
→ returns Solid The requested solid.