RenderingSettings Class

RenderingSettings Class

Represents the rendering settings for a 3d view.
Inheritance Hierarchy
SystemObject
  Autodesk.Revit.DBRenderingSettings

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public class RenderingSettings : IDisposable
Public Class RenderingSettings
	Implements IDisposable
public ref class RenderingSettings : IDisposable
type RenderingSettings = 
    class
        interface IDisposable
    end

The RenderingSettings type exposes the following members.

Properties
 NameDescription
Public propertyBackgroundStyle The enum value that controls the background style for rendering.
Public propertyIsValidObject Specifies whether the .NET object represents a valid Revit entity.
Public propertyLightingSource The lighting scheme type.
Public propertyPrinterResolution The resolution level when using printer.
Public propertyResolutionTarget The resolution target.
Public propertyResolutionValue The rendering resolution in dots per inch (DPI).
Public propertyUsesRegionRendering The bool value that indicates whether to use region rendering.
Top
Methods
 NameDescription
Public methodDisposeReleases all resources used by the RenderingSettings
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodGetBackgroundSettings Returns an object that represents the rendering background settings.
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetRenderingImageExposureSettings Returns an object that represents the rendering image exposure settings.
Public methodGetRenderingQualitySettings Returns an object that represents the rendering quality settings.
Public methodGetRenderingRegionOutline Returns the outline of the rendering region.
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodSetBackgroundSettings Changes the rendering background settings details for the current background style.
Public methodSetRenderingImageExposureSettings Changes the rendering image exposure settings.
Public methodSetRenderingQualitySettings Change rendering quality settings.
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
Example
public void GetRenderingSettingsData(View3D view3D)
{
    RenderingSettings renderingSettings = view3D.GetRenderingSettings();

    // get print or screen resolution data
    if (renderingSettings.ResolutionTarget == ResolutionTarget.Printer) // for print resolution
    {
        PrinterResolution printResolution = renderingSettings.PrinterResolution;
        int resolutionValue = renderingSettings.ResolutionValue;
    }
    else    // for screen resolution
    {
        int resolutionValue = renderingSettings.ResolutionValue;
    }

    // Get the outline of the rendering region. 
    renderingSettings.UsesRegionRendering = true;
    Outline regionOutline = renderingSettings.GetRenderingRegionOutline();
    XYZ max = regionOutline.MaximumPoint;
    XYZ min = regionOutline.MinimumPoint;

    // get lighting information.
    renderingSettings.LightingSource = LightingSource.ExteriorSun; // set lighting scheme type
    // Please note that the sun setting has been exposed in View.SunAndShadowSettings property already.
    SunAndShadowSettings sunSettings = view3D.SunAndShadowSettings;

    // get the background setting data
    switch (renderingSettings.BackgroundStyle)
    {
        case BackgroundStyle.Color: // for color style
            ColorBackgroundSettings colorBKSettings = renderingSettings.GetBackgroundSettings() as ColorBackgroundSettings;
            Color bkColor = colorBKSettings.Color;
            break;
        case BackgroundStyle.Image: // for image style
            ImageBackgroundSettings imageBKSettings = renderingSettings.GetBackgroundSettings() as ImageBackgroundSettings;
            BackgroundImageFit imageFit = imageBKSettings.BackgroundImageFit;
            string filePath = imageBKSettings.FilePath;
            break;
        case BackgroundStyle.SkyCloudy: // for sky related styles
        case BackgroundStyle.SkyFewClouds:
        case BackgroundStyle.SkyNoClouds:
        case BackgroundStyle.SkyVeryCloudy:
        case BackgroundStyle.SkyVeryFewClouds:
            SkyBackgroundSettings skyBKSettings = renderingSettings.GetBackgroundSettings() as SkyBackgroundSettings;
            //float fHaze = skyBKSettings.Haze;
            break;
        default:
            throw new InvalidOperationException("Not expected background style");
    }

    // Get the rendering image exposure settings
    RenderingImageExposureSettings exposureSettings = renderingSettings.GetRenderingImageExposureSettings();
    double imageShadows = exposureSettings.Shadows;

    // Get the rendering quality settings
    RenderingQualitySettings qualitySettings = renderingSettings.GetRenderingQualitySettings();

    if (qualitySettings.RenderingQuality == RenderingQuality.Custom)
    {
       // The user can set the data only in custom quality
       qualitySettings.RenderDuration = RenderDuration.ByTime;
       qualitySettings.RenderTime = 10;
    }
    else
    {
       // RenderLevel property value is returned according to its rendering quality style.
       // For example, it returns 1.0 for Draft quality and returns 5.0 for Medium quality.
       // RenderDuration and RenderTime property values are always the same for non-custom quality.
       int renderLevels = qualitySettings.RenderLevel;
    }
}
Public Sub GetRenderingSettingsData(view3D As View3D)
   Dim renderingSettings As RenderingSettings = view3D.GetRenderingSettings()

   ' get print or screen resolution data
   If renderingSettings.ResolutionTarget = ResolutionTarget.Printer Then
      ' for print resolution
      Dim printResolution As PrinterResolution = renderingSettings.PrinterResolution
      Dim resolutionValue As Integer = renderingSettings.ResolutionValue
   Else
      ' for screen resolution
      Dim resolutionValue As Integer = renderingSettings.ResolutionValue
   End If

   ' Get the outline of the rendering region. 
   renderingSettings.UsesRegionRendering = True
   Dim regionOutline As Outline = renderingSettings.GetRenderingRegionOutline()
   Dim max As XYZ = regionOutline.MaximumPoint
   Dim min As XYZ = regionOutline.MinimumPoint

   ' get lighting information.
   renderingSettings.LightingSource = LightingSource.ExteriorSun
   ' set lighting scheme type
   ' Please note that the sun setting has been exposed in View.SunAndShadowSettings property already.
   Dim sunSettings As SunAndShadowSettings = view3D.SunAndShadowSettings

   ' get the background setting data
   Select Case renderingSettings.BackgroundStyle
      Case BackgroundStyle.Color
         ' for color style
         Dim colorBKSettings As ColorBackgroundSettings = TryCast(renderingSettings.GetBackgroundSettings(), ColorBackgroundSettings)
         Dim bkColor As Color = colorBKSettings.Color
         Exit Select
      Case BackgroundStyle.Image
         ' for image style
         Dim imageBKSettings As ImageBackgroundSettings = TryCast(renderingSettings.GetBackgroundSettings(), ImageBackgroundSettings)
         Dim imageFit As BackgroundImageFit = imageBKSettings.BackgroundImageFit
         Dim filePath As String = imageBKSettings.FilePath
         Exit Select
         ' for sky related styles
      Case BackgroundStyle.SkyCloudy, BackgroundStyle.SkyFewClouds, BackgroundStyle.SkyNoClouds, BackgroundStyle.SkyVeryCloudy, BackgroundStyle.SkyVeryFewClouds
         Dim skyBKSettings As SkyBackgroundSettings = TryCast(renderingSettings.GetBackgroundSettings(), SkyBackgroundSettings)
              'Dim haze As Single = skyBKSettings.Haze
         Exit Select
      Case Else
         Throw New InvalidOperationException("Not expected background style")
   End Select

   ' Get the rendering image exposure settings
   Dim exposureSettings As RenderingImageExposureSettings = renderingSettings.GetRenderingImageExposureSettings()
      Dim imageShadows As Double = exposureSettings.[Shadows]


  ' Get the rendering quality settings
  Dim qualitySettings As RenderingQualitySettings = renderingSettings.GetRenderingQualitySettings()

  If qualitySettings.RenderingQuality = RenderingQuality.[Custom] Then
      ' The user can set the data only in custom quality
      qualitySettings.RenderDuration = RenderDuration.ByTime
      qualitySettings.RenderTime = 10
  Else
      ' RenderLevel property value is returned according to its rendering quality style.
      ' For example, it returns 1.0 for Draft quality and returns 5.0 for Medium quality.
      ' RenderDuration and RenderTime property values are always the same for non-custom quality.
      Dim renderLevels As Integer = qualitySettings.RenderLevel
  End If
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