2021 Class
Changes 0
C

SunAndShadowSettings

Description:
The SunAndShadowSettings class represents the sun control.
Remarks:
The SunAndShadowSettings element represents the settings applied to a project or view regarding the position, dates, time intervals and other options for the sun control and solar studies. To differentiate between the project and view settings, test the ViewSpecific or OwnerViewId property. If the element is not view-specific this element represents a project-wide setting. If the element is associated to a view, this element represents a per view SunAndShadowSettings. When you create a new view, a new view-specific SunAndShadowSettings element is automatically created for it.
Inheritance Hierarchy:
System.Object
  Autodesk.Revit.DB.Element
    Autodesk.Revit.DB.SunAndShadowSettings
public class SunAndShadowSettings : Element
SunAndShadowSettings sunSettings = view.SunAndShadowSettings; // get current settings from view

// modify Sun and Shadow Settings
DateTime sunrise = sunSettings.GetSunrise(DateTime.SpecifyKind(new DateTime(2011, 4, 20), DateTimeKind.Local)); // sunrise on April 20, 2011
DateTime sunset = sunSettings.GetSunset(DateTime.SpecifyKind(new DateTime(2011, 4, 22), DateTimeKind.Local)); // sunset on April 22, 2011
sunSettings.SunAndShadowType = SunAndShadowType.MultiDayStudy;
sunSettings.StartDateAndTime = sunrise.AddHours(2); // start 2 hours after sunrise on April 20, 2011
sunSettings.EndDateAndTime = sunset.AddHours(-2); // end 2 hours before sunset on April 22, 2011
if (sunSettings.IsTimeIntervalValid(SunStudyTimeInterval.Hour)) // check that this interval is valid for this SunAndShadowType
    sunSettings.TimeInterval = SunStudyTimeInterval.Hour;

// check for validity of start and end times
if (!(sunSettings.IsAfterStartDateAndTime(sunSettings.EndDateAndTime)
    && sunSettings.IsBeforeEndDateAndTime(sunSettings.StartDateAndTime)))
    TaskDialog.Show("Error", "Start and End dates are invalid");

