Creates empty analysis results primitive associated with a face and a transform.
Namespace: Autodesk.Revit.DB.Analysis
Assembly: RevitAPI (in RevitAPI.dll) Version: 23.0.0.0 (23.1.0.0)
Since:
2011
Syntax
| C# |
|---|
public int AddSpatialFieldPrimitive(
Face face,
Transform trf
) |
| Visual Basic |
|---|
Public Function AddSpatialFieldPrimitive ( _
face As Face, _
trf As Transform _
) As Integer |
| Visual C++ |
|---|
public:
int AddSpatialFieldPrimitive(
Face^ face,
Transform^ trf
) |
Return Value
Unique index of primitive for future references
Remarks
Examples
CopyC#
BoundingBoxUV bb = face.GetBoundingBox();
UV min = bb.Min;
UV max = bb.Max;
UV faceCenter = new UV((max.U + min.U) / 2, (max.V + min.V) / 2);
Transform computeDerivatives = face.ComputeDerivatives(faceCenter);
XYZ faceCenterNormal = computeDerivatives.BasisZ;
XYZ faceCenterNormalMultiplied = faceCenterNormal.Normalize().Multiply(2.5);
Transform transform = Transform.CreateTranslation(faceCenterNormalMultiplied);
SpatialFieldManager sfm = SpatialFieldManager.CreateSpatialFieldManager(doc.ActiveView, 3);
int idx = sfm.AddSpatialFieldPrimitive(face, transform);
CopyVB.NET
Dim bb As BoundingBoxUV = face.GetBoundingBox()
Dim min As UV = bb.Min
Dim max As UV = bb.Max
Dim faceCenter As New UV((max.U + min.U) / 2, (max.V + min.V) / 2)
Dim computeDerivatives As Transform = face.ComputeDerivatives(faceCenter)
Dim faceCenterNormal As XYZ = computeDerivatives.BasisZ
Dim faceCenterNormalMultiplied As XYZ = faceCenterNormal.Normalize().Multiply(2.5)
Dim transform__1 As Transform = Transform.CreateTranslation(faceCenterNormalMultiplied)
Dim sfm As SpatialFieldManager = SpatialFieldManager.CreateSpatialFieldManager(doc.ActiveView, 3)
Dim idx As Integer = sfm.AddSpatialFieldPrimitive(face, transform__1)
Exceptions
See Also