Get and Set Sunlight Source Property Values Example (VBA)
This example shows how to get and set sunlight source property values.
'----------------------------------------------------------------------------
' Preconditions: Open a part with a sunlight source.
'
' Postconditions: Inspect the Immediate window for the sunlight source
'
property values.
' ---------------------------------------------------------------------------
Dim swApp
As SldWorks.SldWorks
Dim swModelDoc As SldWorks.ModelDoc2
Dim swModelDoxExt As SldWorks.ModelDocExtension
Dim retval As Boolean
Dim NorthDirection As SldWorks.MathVector
Dim DateTime As String
Dim vVector As Variant
Dim nVector(2) As Double
Dim swMathUtil As SldWorks.MathUtility
Dim NorthLatitude As Double
Dim EastLongitude As Double
Dim TimeZone As Double
Option Explicit
Sub main()
Set swApp = Application.SldWorks
Set swModelDoc = swApp.ActiveDoc
Set swModelDoxExt = swModelDoc.Extension
'Get sunlight source property values
retval = swModelDoxExt.GetSunLightSourcePropertyValues(NorthDirection,
NorthLatitude, EastLongitude, TimeZone, DateTime)
Debug.Print "North Direction : " &
NorthDirection.ArrayData(0) & "," & NorthDirection.ArrayData(1) & "," &
NorthDirection.ArrayData(2)
Debug.Print "NorthLatitude : " & NorthLatitude
Debug.Print "EastLongitude : " & EastLongitude
Debug.Print "TimeZone : " & TimeZone
Debug.Print "DateTime : " & DateTime
'Set sunlight source property values
Set swMathUtil = swApp.GetMathUtility
nVector(0) = 1: nVector(1) = 0: nVector(2) = 0
vVector = nVector
Set NorthDirection = swMathUtil.CreateVector((vVector))
DateTime = "11/9/2012 2:48:13 PM"
NorthLatitude = NorthLatitude + 0.1
EastLongitude = EastLongitude + 0.1
TimeZone = TimeZone + 0.5
retval = swModelDoxExt.SetSunLightSourcePropertyValues(NorthDirection,
NorthLatitude, EastLongitude, TimeZone, DateTime)
End Sub