Apply and Remove Texture To and From a Model by Display State Example (VBA)
This example shows how to add and remove texture to and from a model using
the name of a display state model.
'----------------------------------------------------------------------------
' Preconditions:
' Model opened by macro exists.
'
' Postconditions:
' 1. Model is opened and texture applied to the model.
' 2. At Stop, examine the model to verify that the texture was applied.
' 3. In the IDE, click the Continue button to resume
' execution of macro.
' 4. Examine the model to verify that the texture was removed.
'
' NOTE: Because the part document is used in
' a SolidWorks online tutorial, do not save any
' changes when closing the document.
'----------------------------------------------------
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swModelDocExt As SldWorks.ModelDocExtension
Dim texture As SldWorks.texture
Dim status As Boolean
Dim displayState As String
Dim errors As Long
Dim warnings As Long
Dim namStr As String
Sub main()
' Open document
Set swApp = Application.SldWorks
Set swModel = swApp.OpenDoc6("c:\Program
Files\SolidWorks Corp\SolidWorks\samples\tutorial\motionstudies\valve.sldprt",
swDocPART, swOpenDocOptions_Silent, "", errors, warnings)
Set swModelDocExt = swModel.Extension
' Set
texture on the model in the
' specified display state
displayState = "<Default>_Display State 1"
namStr = "<SystemTexture>\images\textures\pattern\checker2.jpg"
Set texture = swModelDocExt.CreateTexture(namStr, 5, 45, False)
status = swModelDocExt.SetTextureByDisplayState(displayState, texture)
' Examine the model to verify texture applied
' In the IDE, click Run > Continue to resume
'
running macro
Stop
' Remove
texture from model by display state
status =
swModelDocExt.RemoveTextureByDisplayState(displayState)
' Rebuild the model to verify texture was removed
swModel.ForceRebuild3
False
End Sub