Rhino C++ API  8.5
Public Member Functions | Static Public Member Functions | List of all members
IRhRdkSun Class Referenceabstract

#include <IRhRdkSun.h>

Inheritance diagram for IRhRdkSun:
IRhRdkSunRO CRhRdkSunStorage

Public Member Functions

virtual ~IRhRdkSun ()
 
virtual void _InternalSetAziAlt (double, double)=0
 
virtual IRhRdkSunBeginChange (RhRdkChangeContext cc) const =0
 
virtual void BeginNotifyBracket (void)=0
 
virtual void CopyFrom (const IRhRdkSun &other)=0
 
virtual bool Edit (void)=0
 
virtual bool EndChange (void)=0
 
virtual void EndNotifyBracket (void)=0
 
virtual bool LoadFromFile (const wchar_t *wszFullPath)=0
 
virtual bool ReadFromArchive (ON_BinaryArchive &archive)=0
 
virtual void SetAltitude (double dAltitude)=0
 
virtual void SetAzimuth (double dAzimuth)=0
 
virtual void SetDaylightSavingMinutes (int iMinutes)=0
 
virtual void SetDaylightSavingOn (bool bOn)=0
 
virtual void SetEnableAllowed (bool bAllowed)=0
 
virtual void SetEnableOn (bool bOn)=0
 
void SetIntensity (double dIntensity)
 
virtual void SetLatitude (double dLatitude)=0
 
virtual void SetLocalDateTime (int iYear, int iMonth, int iDay, double dHours)=0
 
virtual void SetLongitude (double dLongitude)=0
 
virtual void SetManualControlAllowed (bool bAllowed)=0
 
virtual void SetManualControlOn (bool bManual)=0
 
virtual void SetNorth (double dNorth)=0
 
virtual void SetShadowIntensity (double dIntensity)=0
 
virtual void SetTimeZone (double dHours)=0
 
virtual void SetUTCDateTime (int iYear, int iMonth, int iDay, double dHours)=0
 
virtual void SetVector (const ON_3dVector &v)=0
 
virtual bool WriteToArchive (ON_BinaryArchive &archive) const =0
 
- Public Member Functions inherited from IRhRdkSunRO
virtual double Altitude (void) const =0
 
virtual double Azimuth (void) const =0
 
virtual DWORD CRC (void) const =0
 
virtual int DaylightSavingMinutes (void) const =0
 
virtual bool DaylightSavingOn (void) const =0
 
virtual bool EnableAllowed (void) const =0
 
virtual bool EnableOn (void) const =0
 
virtual void * EVF (const wchar_t *, void *)=0
 
double Intensity (void) const
 
virtual bool IsEqual (const class IRhRdkSun &other) const =0
 
virtual bool IsValid (void) const =0
 
virtual double Latitude (void) const =0
 
virtual ON_Light Light (void) const =0
 
virtual void LocalDateTime (int &iYearOut, int &iMonthOut, int &iDayOut, double &dHoursOut) const =0
 
virtual double Longitude (void) const =0
 
virtual bool ManualControlAllowed (void) const =0
 
virtual bool ManualControlOn (void) const =0
 
virtual double North (void) const =0
 
virtual bool SaveToFile (const wchar_t *wszFullPath) const =0
 
virtual double ShadowIntensity (void) const =0
 
virtual double TimeZone (void) const =0
 
virtual void UTCDateTime (int &iYearOut, int &iMonthOut, int &iDayOut, double &dHoursOut) const =0
 
virtual ON_3dVector Vector (void) const =0
 

Static Public Member Functions

static IRhRdkSunNew (void)
 

Additional Inherited Members

- Protected Member Functions inherited from IRhRdkSunRO
virtual ~IRhRdkSunRO ()
 

Detailed Description

This interface is deprecated and only kept for backward compatibility.

Constructor & Destructor Documentation

◆ ~IRhRdkSun()

virtual IRhRdkSun::~IRhRdkSun ( )
inlinevirtual

Member Function Documentation

◆ _InternalSetAziAlt()

virtual void IRhRdkSun::_InternalSetAziAlt ( double  ,
double   
)
pure virtual

Implemented in CRhRdkSunStorage.

◆ BeginChange()

virtual IRhRdkSun& IRhRdkSun::BeginChange ( RhRdkChangeContext  cc) const
pure virtual

Call this method to get a non-const object upon which you can call non-const methods. Calls to this method are counted; you must call EndChange() once for every call to BeginChange(). Please do not use const_cast or any other means of circumventing this requirement.

◆ BeginNotifyBracket()

virtual void IRhRdkSun::BeginNotifyBracket ( void  )
pure virtual

Call this before doing multiple 'Set' operations.

Implemented in CRhRdkSunStorage.

◆ CopyFrom()

virtual void IRhRdkSun::CopyFrom ( const IRhRdkSun other)
pure virtual

Copy this sun from another one.

◆ Edit()

virtual bool IRhRdkSun::Edit ( void  )
pure virtual

Edits the sun in a pop-up editor.

◆ EndChange()

virtual bool IRhRdkSun::EndChange ( void  )
pure virtual

◆ EndNotifyBracket()

virtual void IRhRdkSun::EndNotifyBracket ( void  )
pure virtual

Call this after doing multiple 'Set' operations.

Implemented in CRhRdkSunStorage.

◆ LoadFromFile()

virtual bool IRhRdkSun::LoadFromFile ( const wchar_t *  wszFullPath)
pure virtual

