## UIApplyShaderToCnxPoints

### Introduced

v1.0

### Description

Pops up a menu of shader presets to let the user select one, then instantiates this shader and connects it to the specified connection points of another shader through intermediate Mix 2 Colors shaders.
Note: The command fails if the selected shader cannot be connected to the connection points because of connection type mismatch or because shaders are already connected to it.

### Scripting Syntax

    UIApplyShaderToCnxPoints( [InputObj], [InputObjs], [X], [Y] );

### Parameters

Parameter | Type | Description
--- | --- | ---
InputObj |  | This parameter is NOT USED.
InputObjs | String | List of connection points Default Value: Current Selection
X | Long | X screen coordinate of menu (from left of screen) Default Value: 0
Y | Long | Y screen coordinate of menu (from top of screen) Default Value: 0

### Examples

#### VBScript Example

    '

    ' This example demonstrates how to get the user to select a shader and use it to create

    ' a complex shader with intermediate Mix 2 Colors shaders

    '

    NewScene , false

    ' Get the default pass

    Set oDefPass = GetValue( "Passes.Default_Pass" )

    ' Create a sphere and apply a default shader to instantiate a local material.

    Set oSphere = CreatePrim( "Sphere", "NurbsSurface" )

    ApplyShader , oSphere

    ' The Render Tree shows a Phong shader connected to the sphere material.

    OpenView "Render Tree"

    SelectObj oSphere

    ' Pop up a menu of shader presets on top of the Top viewport

    ' and let the user interactively select one.

    set l_CnxPoints = CreateObject( "XSI.Collection" )

    l_CnxPoints.Add "sphere.material.surface.Phong.diffuse"

    l_CnxPoints.Add "sphere.material.surface.Phong.specular"

    UIApplyShaderToCnxPoints , l_CnxPoints, 300, 100

    ' The user-selected shader, automatically renamed Shader, is connected

    ' to the Phong shader Diffuse and Specular connection points through

    ' intermediate Mix 2 Colors shaders as can be seen in the Render Tree.

    OpenView "Render Tree"

    SelectObj oSphere

### See Also

AddObjectsToShader RemoveObjectsFromShader ApplyShader RemoveShaderFromCnxPoint RemoveAllShadersFromCnxPoint SIConnectShaderToCnxPoint SIApplyShaderToCnxPoint