Revit 2025 API
Divided |
Creates a new instance of a divided surface with a default layout.
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public static DividedSurface Create( Document document, Reference faceReference )
Public Shared Function Create ( document As Document, faceReference As Reference ) As DividedSurface
public: static DividedSurface^ Create( Document^ document, Reference^ faceReference )
static member Create : document : Document * faceReference : Reference -> DividedSurface
Parameters
Return Value
DividedSurfaceThe newly created divided surface.
| Exception | Condition |
|---|---|
| ArgumentException | The document does not allow creation of a divided surface. -or- Reference is unstable import element -or- Reference does not represent a face -or- Reference already hosts a divided surface |
| ArgumentNullException | A non-optional argument was null |
| InvalidOperationException | The document is in failure mode: an operation has failed, and Revit requires the user to either cancel the operation or fix the problem (usually by deleting certain elements). |
| ModificationForbiddenException | The document is in failure mode: an operation has failed, and Revit requires the user to either cancel the operation or fix the problem (usually by deleting certain elements). -or- The document is being loaded, or is in the midst of another sensitive process. |
| ModificationOutsideTransactionException | The document has no open transaction. |
public void DivideSurface(Document document, Form form) { Autodesk.Revit.ApplicationServices.Application application = document.Application; Options opt = application.Create.NewGeometryOptions(); opt.ComputeReferences = true; Autodesk.Revit.DB.GeometryElement geomElem = form.get_Geometry(opt); foreach (GeometryObject geomObj in geomElem) { Solid solid = geomObj as Solid; foreach (Face face in solid.Faces) { if (face.Reference != null) { DividedSurface ds = DividedSurface.Create(document,face.Reference); // create a divided surface with fixed number of U and V grid lines SpacingRule srU = ds.USpacingRule; srU.SetLayoutFixedNumber(16, SpacingRuleJustification.Center, 0, 0); SpacingRule srV = ds.VSpacingRule; srV.SetLayoutFixedNumber(24, SpacingRuleJustification.Center, 0, 0); break; // just divide one face of form } } } }
Public Sub DivideSurface(document As Document, form As Form) Dim application As Autodesk.Revit.ApplicationServices.Application = document.Application Dim opt As Options = application.Create.NewGeometryOptions() opt.ComputeReferences = True Dim geomElem As Autodesk.Revit.DB.GeometryElement = form.Geometry(opt) For Each geomObj As GeometryObject In geomElem Dim solid As Solid = TryCast(geomObj, Solid) For Each face As Face In solid.Faces If face.Reference IsNot Nothing Then Dim ds As DividedSurface = DividedSurface.Create(document, face.Reference) ' create a divided surface with fixed number of U and V grid lines Dim srU As SpacingRule = ds.USpacingRule srU.SetLayoutFixedNumber(16, SpacingRuleJustification.Center, 0, 0) Dim srV As SpacingRule = ds.VSpacingRule srV.SetLayoutFixedNumber(24, SpacingRuleJustification.Center, 0, 0) ' just divide one face of form Exit For End If Next Next End Sub
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