LGraphNode Class
Base Class for all the node type classes
Item Index
Methods
- addConnection
- addInput
- addInputs
- addOutput
- addOutputs
- addProperty
- addWidget
- clearTriggeredSlot
- collapse
- computeSize
- configure
- connect
- disconnectInput
- disconnectOutput
- findInputSlot
- findOutputSlot
- getBounding
- getConnectionPos
- getInputData
- getInputDataByName
- getInputDataType
- getInputInfo
- getInputNode
- getInputOrProperty
- getOutputData
- getOutputInfo
- getOutputNodes
- getSlotInPosition
- getTitle
- isAnyOutputConnected
- isInputConnected
- isOutputConnected
- isPointInside
- pin
- removeInput
- removeOutput
- serialize
- setOutputData
- setOutputDataType
- toString
- trigger
- triggerSlot
Methods
addConnection
-
name
-
type
-
pos
-
direction
add an special connection to this node (used for special kinds of graphs)
Parameters:
-
name
String -
type
Stringstring defining the input type ("vec3","number",...)
-
pos
x,yposition of the connection inside the node
-
direction
Stringif is input or output
addInput
-
name
-
type
-
extra_info
add a new input slot to use in this node
Parameters:
-
name
String -
type
Stringstring defining the input type ("vec3","number",...), it its a generic one use 0
-
extra_info
Objectthis can be used to have special properties of an input (label, color, position, etc)
addInputs
-
array
add several new input slots in this node
Parameters:
-
array
Arrayof triplets like [[name,type,extra_info],[...]]
addOutput
-
name
-
type
-
extra_info
add a new output slot to use in this node
Parameters:
-
name
String -
type
Stringstring defining the output type ("vec3","number",...)
-
extra_info
Objectthis can be used to have special properties of an output (label, special color, position, etc)
addOutputs
-
array
add a new output slot to use in this node
Parameters:
-
array
Arrayof triplets like [[name,type,extra_info],[...]]
addProperty
-
name
-
default_value
-
type
-
extra_info
add a new property to this node
Parameters:
-
name
String -
default_value
-
type
Stringstring defining the output type ("vec3","number",...)
-
extra_info
Objectthis can be used to have special properties of the property (like values, etc)
addWidget
()
Object
Allows to pass
Returns:
the created widget
clearTriggeredSlot
-
slot
-
link_id
clears the trigger slot animation
Parameters:
-
slot
Numberthe index of the output slot
-
link_id
Number[optional] in case you want to trigger and specific output link in a slot
collapse
()
Collapse the node to make it smaller on the canvas
computeSize
-
minHeight
computes the size of a node according to its inputs and output slots
Parameters:
-
minHeight
Number
Returns:
the total size
configure
()
configure a node from an object containing the serialized info
connect
-
slot
-
node
-
target_slot
connect this node output to the input of another node
Parameters:
-
slot
Number_or_string(could be the number of the slot or the string with the name of the slot)
-
node
LGraphNodethe target node
-
target_slot
Number_or_stringthe input slot of the target node (could be the number of the slot or the string with the name of the slot, or -1 to connect a trigger)
Returns:
the link_info is created, otherwise null
disconnectInput
-
slot
disconnect one input
Parameters:
-
slot
Number_or_string(could be the number of the slot or the string with the name of the slot)
Returns:
if it was disconnected succesfully
disconnectOutput
-
slot
-
target_node
disconnect one output to an specific node
Parameters:
-
slot
Number_or_string(could be the number of the slot or the string with the name of the slot)
-
target_node
LGraphNodethe target node to which this slot is connected [Optional, if not target_node is specified all nodes will be disconnected]
Returns:
if it was disconnected succesfully
findInputSlot
-
name
returns the input slot with a given name (used for dynamic slots), -1 if not found
Parameters:
-
name
Stringthe name of the slot
Returns:
the slot (-1 if not found)
findOutputSlot
-
name
returns the output slot with a given name (used for dynamic slots), -1 if not found
Parameters:
-
name
Stringthe name of the slot
Returns:
the slot (-1 if not found)
getBounding
()
Float32Array4
returns the bounding of the object, used for rendering purposes bounding is: [topleft_cornerx, topleft_cornery, width, height]
Returns:
the total size
getConnectionPos
-
is_input
-
slot
-
out
returns the center of a connection point in canvas coords
Parameters:
-
is_input
Booleantrue if if a input slot, false if it is an output
-
slot
Number_or_string(could be the number of the slot or the string with the name of the slot)
-
out
Vec2[optional] a place to store the output, to free garbage
Returns:
the position
getInputData
-
slot
-
force_update
Retrieves the input data (data traveling through the connection) from one slot
Parameters:
-
slot
Number -
force_update
Booleanif set to true it will force the connected node of this slot to output data into this link
Returns:
data or if it is not connected returns undefined
getInputDataByName
-
slot_name
-
force_update
Retrieves the input data from one slot using its name instead of slot number
Parameters:
-
slot_name
String -
force_update
Booleanif set to true it will force the connected node of this slot to output data into this link
Returns:
data or if it is not connected returns null
getInputDataType
-
slot
Retrieves the input data type (in case this supports multiple input types)
Parameters:
-
slot
Number
Returns:
datatype in string format
getInputInfo
-
slot
tells you info about an input connection (which node, type, etc)
Parameters:
-
slot
Number
Returns:
object or null { link: id, name: string, type: string or 0 }
getInputNode
-
slot
returns the node connected in the input slot
Parameters:
-
slot
Number
Returns:
node or null
getInputOrProperty
-
name
returns the value of an input with this name, otherwise checks if there is a property with that name
Parameters:
-
name
String
Returns:
value
getOutputData
-
slot
tells you the last output data that went in that slot
Parameters:
-
slot
Number
Returns:
object or null
getOutputInfo
-
slot
tells you info about an output connection (which node, type, etc)
Parameters:
-
slot
Number
Returns:
object or null { name: string, type: string, links: [ ids of links in number ] }
getOutputNodes
-
slot
retrieves all the nodes connected to this output slot
Parameters:
-
slot
Number
Returns:
getSlotInPosition
-
x
-
y
checks if a point is inside a node slot, and returns info about which slot
Parameters:
-
x
Number -
y
Number
Returns:
if found the object contains { input|output: slot object, slot: number, link_pos: [x,y] }
getTitle
()
get the title string
isAnyOutputConnected
()
Boolean
tells you if there is any connection in the output slots
Returns:
isInputConnected
-
slot
tells you if there is a connection in one input slot
Parameters:
-
slot
Number
Returns:
isOutputConnected
-
slot
tells you if there is a connection in one output slot
Parameters:
-
slot
Number
Returns:
isPointInside
-
x
-
y
checks if a point is inside the shape of a node
Parameters:
-
x
Number -
y
Number
Returns:
pin
()
Forces the node to do not move or realign on Z
removeInput
-
slot
remove an existing input slot
Parameters:
-
slot
Number
removeOutput
-
slot
remove an existing output slot
Parameters:
-
slot
Number
serialize
()
serialize the content
setOutputData
-
slot
-
data
sets the output data
Parameters:
-
slot
Number -
data
setOutputDataType
-
slot
-
datatype
sets the output data type, useful when you want to be able to overwrite the data type
Parameters:
-
slot
Number -
datatype
String
toString
()
serialize and stringify
trigger
-
event
-
param
Triggers an event in this node, this will trigger any output with the same name
Parameters:
-
event
Stringname ( "on_play", ... ) if action is equivalent to false then the event is send to all
-
param
triggerSlot
-
slot
-
param
-
link_id
Triggers an slot event in this node
Parameters:
-
slot
Numberthe index of the output slot
-
param
-
link_id
Number[optional] in case you want to trigger and specific output link in a slot