Load the sun from a file.

Implemented in CRhRdkSunStorage.

◆ New()

static IRhRdkSun* IRhRdkSun::New ( void  )
static

◆ ReadFromArchive()

virtual bool IRhRdkSun::ReadFromArchive ( ON_BinaryArchive archive)
pure virtual

◆ SetAltitude()

virtual void IRhRdkSun::SetAltitude ( double  dAltitude)
pure virtual

Set the sun's altitude when manual control is in effect.

Parameters
dAltitudeis the sun's altitude in degrees in the range -90 to +90.

Implemented in CRhRdkSunStorage.

◆ SetAzimuth()

virtual void IRhRdkSun::SetAzimuth ( double  dAzimuth)
pure virtual

Set the azimuth of the sun when manual control is in effect.

Parameters
dAzimuthis the sun's azimuth in degrees. The value increases Eastwards with North as zero.
Note
This value is not affected by the direction of north.
See also
North()

Implemented in CRhRdkSunStorage.

◆ SetDaylightSavingMinutes()

virtual void IRhRdkSun::SetDaylightSavingMinutes ( int  iMinutes)
pure virtual

Set the daylight saving of the observer in minutes, in the range 0 to 120.

Implemented in CRhRdkSunStorage.

◆ SetDaylightSavingOn()

virtual void IRhRdkSun::SetDaylightSavingOn ( bool  bOn)
pure virtual

Set whether or not the observer is using daylight saving time.

Implemented in CRhRdkSunStorage.

◆ SetEnableAllowed()

virtual void IRhRdkSun::SetEnableAllowed ( bool  bAllowed)
pure virtual

Set whether or not enabling/disabling the sun is allowed.

Implemented in CRhRdkSunStorage.

◆ SetEnableOn()

virtual void IRhRdkSun::SetEnableOn ( bool  bOn)
pure virtual

Set whether or not the sun is enabled.

Implemented in CRhRdkSunStorage.

◆ SetIntensity()

void IRhRdkSun::SetIntensity ( double  dIntensity)

Set the intensity to be used for the sun. This is 1.0 by default.

◆ SetLatitude()

virtual void IRhRdkSun::SetLatitude ( double  dLatitude)
pure virtual

Set the latitude of the observer.

Parameters
dLatitudeis the observer's latitude in degrees in the range -90 to +90.

Implemented in CRhRdkSunStorage.

◆ SetLocalDateTime()

virtual void IRhRdkSun::SetLocalDateTime ( int  iYear,
int  iMonth,
int  iDay,
double  dHours 
)
pure virtual

Set the local date and time of the observer.

Parameters
iYearis the year which must lie between RDK_SUN_MIN_YEAR and RDK_SUN_MAX_YEAR inclusive.
iMonthis the month in the range 1 to 12.
iDayis the day in the range 1 to 31.
dHoursis the time expressed as decimal hours in the range 0 to 24.

Implemented in CRhRdkSunStorage.

◆ SetLongitude()

virtual void IRhRdkSun::SetLongitude ( double  dLongitude)
pure virtual

Set the longitude of the observer.

Parameters
dLongitudeis the observer's longitude in degrees in the range -180 to +180.

Implemented in CRhRdkSunStorage.

◆ SetManualControlAllowed()

virtual void IRhRdkSun::SetManualControlAllowed ( bool  bAllowed)
pure virtual

Set whether or not manual control of the sun position is allowed.

Implemented in CRhRdkSunStorage.

◆ SetManualControlOn()

virtual void IRhRdkSun::SetManualControlOn ( bool  bManual)
pure virtual

Set whether or not manual control of the sun position is in effect.

Implemented in CRhRdkSunStorage.

◆ SetNorth()

virtual void IRhRdkSun::SetNorth ( double  dNorth)
pure virtual

Set the azimuth corresponding to North.

Parameters
dNorthis the world angle corresponding to North in degrees in the range 0 to 360. This angle is zero along the x-axis and increases anticlockwise.

Implemented in CRhRdkSunStorage.

◆ SetShadowIntensity()

virtual void IRhRdkSun::SetShadowIntensity ( double  dIntensity)
pure virtual

ShadowIntensity is currently unused.

Implemented in CRhRdkSunStorage.

◆ SetTimeZone()

virtual void IRhRdkSun::SetTimeZone ( double  dHours)
pure virtual

Set the time zone of the observer in hours, in the range -12 to +13.

Implemented in CRhRdkSunStorage.

◆ SetUTCDateTime()

virtual void IRhRdkSun::SetUTCDateTime ( int  iYear,
int  iMonth,
int  iDay,
double  dHours 
)
pure virtual

Set the date and time of the observer as Coordinated Universal Time (UTC).

Parameters
iYearis the year which must lie between RDK_SUN_MIN_YEAR and RDK_SUN_MAX_YEAR inclusive.
iMonthis the month in the range 1 to 12.
iDayis the day in the range 1 to 31.
dHoursis the time expressed as decimal hours in the range 0 to 24.

Implemented in CRhRdkSunStorage.

◆ SetVector()

virtual void IRhRdkSun::SetVector ( const ON_3dVector v)
pure virtual

Set the sun's direction vector when manual control is in effect. This calculates and sets the sun's azimuth & altitude and takes into account the direction of north.

See also
SetAzimuth()
SetAltitude()
North().

◆ WriteToArchive()

virtual bool IRhRdkSun::WriteToArchive ( ON_BinaryArchive archive) const
pure virtual