view.get_Parameter(BuiltInParameter.VIEW_GRAPH_SUN_PATH).Set(1); // turn on display of the sun path
Name Return Type Description Inherited From
M CalculateTimeZone(Double, Double) double Use Revit's utilities to calculate the time zone for a given longitude and latitude.
M FitToModel() None Adjust SunAndShadowSettings to fit around the current model geometry.
M GetActiveSunAndShadowSettings(Document) Element Returns the current SunAndShadowSettings element assigned to the active view for the supplied document.
M GetFrameAltitude(Double) double Identifies the altitude of the sun (angle in radians) for a specific frame.
M GetFrameAzimuth(Double) double Identifies the azimuth of the sun (angle in radians) for a specific frame.
M GetFrameTime(Double) DateTime Identifies the date and time of the SunAndShadowSettings element for a given frame.
M GetMatchingPreset() string Finds the name of the 'per-document' SunAndShadowSettings that matches the properties of this per-view element.
M GetSunrise(DateTime) DateTime Identifies the sunrise time for the SunAndShadowSettings element at its current location and indicated date.
M GetSunset(DateTime) DateTime Identifies the sunset time for the SunAndShadowSettings element at its current location and indicated date.
M IsAfterStartDateAndTime(DateTime) bool Checks whether the end date and time is valid.
M IsBeforeEndDateAndTime(DateTime) bool Checks whether the start date and time is valid.
M IsFrameValid(Double) bool Checks whether the frame is valid for the supplied SunAndShadowSettings.
M IsGroundPlaneLevelValid(ElementId) bool Checks whether the element represents a valid Ground Plane level.
M IsTimeIntervalValid(SunStudyTimeInterval) bool Checks whether the time interval is valid for the SunAndShadowType.
M ArePhasesModifiable() bool Returns true if the properties CreatedPhaseId and DemolishedPhaseId can be modified for this Element. Element
M CanBeHidden(View) bool Indicates if the element can be hidden in the view. Element
M CanBeLocked() bool Identifies if the element can be locked. Element
M CanDeleteSubelement(Subelement) bool Checks if given subelement can be removed from the element. Element
M CanHaveAnalyticalModel() bool Indicates whether the Element can have an Analytical Model. Element
M CanHaveTypeAssigned() bool Identifies if the element can have a type assigned. Element
M CanHaveTypeAssigned(Document, ICollection<ElementId>) bool Checks if all elements in the set can have a type assigned. Element
M ChangeTypeId(Document, ICollection<ElementId>, ElementId) IDictionary Changes the type of all elements in the given set. Element
M ChangeTypeId(ElementId) ElementId Changes the type of the element. Element
M DeleteEntity(Schema) bool Deletes the existing entity created by %schema% in the element Element
M DeleteSubelement(Subelement) bool Removes a subelement from the element. Element
M DeleteSubelements(IList<Subelement>) bool Removes the subelements from the element. Element
M Dispose() None Releases all resources used by the Element
M GetAnalyticalModelId() Element Id. Retrieves the Element Id of the Analytical Model Element for this Element. Element
M GetAnalyticalModel() Writeable Analytical Model. Retrieves writeable Analytical Model for Element. Element
M GetChangeTypeAny() ChangeType Returns ChangeType associated with any change in an element. Element
M GetChangeTypeElementAddition() ChangeType Returns ChangeType associated with element addition Element
M GetChangeTypeElementDeletion() ChangeType Returns ChangeType associated with element deletion. Element
M GetChangeTypeGeometry() ChangeType Returns ChangeType associated with a change in the geometry of an element Element
M GetChangeTypeParameter(ElementId) ChangeType Returns ChangeType associated with a change in a parameter's value Element
M GetChangeTypeParameter(Parameter) ChangeType Returns ChangeType associated with a change in a parameter's value Element
M GetDependentElements(ElementFilter) IList<ElementId> Get all elements that, from a logical point of view, are the children of this Element. Element
M GetEntity(Schema) The returned Entity. Returns the existing entity corresponding to the Schema if it has been saved in the Element, or an invalid entity otherwise. Element
M GetEntitySchemaGuids() IList<Guid> Returns the Schema guids of any Entities stored in this element. Element
M GetExternalFileReference() ExternalFileReference Gets information pertaining to the external file referenced by the element. Element
M GetExternalResourceReference(ExternalResourceType) ExternalResourceReference Gets the ExternalResourceReference associated with a specified external resource type. Element
M GetExternalResourceReferences() IDictionary Gets the full map of the external resource references referenced by the element. Element
M GetGeneratingElementIds(GeometryObject) ICollection<ElementId> Returns the ids of the element(s) that generated the input geometry object. Element
M GetGeometryObjectFromReference(Reference) GeometryObject Retrieve one geometric primitive contained in the element given a reference. Element
M GetMaterialArea(ElementId, Boolean) double Gets the area of the material with the given id. Element
M GetMaterialIds(Boolean) ICollection<ElementId> Gets the element ids of all materials present in the element. Element
M GetMaterialVolume(ElementId) double Gets the volume of the material with the given id. Element
M GetMonitoredLinkElementIds() IList<ElementId> Provides the link instance IDs when the element is monitoring. Element
M GetMonitoredLocalElementIds() IList<ElementId> Provides the local element IDs when the element is monitoring. Element
M GetOrderedParameters() IList<Parameter> Gets the parameters associated to the element in order. Element
M GetParameterFormatOptions(ElementId) FormatOptions Returns a FormatOptions override for the element Parameter, or a default FormatOptions if no override exists. Element
M GetParameters(String) IList<Parameter> Retrieves the parameters from the element via the given name. Element
M GetPhaseStatus(ElementId) ElementOnPhaseStatus Gets the status of a given element in the input phase Element
M GetSubelements() IList<Subelement> Returns the collection of element subelements. Element
M GetTypeId() ElementId Returns the identifier of this element's type. Element
M GetValidTypes() ICollection<ElementId> Obtains a set of types that are valid for this element. Element
M GetValidTypes(Document, ICollection<ElementId>) ICollection<ElementId> Obtains a set of types that are valid for all given elements. Element
M HasPhases() bool Returns true if this Element has the properties CreatedPhaseId and DemolishedPhaseId. Element
M IsExternalFileReference() bool Determines whether this Element represents an external file. Element
M IsHidden(View) bool Identifies if the element has been permanently hidden in the view. Element
M IsMonitoringLinkElement() bool Indicate whether an element is monitoring any elements in any linked models. Element
M IsMonitoringLocalElement() bool Indicate whether an element is monitoring other local elements. Element
M IsPhaseCreatedValid(ElementId) bool Returns true if createdPhaseId is an allowed value for the property CreatedPhaseId in this Element. Element
M IsPhaseDemolishedValid(ElementId) bool Returns true if demolishedPhaseId is an allowed value for the property DemolishedPhaseId in this Element. Element
M IsValidType(Document, ICollection<ElementId>, ElementId) bool Checks if given type is valid for the set of elements. Element
M IsValidType(ElementId) bool Checks if given type is valid for this element. Element
M LookupParameter(String) nullNothingnullptr Attempts to find a parameter on the element which has the given name. Element
M RefersToExternalResourceReference(ExternalResourceType) bool Determines whether this Element uses external resources associated with a specified external resource type. Element
M RefersToExternalResourceReferences() bool Determines whether this Element uses external resources. Element
M SetEntity(Entity) None Stores the entity in the element. If an Entity described by the same Schema already exists, it is overwritten. Element
Name Return Type Description Inherited From
P ActiveFrame double Identifies the active animation frame for a single-day or multi-day study, starting at 1.0 for the first frame and incrementing in intervals of 1.0.
P ActiveFrameTime DateTime Identifies the date and time of the SunAndShadowSettings element for the active frame.
P Altitude double Altitude setting (angle in radians). This is only relevant when dealing with a SunAndShadowSettings element that uses lighting mode.
P Azimuth double Azimuth setting (angle in radians). This is only relevant when dealing with a SunAndShadowSettings element that uses lighting mode.
P EndDateAndTime DateTime Identifies the end date and time.
P GroundPlaneHeight double Identifies the ground plane height.
P GroundPlaneLevelId ElementId Identifies the element id of the Ground Plane level for the SunAndShadowSettings element.
P Latitude double Identifies the current latitude used by the SunAndShadowSettings element.
P Longitude double Identifies the current longitude used by the SunAndShadowSettings element.
P NumberOfFrames double Identifies the total number of animation frames for a single-day or multi-day study.
P ProjectLocationId ElementId Identifies the ProjectLocation element used by the SunAndShadowSettings element.
P ProjectLocationName string Identifies the name of the project location used by the SunAndShadowSettings element.
P RelativeToView bool Identifies whether the SunAndShadowSettings element is relative to the view direction. This is only relevant for lighting mode.
P SharesSettings bool Identifies whether settings are shared globally.
P StartDateAndTime DateTime Identifies the start or current date and time.
P SunAndShadowType SunAndShadowType Identifies the type of the SunAndShadowSettings element.
P SunriseToSunset bool Identifies whether the current single day sun study is set to run from sunrise to sunset.
P TimeInterval SunStudyTimeInterval Identifies the time interval between animation frames.
P TimeZone double Identifies the time zone.
P UsesDST bool Identifies whether the SunAndShadowSettings element is using daylight savings time.
P UsesGroundPlane bool Identifies whether the SunAndShadowSettings element uses a ground plane.
P Visible bool Visibility in current view for a per-view SunAndShadowSettings element.
P AssemblyInstanceId ElementId The id of the assembly instance to which the element belongs. Element
P BoundingBox BoundingBoxXYZ Retrieves a box that circumscribes all geometry of the element. Element
P Category Category Retrieves a Category object that represents the category or sub category in which the element resides. Element
P CreatedPhaseId ElementId Id of a Phase at which the Element was created. Element
P DemolishedPhaseId ElementId Id of a Phase at which the Element was demolished. Element
P DesignOption DesignOption Returns the design option to which the element belongs. Element
P Document Document Returns the Document in which the Element resides. Element
P Geometry GeometryElement Retrieves the geometric representation of the element. Element
P GroupId ElementId The id of the group to which an element belongs. Element
P Id ElementId A unique identifier for an Element in an Autodesk Revit project. Element
P IsTransient bool Indicates whether an element is transient or permanent. Element
P IsValidObject bool Specifies whether the .NET object represents a valid Revit entity. Element
P LevelId ElementId The id of the level associated with the element. Element
P Location Location This property is used to find the physical location of an element within a project. Element
P Name string A human readable name for the Element. Element
P OwnerViewId ElementId The id of the view that owns the element. Element
P Parameter Parameter Retrieves a parameter from the element given a parameter id. Element
P Parameter Parameter Retrieves a parameter from the element based on its definition. Element
P Parameter Parameter Retrieves a parameter from the element given a GUID for a shared parameter. Element
P ParametersMap ParameterMap Retrieves a map containing all of the parameters that are contained within the element. Element
P Parameters ParameterSet Retrieves a set containing all of the parameters that are contained within the element. Element
P Pinned bool Identifies if the element has been pinned to prevent changes. Element
P UniqueId string A stable unique identifier for an element within the document. Element
P VersionGuid Guid Get the element version Guid. Element
P ViewSpecific bool Identifies if the element is owned by a view. Element
P WorksetId WorksetId Get Id of the Workset which owns the element. Element