import sd from sd.api import sdproperty, sdnode, sdbasetypes, sdvaluefloat4 app = sd.getContext().getSDApplication() ui_mgr = app.getQtForPythonUIMgr() graph = ui_mgr.getCurrentGraph() # Create Uniform Color node node_uniform = graph.newNode("sbs::compositing::uniform") node_uniform.setPosition(sdbasetypes.float2(0, 0)) # Set value for Uniform Color's Output color property node_uniform.setPropertyValue( node_uniform.getPropertyFromId( "outputcolor", sdproperty.SDPropertyCategory.Input ), sdvaluefloat4.SDValueFloat4.sNew(sdbasetypes.float4(1, 0.5, 0, 1)) ) # Create Levels node node_levels = graph.newNode("sbs::compositing::levels") node_levels.setPosition(sdbasetypes.float2(150, 0)) # Set values for Levels' Level Out properties # This should result in the input image being inverted node_levels.setPropertyValue( node_levels.getPropertyFromId( "leveloutlow", sdproperty.SDPropertyCategory.Input ), sdvaluefloat4.SDValueFloat4.sNew(sdbasetypes.float4(1, 1, 1, 0)) ) node_levels.setPropertyValue( node_levels.getPropertyFromId( "levelouthigh", sdproperty.SDPropertyCategory.Input ), sdvaluefloat4.SDValueFloat4.sNew(sdbasetypes.float4(0, 0, 0, 1)) ) # Get Uniform color output property node_uniform_output = node_uniform.getPropertyFromId( "unique_filter_output", sdproperty.SDPropertyCategory.Output ) # Get Levels input property node_levels_input = node_levels.getPropertyFromId( "input1", sdproperty.SDPropertyCategory.Input ) # Connect Uniform color output to Levels input node_uniform.newPropertyConnection( node_uniform_output, node_levels, node_levels_input )