Creates a new instance of a divided surface with a default layout.
Namespace: Autodesk.Revit.DBAssembly: RevitAPI (in RevitAPI.dll) Version: 26.4.0.0 (26.4.0.0)
Syntax
C#
public static DividedSurface Create(
Document document,
Reference faceReference
)
Parameters
- document Document
-
The document.
- faceReference Reference
-
Reference that represents a face.
Return Value
DividedSurface
The newly created divided surface.
Exceptions
| 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.
|
Example
C#
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);
SpacingRule srU = ds.USpacingRule;
srU.SetLayoutFixedNumber(16, SpacingRuleJustification.Center, 0, 0);
SpacingRule srV = ds.VSpacingRule;
srV.SetLayoutFixedNumber(24, SpacingRuleJustification.Center, 0, 0);
break;
}
}
}
}
VB
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)
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)
Exit For
End If
Next
Next
End Sub
See Also
Reference