brushcue

Brushcue — Python bindings for the Matisse graph computation system.

Every function in this module returns a Graph node. Nodes are composable: pass the return value of one function as an argument to another to build a computation graph. Nothing is evaluated until you call Graph.execute().

Installation

pip install brushcue

Quickstart

import brushcue

ctx = brushcue.Context()

a = brushcue.int_constant(3)
b = brushcue.int_constant(4)
result = brushcue.int_add(a, b)

value = result.execute(ctx)
print(value.as_int())  # 7

Core Types

  • Context — GPU/async execution context. Create one per process.
  • Graph — A node in the computation graph.
  • Project — A collection of graphs that can be serialized/deserialized.
  • Type — The result of executing a graph node.

Examples

   1# (c) Dito Technologies LLC. Auto-generated. Do not modify directly.
   2# hash: 8e16562ac8d32c746351fe85c26a9341b6782650ff50723087f2352d72898cb5
   3# generated from templates/py_brushcue_init.jinja
   4
   5"""
   6Brushcue — Python bindings for the Matisse graph computation system.
   7
   8Every function in this module returns a :class:`Graph` node. Nodes are
   9composable: pass the return value of one function as an argument to another
  10to build a computation graph.  Nothing is evaluated until you call
  11:meth:`Graph.execute`.
  12
  13## Installation
  14
  15```bash
  16pip install brushcue
  17```
  18
  19## Quickstart
  20
  21```python
  22import brushcue
  23
  24ctx = brushcue.Context()
  25
  26a = brushcue.int_constant(3)
  27b = brushcue.int_constant(4)
  28result = brushcue.int_add(a, b)
  29
  30value = result.execute(ctx)
  31print(value.as_int())  # 7
  32```
  33
  34## Core Types
  35
  36- :class:`Context` — GPU/async execution context. Create one per process.
  37- :class:`Graph` — A node in the computation graph.
  38- :class:`Project` — A collection of graphs that can be serialized/deserialized.
  39- :class:`Type` — The result of executing a graph node.
  40"""
  41
  42from ._py import *  # noqa: F401, F403
  43from .input_parsers import *
  44
  45def int_constant(value) -> Graph:
  46    return int_constant_internal(int(value))
  47
  48def float_constant(value) -> Graph:
  49    return float_constant_internal(float(value))
  50
  51def string_constant(value: str) -> Graph:
  52    return string_constant_internal(value)
  53
  54def bool_constant(value: bool) -> Graph:
  55    return bool_constant_internal(value)
  56
  57def r_g_b_a_color_constant(r: float, g: float, b: float, a: float):
  58    return r_g_b_a_color_constant_internal(r, g, b, a)
  59
  60def r_g_b_color_constant(r: float, g: float, b: float):
  61    return r_g_b_color_constant_internal(r, g, b)
  62
  63def vector2i_constant(x: int, y: int) -> Graph:
  64    return vector2i_constant_internal(x, y)
  65
  66def vector2f_constant(x: float, y: float) -> Graph:
  67    return vector2f_constant_internal(x, y)
  68
  69
  70def abs(number) -> Graph:
  71    """Absolute Value
  72
  73    Returns the absolute value of a float
  74
  75    Args:
  76        number: Graph of Float
  77        
  78
  79    Returns:
  80        Graph: A graph node producing a Float.
  81    """
  82    number_parsed = parse_float_graph(number)
  83    return abs_internal(number_parsed)
  84
  85def and_(bool1, bool2) -> Graph:
  86    """And
  87
  88    Returns true if both inputs are true.
  89
  90    Args:
  91        the first bool: Graph of Bool
  92        The second bool: Graph of Bool
  93        
  94
  95    Returns:
  96        Graph: A graph node producing a Bool.
  97    """
  98    bool1_parsed = parse_bool_graph(bool1)
  99    bool2_parsed = parse_bool_graph(bool2)
 100    return and_internal(bool1_parsed, bool2_parsed)
 101
 102def bool_add_to_dictionary(dictionary, key, value) -> Graph:
 103    """Bool Add To Dictionary
 104
 105    Adds a Bool to a Dictionary
 106
 107    Args:
 108        dictionary: Graph of Dictionary
 109        key: Graph of String
 110        value: Graph of Bool
 111        
 112
 113    Returns:
 114        Graph: A graph node producing a Dictionary.
 115    """
 116    dictionary_parsed = parse_graph(dictionary)
 117    key_parsed = parse_string_graph(key)
 118    value_parsed = parse_bool_graph(value)
 119    return bool_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)
 120
 121def bool_if(bool, input_1, input_2) -> Graph:
 122    """Bool If
 123
 124    If the boolean is true returns input 1, otherwise input 2. Type: Bool
 125
 126    Args:
 127        bool: Graph of Bool
 128        input 1: Graph of Bool
 129        input 2: Graph of Bool
 130        
 131
 132    Returns:
 133        Graph: A graph node producing a Bool.
 134    """
 135    bool_parsed = parse_bool_graph(bool)
 136    input_1_parsed = parse_bool_graph(input_1)
 137    input_2_parsed = parse_bool_graph(input_2)
 138    return bool_if_internal(bool_parsed, input_1_parsed, input_2_parsed)
 139
 140def bounds2f_from_x_y_width_height(x, y, width, height) -> Graph:
 141    """Bounds 2D Float from X, Y, Width & Height
 142
 143    Creates the bounds of a 2D float region from its X, Y, Width and Height.
 144
 145    Args:
 146        x: Graph of Float
 147        y: Graph of Float
 148        width: Graph of Float
 149        height: Graph of Float
 150        
 151
 152    Returns:
 153        Graph: A graph node producing a Bounds2f.
 154    """
 155    x_parsed = parse_float_graph(x)
 156    y_parsed = parse_float_graph(y)
 157    width_parsed = parse_float_graph(width)
 158    height_parsed = parse_float_graph(height)
 159    return bounds2f_from_x_y_width_height_internal(x_parsed, y_parsed, width_parsed, height_parsed)
 160
 161def bounds2i_from_x_y_width_height(x, y, width, height) -> Graph:
 162    """Bounds 2D Int from X, Y, Width & Height
 163
 164    Creates the bounds of a 2D array from its X, Y, Width and Height.
 165
 166    Args:
 167        x: Graph of Int
 168        y: Graph of Int
 169        width: Graph of Int
 170        height: Graph of Int
 171        
 172
 173    Returns:
 174        Graph: A graph node producing a Bounds2i.
 175    """
 176    x_parsed = parse_int_graph(x)
 177    y_parsed = parse_int_graph(y)
 178    width_parsed = parse_int_graph(width)
 179    height_parsed = parse_int_graph(height)
 180    return bounds2i_from_x_y_width_height_internal(x_parsed, y_parsed, width_parsed, height_parsed)
 181
 182def brush_solid(color, radius) -> Graph:
 183    """Brush Solid
 184
 185    Creates a brush with a color and radius. Will stroke with the solid color.
 186
 187    Args:
 188        color: Graph of RGBAColor
 189        radius: Graph of Float
 190        
 191
 192    Returns:
 193        Graph: A graph node producing a Brush.
 194    """
 195    color_parsed = parse_graph(color)
 196    radius_parsed = parse_float_graph(radius)
 197    return brush_solid_internal(color_parsed, radius_parsed)
 198
 199def byte_list_from_u_r_l(url) -> Graph:
 200    """Byte List from URL
 201
 202    Given a URL. Performs a GET request and downloads the result as bytes
 203
 204    Args:
 205        url: Graph of String
 206        
 207
 208    Returns:
 209        Graph: A graph node producing a ByteList.
 210    """
 211    url_parsed = parse_string_graph(url)
 212    return byte_list_from_u_r_l_internal(url_parsed)
 213
 214def color_profile_b_t709() -> Graph:
 215    """Color Profile BT.709
 216
 217    Creates a BT.709 Color Profile
 218
 219    Returns:
 220        Graph: A graph node producing a ColorProfile.
 221    """
 222    return color_profile_b_t709_internal()
 223
 224def color_profile_ok_lab_a() -> Graph:
 225    """Color Profile OkLabA
 226
 227    Creates an OkLabA color profile. OkLab with also an alpha component.
 228
 229    Returns:
 230        Graph: A graph node producing a ColorProfile.
 231    """
 232    return color_profile_ok_lab_a_internal()
 233
 234def color_profile_p3() -> Graph:
 235    """Color Profile P3
 236
 237    Creates a P3 Color Profile
 238
 239    Returns:
 240        Graph: A graph node producing a ColorProfile.
 241    """
 242    return color_profile_p3_internal()
 243
 244def color_profile_p_n_g_s_r_g_b() -> Graph:
 245    """Color Profile PNG sRGB
 246
 247    Creates a color profile that is the same one as PNG sRGB.
 248
 249    Returns:
 250        Graph: A graph node producing a ColorProfile.
 251    """
 252    return color_profile_p_n_g_s_r_g_b_internal()
 253
 254def color_profile_s_r_g_b() -> Graph:
 255    """Color Profile sRGB
 256
 257    Creates an sRGB Color Profile
 258
 259    Returns:
 260        Graph: A graph node producing a ColorProfile.
 261    """
 262    return color_profile_s_r_g_b_internal()
 263
 264def composition_absolute_value(image) -> Graph:
 265    """Composition Absolute Value
 266
 267    Takes the absolute value of all the pixels in the image.
 268
 269    Args:
 270        image: Graph of Composition
 271        
 272
 273    Returns:
 274        Graph: A graph node producing a Composition.
 275    """
 276    image_parsed = parse_graph(image)
 277    return composition_absolute_value_internal(image_parsed)
 278
 279def composition_bilinear_interpolation(composition, size) -> Graph:
 280    """Composition Scale Bilinear Interpolation
 281
 282    Uses the bilinear interpolation algorithm to scale an image recipe
 283
 284    Args:
 285        composition: Graph of Composition
 286        size: Graph of Vector2i
 287        
 288
 289    Returns:
 290        Graph: A graph node producing a Composition.
 291    """
 292    composition_parsed = parse_graph(composition)
 293    size_parsed = parse_graph(size)
 294    return composition_bilinear_interpolation_internal(composition_parsed, size_parsed)
 295
 296def composition_blend_add(foreground, background, foreground_transform) -> Graph:
 297    """Composition Blend Add
 298
 299    Adds the foreground and background images together using additive blending.
 300
 301    Args:
 302        foreground: Graph of Composition
 303        background: Graph of Composition
 304        foreground transform: Graph of Transform2
 305        
 306
 307    Returns:
 308        Graph: A graph node producing a Composition.
 309    """
 310    foreground_parsed = parse_graph(foreground)
 311    background_parsed = parse_graph(background)
 312    foreground_transform_parsed = parse_graph(foreground_transform)
 313    return composition_blend_add_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 314
 315def composition_blend_add_with_ok_lab(foreground, background, foreground_transform) -> Graph:
 316    """Composition Blend Add with OkLab
 317
 318    Adds the foreground and background images together using additive blending in OkLab color space.
 319
 320    Args:
 321        foreground: Graph of Composition
 322        background: Graph of Composition
 323        foreground transform: Graph of Transform2
 324        
 325
 326    Returns:
 327        Graph: A graph node producing a Composition.
 328    """
 329    foreground_parsed = parse_graph(foreground)
 330    background_parsed = parse_graph(background)
 331    foreground_transform_parsed = parse_graph(foreground_transform)
 332    return composition_blend_add_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 333
 334def composition_blend_alpha(foreground, background, foreground_transform) -> Graph:
 335    """Composition Blend Alpha
 336
 337    Blends between the foreground and background using the alpha component of the foreground. 1 is foreground. 0 is background.
 338
 339    Args:
 340        foreground: Graph of Composition
 341        background: Graph of Composition
 342        foreground transform: Graph of Transform2
 343        
 344
 345    Returns:
 346        Graph: A graph node producing a Composition.
 347    """
 348    foreground_parsed = parse_graph(foreground)
 349    background_parsed = parse_graph(background)
 350    foreground_transform_parsed = parse_graph(foreground_transform)
 351    return composition_blend_alpha_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 352
 353def composition_blend_alpha_with_ok_lab(foreground, background, foreground_transform) -> Graph:
 354    """Composition Blend Alpha with OkLab
 355
 356    Blends between the foreground and background using the alpha component of the foreground in OkLab color space. 1 is foreground. 0 is background.
 357
 358    Args:
 359        foreground: Graph of Composition
 360        background: Graph of Composition
 361        foreground transform: Graph of Transform2
 362        
 363
 364    Returns:
 365        Graph: A graph node producing a Composition.
 366    """
 367    foreground_parsed = parse_graph(foreground)
 368    background_parsed = parse_graph(background)
 369    foreground_transform_parsed = parse_graph(foreground_transform)
 370    return composition_blend_alpha_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 371
 372def composition_blend_divide(foreground, background, foreground_transform) -> Graph:
 373    """Composition Blend Divide
 374
 375    Divides the background image by the foreground image using division blending.
 376
 377    Args:
 378        foreground: Graph of Composition
 379        background: Graph of Composition
 380        foreground transform: Graph of Transform2
 381        
 382
 383    Returns:
 384        Graph: A graph node producing a Composition.
 385    """
 386    foreground_parsed = parse_graph(foreground)
 387    background_parsed = parse_graph(background)
 388    foreground_transform_parsed = parse_graph(foreground_transform)
 389    return composition_blend_divide_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 390
 391def composition_blend_divide_with_ok_lab(foreground, background, foreground_transform) -> Graph:
 392    """Composition Blend Divide with OkLab
 393
 394    Divides the background image by the foreground image using division blending in OkLab color space.
 395
 396    Args:
 397        foreground: Graph of Composition
 398        background: Graph of Composition
 399        foreground transform: Graph of Transform2
 400        
 401
 402    Returns:
 403        Graph: A graph node producing a Composition.
 404    """
 405    foreground_parsed = parse_graph(foreground)
 406    background_parsed = parse_graph(background)
 407    foreground_transform_parsed = parse_graph(foreground_transform)
 408    return composition_blend_divide_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 409
 410def composition_blend_max(foreground, background, foreground_transform) -> Graph:
 411    """Composition Blend Max
 412
 413    Blends the foreground and background images using maximum value blending.
 414
 415    Args:
 416        foreground: Graph of Composition
 417        background: Graph of Composition
 418        foreground transform: Graph of Transform2
 419        
 420
 421    Returns:
 422        Graph: A graph node producing a Composition.
 423    """
 424    foreground_parsed = parse_graph(foreground)
 425    background_parsed = parse_graph(background)
 426    foreground_transform_parsed = parse_graph(foreground_transform)
 427    return composition_blend_max_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 428
 429def composition_blend_max_with_ok_lab(foreground, background, foreground_transform) -> Graph:
 430    """Composition Blend Max with OkLab
 431
 432    Blends the foreground and background images using maximum value blending in OkLab color space.
 433
 434    Args:
 435        foreground: Graph of Composition
 436        background: Graph of Composition
 437        foreground transform: Graph of Transform2
 438        
 439
 440    Returns:
 441        Graph: A graph node producing a Composition.
 442    """
 443    foreground_parsed = parse_graph(foreground)
 444    background_parsed = parse_graph(background)
 445    foreground_transform_parsed = parse_graph(foreground_transform)
 446    return composition_blend_max_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 447
 448def composition_blend_min(foreground, background, foreground_transform) -> Graph:
 449    """Composition Blend Min
 450
 451    Blends the foreground and background images using minimum blending, taking the minimum value for each pixel.
 452
 453    Args:
 454        foreground: Graph of Composition
 455        background: Graph of Composition
 456        foreground transform: Graph of Transform2
 457        
 458
 459    Returns:
 460        Graph: A graph node producing a Composition.
 461    """
 462    foreground_parsed = parse_graph(foreground)
 463    background_parsed = parse_graph(background)
 464    foreground_transform_parsed = parse_graph(foreground_transform)
 465    return composition_blend_min_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 466
 467def composition_blend_min_with_ok_lab(foreground, background, foreground_transform) -> Graph:
 468    """Composition Blend Min with OkLab
 469
 470    Blends the foreground and background images using minimum blending in OkLab color space, taking the minimum value for each pixel.
 471
 472    Args:
 473        foreground: Graph of Composition
 474        background: Graph of Composition
 475        foreground transform: Graph of Transform2
 476        
 477
 478    Returns:
 479        Graph: A graph node producing a Composition.
 480    """
 481    foreground_parsed = parse_graph(foreground)
 482    background_parsed = parse_graph(background)
 483    foreground_transform_parsed = parse_graph(foreground_transform)
 484    return composition_blend_min_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 485
 486def composition_blend_multiply(foreground, background, foreground_transform) -> Graph:
 487    """Composition Blend Multiply
 488
 489    Multiplies the foreground and background images together using multiply blending.
 490
 491    Args:
 492        foreground: Graph of Composition
 493        background: Graph of Composition
 494        foreground transform: Graph of Transform2
 495        
 496
 497    Returns:
 498        Graph: A graph node producing a Composition.
 499    """
 500    foreground_parsed = parse_graph(foreground)
 501    background_parsed = parse_graph(background)
 502    foreground_transform_parsed = parse_graph(foreground_transform)
 503    return composition_blend_multiply_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 504
 505def composition_blend_multiply_with_ok_lab(foreground, background, foreground_transform) -> Graph:
 506    """Composition Blend Multiply with OkLab
 507
 508    Multiplies the foreground and background images together using multiply blending in OkLab color space.
 509
 510    Args:
 511        foreground: Graph of Composition
 512        background: Graph of Composition
 513        foreground transform: Graph of Transform2
 514        
 515
 516    Returns:
 517        Graph: A graph node producing a Composition.
 518    """
 519    foreground_parsed = parse_graph(foreground)
 520    background_parsed = parse_graph(background)
 521    foreground_transform_parsed = parse_graph(foreground_transform)
 522    return composition_blend_multiply_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 523
 524def composition_blend_subtract(foreground, background, foreground_transform) -> Graph:
 525    """Composition Blend Subtract
 526
 527    Subtracts the foreground image from the background image using subtractive blending.
 528
 529    Args:
 530        foreground: Graph of Composition
 531        background: Graph of Composition
 532        foreground transform: Graph of Transform2
 533        
 534
 535    Returns:
 536        Graph: A graph node producing a Composition.
 537    """
 538    foreground_parsed = parse_graph(foreground)
 539    background_parsed = parse_graph(background)
 540    foreground_transform_parsed = parse_graph(foreground_transform)
 541    return composition_blend_subtract_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 542
 543def composition_blend_subtract_with_ok_lab(foreground, background, foreground_transform) -> Graph:
 544    """Composition Blend Subtract with OkLab
 545
 546    Subtracts the foreground image from the background image using subtractive blending in OkLab color space.
 547
 548    Args:
 549        foreground: Graph of Composition
 550        background: Graph of Composition
 551        foreground transform: Graph of Transform2
 552        
 553
 554    Returns:
 555        Graph: A graph node producing a Composition.
 556    """
 557    foreground_parsed = parse_graph(foreground)
 558    background_parsed = parse_graph(background)
 559    foreground_transform_parsed = parse_graph(foreground_transform)
 560    return composition_blend_subtract_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)
 561
 562def composition_blend_with_mask(foreground, background, mask) -> Graph:
 563    """Composition Blend with Mask
 564
 565    Given a mask. Blends between the foreground and background using the r component of the mask. 1 is foreground. 0 is background.
 566
 567    Args:
 568        foreground: Graph of Composition
 569        background: Graph of Composition
 570        mask: Graph of Composition
 571        
 572
 573    Returns:
 574        Graph: A graph node producing a Composition.
 575    """
 576    foreground_parsed = parse_graph(foreground)
 577    background_parsed = parse_graph(background)
 578    mask_parsed = parse_graph(mask)
 579    return composition_blend_with_mask_internal(foreground_parsed, background_parsed, mask_parsed)
 580
 581def composition_box_blur(composition, dimension) -> Graph:
 582    """Composition Box Blur
 583
 584    Applies a box blur to an image. Dimension is the size. 1 corresponding to 3x3, 2 5x5 and so on.
 585
 586    Args:
 587        composition: Graph of Composition
 588        dimension: Graph of Int
 589        
 590
 591    Returns:
 592        Graph: A graph node producing a Composition.
 593    """
 594    composition_parsed = parse_graph(composition)
 595    dimension_parsed = parse_int_graph(dimension)
 596    return composition_box_blur_internal(composition_parsed, dimension_parsed)
 597
 598def composition_box_blur_with_ok_lab(composition, dimension) -> Graph:
 599    """Composition Box Blur with OkLab
 600
 601    Applies a box blur to an image in OkLab color space. Dimension is the size. 1 corresponding to 3x3, 2 5x5 and so on.
 602
 603    Args:
 604        composition: Graph of Composition
 605        dimension: Graph of Int
 606        
 607
 608    Returns:
 609        Graph: A graph node producing a Composition.
 610    """
 611    composition_parsed = parse_graph(composition)
 612    dimension_parsed = parse_int_graph(dimension)
 613    return composition_box_blur_with_ok_lab_internal(composition_parsed, dimension_parsed)
 614
 615def composition_brightness_adjust(composition, scale) -> Graph:
 616    """Composition Brightness Adjust
 617
 618    Adjusts the brightness of an image by a given factor. Internally, works by modifying the L component of OkLab by multiplying it by the scale.
 619
 620    Args:
 621        composition: Graph of Composition
 622        scale: Graph of Float
 623        
 624
 625    Returns:
 626        Graph: A graph node producing a Composition.
 627    """
 628    composition_parsed = parse_graph(composition)
 629    scale_parsed = parse_float_graph(scale)
 630    return composition_brightness_adjust_internal(composition_parsed, scale_parsed)
 631
 632def composition_chroma_offset(composition, offset) -> Graph:
 633    """Composition Chroma Offset
 634
 635    Applies a chroma offset to an image. This is done by modifying the a and b components of OkLab. For the vector, X applies to a, Y to to b.
 636
 637    Args:
 638        composition: Graph of Composition
 639        offset: Graph of Vector2f
 640        
 641
 642    Returns:
 643        Graph: A graph node producing a Composition.
 644    """
 645    composition_parsed = parse_graph(composition)
 646    offset_parsed = parse_graph(offset)
 647    return composition_chroma_offset_internal(composition_parsed, offset_parsed)
 648
 649def composition_color_convert(composition, color_profile) -> Graph:
 650    """Composition Color Convert
 651
 652    Converts a Composition from one color space to another.
 653
 654    Args:
 655        composition: Graph of Composition
 656        color profile: Graph of ColorProfile
 657        
 658
 659    Returns:
 660        Graph: A graph node producing a Composition.
 661    """
 662    composition_parsed = parse_graph(composition)
 663    color_profile_parsed = parse_graph(color_profile)
 664    return composition_color_convert_internal(composition_parsed, color_profile_parsed)
 665
 666def composition_color_invert(composition) -> Graph:
 667    """Composition Color Invert
 668
 669    Applies a color invert operation to a Composition. Taking 1 and subtracting each RGB operation against it.
 670
 671    Args:
 672        composition: Graph of Composition
 673        
 674
 675    Returns:
 676        Graph: A graph node producing a Composition.
 677    """
 678    composition_parsed = parse_graph(composition)
 679    return composition_color_invert_internal(composition_parsed)
 680
 681def composition_color_profile(composition) -> Graph:
 682    """Composition Color Profile
 683
 684    Gets the color profile associated with a Composition
 685
 686    Args:
 687        composition: Graph of Composition
 688        
 689
 690    Returns:
 691        Graph: A graph node producing a ColorProfile.
 692    """
 693    composition_parsed = parse_graph(composition)
 694    return composition_color_profile_internal(composition_parsed)
 695
 696def composition_color_rect(color, color_profile, size) -> Graph:
 697    """Composition Color Rect
 698
 699    Given a color and it's color proile. Creates a rectangle Composition of that color.
 700
 701    Args:
 702        color: Graph of RGBAColor
 703        color profile: Graph of ColorProfile
 704        size: Graph of Vector2i
 705        
 706
 707    Returns:
 708        Graph: A graph node producing a Composition.
 709    """
 710    color_parsed = parse_graph(color)
 711    color_profile_parsed = parse_graph(color_profile)
 712    size_parsed = parse_graph(size)
 713    return composition_color_rect_internal(color_parsed, color_profile_parsed, size_parsed)
 714
 715def composition_color_threshold(composition, threshold) -> Graph:
 716    """Composition Color Threshold
 717
 718    Applies a color threshold to a Composition
 719
 720    Args:
 721        composition: Graph of Composition
 722        threshold: Graph of Float
 723        
 724
 725    Returns:
 726        Graph: A graph node producing a Composition.
 727    """
 728    composition_parsed = parse_graph(composition)
 729    threshold_parsed = parse_float_graph(threshold)
 730    return composition_color_threshold_internal(composition_parsed, threshold_parsed)
 731
 732def composition_convolution(composition, kernel, kernel_width, kernel_height) -> Graph:
 733    """Composition Convolution
 734
 735    Performs a convolution on an composition
 736
 737    Args:
 738        The image to perform the convolution on: Graph of Composition
 739        kernel: Graph of FloatList
 740        kernel width: Graph of Int
 741        kernel height: Graph of Int
 742        
 743
 744    Returns:
 745        Graph: A graph node producing a Composition.
 746    """
 747    composition_parsed = parse_graph(composition)
 748    kernel_parsed = parse_graph(kernel)
 749    kernel_width_parsed = parse_int_graph(kernel_width)
 750    kernel_height_parsed = parse_int_graph(kernel_height)
 751    return composition_convolution_internal(composition_parsed, kernel_parsed, kernel_width_parsed, kernel_height_parsed)
 752
 753def composition_crop(composition, rect) -> Graph:
 754    """Composition Crop
 755
 756    Applies a crop to a Composition
 757
 758    Args:
 759        composition: Graph of Composition
 760        rect: Graph of Bounds2i
 761        
 762
 763    Returns:
 764        Graph: A graph node producing a Composition.
 765    """
 766    composition_parsed = parse_graph(composition)
 767    rect_parsed = parse_graph(rect)
 768    return composition_crop_internal(composition_parsed, rect_parsed)
 769
 770def composition_custom_transformer_shader(composition, function_body, helpers, input_color_profile, output_color_profile, inputs, needs_sample_capability) -> Graph:
 771    """Composition Custom Transformer Shader
 772
 773    Given an input, runs a custom defined shader over that input.
 774
 775    Args:
 776        composition: Graph of Composition
 777        function body: Graph of String
 778        helpers: Graph of String
 779        input color profile: Graph of ColorProfile
 780        output color profile: Graph of ColorProfile
 781        inputs: Graph of Dictionary
 782        needs sample capability: Graph of Bool
 783        
 784
 785    Returns:
 786        Graph: A graph node producing a Composition.
 787    """
 788    composition_parsed = parse_graph(composition)
 789    function_body_parsed = parse_string_graph(function_body)
 790    helpers_parsed = parse_string_graph(helpers)
 791    input_color_profile_parsed = parse_graph(input_color_profile)
 792    output_color_profile_parsed = parse_graph(output_color_profile)
 793    inputs_parsed = parse_graph(inputs)
 794    needs_sample_capability_parsed = parse_bool_graph(needs_sample_capability)
 795    return composition_custom_transformer_shader_internal(composition_parsed, function_body_parsed, helpers_parsed, input_color_profile_parsed, output_color_profile_parsed, inputs_parsed, needs_sample_capability_parsed)
 796
 797def composition_face_landmarks(composition) -> Graph:
 798    """Composition Face Landmarks
 799
 800    Given an input image, returns the 468 3D face landmarks.
 801
 802    Args:
 803        composition: Graph of Composition
 804        
 805
 806    Returns:
 807        Graph: A graph node producing a Point3fList.
 808    """
 809    composition_parsed = parse_graph(composition)
 810    return composition_face_landmarks_internal(composition_parsed)
 811
 812def composition_flip_horizontal(composition) -> Graph:
 813    """Composition Flip Horizontal
 814
 815    Flips the image along the horizontal axis
 816
 817    Args:
 818        composition: Graph of Composition
 819        
 820
 821    Returns:
 822        Graph: A graph node producing a Composition.
 823    """
 824    composition_parsed = parse_graph(composition)
 825    return composition_flip_horizontal_internal(composition_parsed)
 826
 827def composition_flip_vertical(composition) -> Graph:
 828    """Composition Flip Vertical
 829
 830    Flips the image vertically
 831
 832    Args:
 833        composition: Graph of Composition
 834        
 835
 836    Returns:
 837        Graph: A graph node producing a Composition.
 838    """
 839    composition_parsed = parse_graph(composition)
 840    return composition_flip_vertical_internal(composition_parsed)
 841
 842def composition_from_image(image) -> Graph:
 843    """Composition from Image
 844
 845    Creates an composition out of an image
 846
 847    Args:
 848        image: Graph of Image
 849        
 850
 851    Returns:
 852        Graph: A graph node producing a Composition.
 853    """
 854    image_parsed = parse_graph(image)
 855    return composition_from_image_internal(image_parsed)
 856
 857def composition_gaussian_blur(composition, sigma) -> Graph:
 858    """Composition Gaussian Blur
 859
 860    Applies a gaussian blur to an image. Sigma controls the blur intensity.
 861
 862    Args:
 863        composition: Graph of Composition
 864        sigma: Graph of Float
 865        
 866
 867    Returns:
 868        Graph: A graph node producing a Composition.
 869    """
 870    composition_parsed = parse_graph(composition)
 871    sigma_parsed = parse_float_graph(sigma)
 872    return composition_gaussian_blur_internal(composition_parsed, sigma_parsed)
 873
 874def composition_gaussian_blur_with_ok_lab(composition, sigma) -> Graph:
 875    """Composition Gaussian Blur with OkLab
 876
 877    Applies a gaussian blur to an image in OkLab color space. Sigma controls the blur intensity.
 878
 879    Args:
 880        composition: Graph of Composition
 881        sigma: Graph of Float
 882        
 883
 884    Returns:
 885        Graph: A graph node producing a Composition.
 886    """
 887    composition_parsed = parse_graph(composition)
 888    sigma_parsed = parse_float_graph(sigma)
 889    return composition_gaussian_blur_with_ok_lab_internal(composition_parsed, sigma_parsed)
 890
 891def composition_grayscale(composition) -> Graph:
 892    """Composition Grayscale
 893
 894    Applies grayscale to a Composition
 895
 896    Args:
 897        composition: Graph of Composition
 898        
 899
 900    Returns:
 901        Graph: A graph node producing a Composition.
 902    """
 903    composition_parsed = parse_graph(composition)
 904    return composition_grayscale_internal(composition_parsed)
 905
 906def composition_l_curve(composition, l_curve) -> Graph:
 907    """Composition Lightness Curve
 908
 909    Applies a curve to the L component in an OkLab color. Adjusting the lightness of the image.
 910
 911    Args:
 912        composition: Graph of Composition
 913        l curve: Graph of Curve
 914        
 915
 916    Returns:
 917        Graph: A graph node producing a Composition.
 918    """
 919    composition_parsed = parse_graph(composition)
 920    l_curve_parsed = parse_graph(l_curve)
 921    return composition_l_curve_internal(composition_parsed, l_curve_parsed)
 922
 923def composition_linear_transform(composition, entry_0_0, entry_0_1, entry_0_2, entry_0_3, entry_1_0, entry_1_1, entry_1_2, entry_1_3, entry_2_0, entry_2_1, entry_2_2, entry_2_3, entry_3_0, entry_3_1, entry_3_2, entry_3_3) -> Graph:
 924    """Composition RGBA Linear Transform
 925
 926    Applies a linear transform to a Composition's RGBA values. Before application, will convert to a linear version of the color profile and will convert to an RGB profile if needed.
 927
 928    Args:
 929        composition: Graph of Composition
 930        entry 0,0: Graph of Float
 931        entry 0,1: Graph of Float
 932        entry 0,2: Graph of Float
 933        entry 0,3: Graph of Float
 934        entry 1,0: Graph of Float
 935        entry 1,1: Graph of Float
 936        entry 1,2: Graph of Float
 937        entry 1,3: Graph of Float
 938        entry 2,0: Graph of Float
 939        entry 2,1: Graph of Float
 940        entry 2,2: Graph of Float
 941        entry 2,3: Graph of Float
 942        entry 3,0: Graph of Float
 943        entry 3,1: Graph of Float
 944        entry 3,2: Graph of Float
 945        entry 3,3: Graph of Float
 946        
 947
 948    Returns:
 949        Graph: A graph node producing a Composition.
 950    """
 951    composition_parsed = parse_graph(composition)
 952    entry_0_0_parsed = parse_float_graph(entry_0_0)
 953    entry_0_1_parsed = parse_float_graph(entry_0_1)
 954    entry_0_2_parsed = parse_float_graph(entry_0_2)
 955    entry_0_3_parsed = parse_float_graph(entry_0_3)
 956    entry_1_0_parsed = parse_float_graph(entry_1_0)
 957    entry_1_1_parsed = parse_float_graph(entry_1_1)
 958    entry_1_2_parsed = parse_float_graph(entry_1_2)
 959    entry_1_3_parsed = parse_float_graph(entry_1_3)
 960    entry_2_0_parsed = parse_float_graph(entry_2_0)
 961    entry_2_1_parsed = parse_float_graph(entry_2_1)
 962    entry_2_2_parsed = parse_float_graph(entry_2_2)
 963    entry_2_3_parsed = parse_float_graph(entry_2_3)
 964    entry_3_0_parsed = parse_float_graph(entry_3_0)
 965    entry_3_1_parsed = parse_float_graph(entry_3_1)
 966    entry_3_2_parsed = parse_float_graph(entry_3_2)
 967    entry_3_3_parsed = parse_float_graph(entry_3_3)
 968    return composition_linear_transform_internal(composition_parsed, entry_0_0_parsed, entry_0_1_parsed, entry_0_2_parsed, entry_0_3_parsed, entry_1_0_parsed, entry_1_1_parsed, entry_1_2_parsed, entry_1_3_parsed, entry_2_0_parsed, entry_2_1_parsed, entry_2_2_parsed, entry_2_3_parsed, entry_3_0_parsed, entry_3_1_parsed, entry_3_2_parsed, entry_3_3_parsed)
 969
 970def composition_monet_women_with_parasol() -> Graph:
 971    """Monet's Women with a Parasol
 972
 973    Creates a composition from Monet's "Women with a Parasol" painting. Used frequently as a test asset.
 974
 975    Returns:
 976        Graph: A graph node producing a Composition.
 977    """
 978    return composition_monet_women_with_parasol_internal()
 979
 980def composition_morphological_max(composition, dimension) -> Graph:
 981    """Composition Morphological Max
 982
 983    Apples a morphological max operation.
 984
 985    Args:
 986        composition: Graph of Composition
 987        dimension: Graph of Int
 988        
 989
 990    Returns:
 991        Graph: A graph node producing a Composition.
 992    """
 993    composition_parsed = parse_graph(composition)
 994    dimension_parsed = parse_int_graph(dimension)
 995    return composition_morphological_max_internal(composition_parsed, dimension_parsed)
 996
 997def composition_morphological_min(composition, dimension) -> Graph:
 998    """Composition Morphological Min
 999
1000    Apples a morphological min operation.
1001
1002    Args:
1003        composition: Graph of Composition
1004        dimension: Graph of Int
1005        
1006
1007    Returns:
1008        Graph: A graph node producing a Composition.
1009    """
1010    composition_parsed = parse_graph(composition)
1011    dimension_parsed = parse_int_graph(dimension)
1012    return composition_morphological_min_internal(composition_parsed, dimension_parsed)
1013
1014def composition_painter(painter) -> Graph:
1015    """Composition Painter
1016
1017    Creates a composition from a painter.
1018
1019    Args:
1020        painter: Graph of Painter
1021        
1022
1023    Returns:
1024        Graph: A graph node producing a Composition.
1025    """
1026    painter_parsed = parse_graph(painter)
1027    return composition_painter_internal(painter_parsed)
1028
1029def composition_passthrough(value) -> Graph:
1030    """Composition Passthrough
1031
1032    Responds with the value provided. Doing nothing to it.
1033
1034    Args:
1035        value: Graph of Composition
1036        
1037
1038    Returns:
1039        Graph: A graph node producing a Composition.
1040    """
1041    value_parsed = parse_graph(value)
1042    return composition_passthrough_internal(value_parsed)
1043
1044def composition_perceptual_difference(composition, color) -> Graph:
1045    """Composition Perceptual Difference
1046
1047    Calculates the difference for each pixel to the OkLab color specified. Each r, g, b and a component in the output is the difference.
1048
1049    Args:
1050        composition: Graph of Composition
1051        color: Graph of OkLabColor
1052        
1053
1054    Returns:
1055        Graph: A graph node producing a Composition.
1056    """
1057    composition_parsed = parse_graph(composition)
1058    color_parsed = parse_graph(color)
1059    return composition_perceptual_difference_internal(composition_parsed, color_parsed)
1060
1061def composition_r_g_b_curve(composition, r_curve, g_curve, b_curve) -> Graph:
1062    """Composition RGB Curve
1063
1064    Applies a curve to the R, G, and B components
1065
1066    Args:
1067        composition: Graph of Composition
1068        r curve: Graph of Curve
1069        g curve: Graph of Curve
1070        b curve: Graph of Curve
1071        
1072
1073    Returns:
1074        Graph: A graph node producing a Composition.
1075    """
1076    composition_parsed = parse_graph(composition)
1077    r_curve_parsed = parse_graph(r_curve)
1078    g_curve_parsed = parse_graph(g_curve)
1079    b_curve_parsed = parse_graph(b_curve)
1080    return composition_r_g_b_curve_internal(composition_parsed, r_curve_parsed, g_curve_parsed, b_curve_parsed)
1081
1082def composition_render_to_image(composition) -> Graph:
1083    """Composition Render to Image
1084
1085    Renders a Composition to an Image
1086
1087    Args:
1088        composition: Graph of Composition
1089        
1090
1091    Returns:
1092        Graph: A graph node producing a Image.
1093    """
1094    composition_parsed = parse_graph(composition)
1095    return composition_render_to_image_internal(composition_parsed)
1096
1097def composition_rotate180(composition) -> Graph:
1098    """Composition Rotate 180
1099
1100    Rotates the image 180 degrees
1101
1102    Args:
1103        composition: Graph of Composition
1104        
1105
1106    Returns:
1107        Graph: A graph node producing a Composition.
1108    """
1109    composition_parsed = parse_graph(composition)
1110    return composition_rotate180_internal(composition_parsed)
1111
1112def composition_rotate90_clockwise(composition) -> Graph:
1113    """Composition Rotate 90 Clockwise
1114
1115    Rotates the image 90 degrees clockwise
1116
1117    Args:
1118        composition: Graph of Composition
1119        
1120
1121    Returns:
1122        Graph: A graph node producing a Composition.
1123    """
1124    composition_parsed = parse_graph(composition)
1125    return composition_rotate90_clockwise_internal(composition_parsed)
1126
1127def composition_rotate90_counter_clockwise(composition) -> Graph:
1128    """Composition Rotate 90 Counter Clockwise
1129
1130    Rotates the image 90 degrees counter-clockwise
1131
1132    Args:
1133        composition: Graph of Composition
1134        
1135
1136    Returns:
1137        Graph: A graph node producing a Composition.
1138    """
1139    composition_parsed = parse_graph(composition)
1140    return composition_rotate90_counter_clockwise_internal(composition_parsed)
1141
1142def composition_saturation_adjust(composition, scale) -> Graph:
1143    """Composition Saturation Adjust
1144
1145    Adjusts the saturation of an image by a given factor. Internally, scales the chroma components in OkLab color space.
1146
1147    Args:
1148        composition: Graph of Composition
1149        scale: Graph of Float
1150        
1151
1152    Returns:
1153        Graph: A graph node producing a Composition.
1154    """
1155    composition_parsed = parse_graph(composition)
1156    scale_parsed = parse_float_graph(scale)
1157    return composition_saturation_adjust_internal(composition_parsed, scale_parsed)
1158
1159def composition_scale_nearest_neighbor(composition, size) -> Graph:
1160    """Composition Scale Nearest Neighbor
1161
1162    Uses the nearest neighbor algorithm to scale an image recipe
1163
1164    Args:
1165        composition: Graph of Composition
1166        size: Graph of Vector2i
1167        
1168
1169    Returns:
1170        Graph: A graph node producing a Composition.
1171    """
1172    composition_parsed = parse_graph(composition)
1173    size_parsed = parse_graph(size)
1174    return composition_scale_nearest_neighbor_internal(composition_parsed, size_parsed)
1175
1176def composition_segment_facial_skin(composition) -> Graph:
1177    """Composition Segment Facial Skin
1178
1179    Given an input image. Returns a mask that segments out the facial skin in the image.
1180
1181    Args:
1182        composition: Graph of Composition
1183        
1184
1185    Returns:
1186        Graph: A graph node producing a Composition.
1187    """
1188    composition_parsed = parse_graph(composition)
1189    return composition_segment_facial_skin_internal(composition_parsed)
1190
1191def composition_segment_mouth_lips_eyes_eyebrows(composition) -> Graph:
1192    """Composition Segment Mouth Lips Eyes Eyebrows
1193
1194    Given an input image, returns a mask (all white) of the mouth, lips, eyes, and eyebrows area.
1195
1196    Args:
1197        composition: Graph of Composition
1198        
1199
1200    Returns:
1201        Graph: A graph node producing a Composition.
1202    """
1203    composition_parsed = parse_graph(composition)
1204    return composition_segment_mouth_lips_eyes_eyebrows_internal(composition_parsed)
1205
1206def composition_segment_person(composition) -> Graph:
1207    """Composition Segment Person
1208
1209    Given an input image. Returns a mask that segments out the person in the image.
1210
1211    Args:
1212        composition: Graph of Composition
1213        
1214
1215    Returns:
1216        Graph: A graph node producing a Composition.
1217    """
1218    composition_parsed = parse_graph(composition)
1219    return composition_segment_person_internal(composition_parsed)
1220
1221def composition_segment_under_right_eye(composition) -> Graph:
1222    """Composition Segment Under Right Eye
1223
1224    Given an input image, returns a mask (all white) of the area under the right eye.
1225
1226    Args:
1227        composition: Graph of Composition
1228        
1229
1230    Returns:
1231        Graph: A graph node producing a Composition.
1232    """
1233    composition_parsed = parse_graph(composition)
1234    return composition_segment_under_right_eye_internal(composition_parsed)
1235
1236def composition_size(composition) -> Graph:
1237    """Composition Size
1238
1239    Gets the resulting size of a Composition
1240
1241    Args:
1242        composition: Graph of Composition
1243        
1244
1245    Returns:
1246        Graph: A graph node producing a Vector2i.
1247    """
1248    composition_parsed = parse_graph(composition)
1249    return composition_size_internal(composition_parsed)
1250
1251def composition_sobel_edge_detection(composition) -> Graph:
1252    """Composition Sobel Edge Detection
1253
1254    Applies Sobel edge detection to an image.
1255
1256    Args:
1257        composition: Graph of Composition
1258        
1259
1260    Returns:
1261        Graph: A graph node producing a Composition.
1262    """
1263    composition_parsed = parse_graph(composition)
1264    return composition_sobel_edge_detection_internal(composition_parsed)
1265
1266def composition_target_white_kelvin(composition, kelvin) -> Graph:
1267    """Composition Target White Kelvin
1268
1269    Sets the image white point to the value specified in Kelvin. The profile connection white point is D50, so you will only see changes as you move away from that.
1270
1271    Args:
1272        composition: Graph of Composition
1273        kelvin: Graph of Float
1274        
1275
1276    Returns:
1277        Graph: A graph node producing a Composition.
1278    """
1279    composition_parsed = parse_graph(composition)
1280    kelvin_parsed = parse_float_graph(kelvin)
1281    return composition_target_white_kelvin_internal(composition_parsed, kelvin_parsed)
1282
1283def composition_to_ok_lab_hist(composition) -> Graph:
1284    """Composition to OkLab Histogram
1285
1286    Creates an OkLab Histogram from the colors in a Composition.
1287
1288    Args:
1289        composition: Graph of Composition
1290        
1291
1292    Returns:
1293        Graph: A graph node producing a OkLabHist.
1294    """
1295    composition_parsed = parse_graph(composition)
1296    return composition_to_ok_lab_hist_internal(composition_parsed)
1297
1298def composition_uniform_lightness(composition, lightness) -> Graph:
1299    """Composition Uniform Lightness
1300
1301    Sets a uniform lightness to the entire image by using OkLab and setting the lightness to a constant number.
1302
1303    Args:
1304        composition: Graph of Composition
1305        lightness: Graph of Float
1306        
1307
1308    Returns:
1309        Graph: A graph node producing a Composition.
1310    """
1311    composition_parsed = parse_graph(composition)
1312    lightness_parsed = parse_float_graph(lightness)
1313    return composition_uniform_lightness_internal(composition_parsed, lightness_parsed)
1314
1315def composition_vignette(composition, radius, softness, strength) -> Graph:
1316    """Composition Vignette
1317
1318    darkens the outer edges - radius (0-1, measured relative to the image's smaller dimension) sets how far the bright center extends, Softness (typically 0.05-0.5) controls the width of the fade-out band, and Strength (0–1) defines how dark the edges become at maximum.
1319
1320    Args:
1321        composition: Graph of Composition
1322        radius: Graph of Float
1323        softness: Graph of Float
1324        strength: Graph of Float
1325        
1326
1327    Returns:
1328        Graph: A graph node producing a Composition.
1329    """
1330    composition_parsed = parse_graph(composition)
1331    radius_parsed = parse_float_graph(radius)
1332    softness_parsed = parse_float_graph(softness)
1333    strength_parsed = parse_float_graph(strength)
1334    return composition_vignette_internal(composition_parsed, radius_parsed, softness_parsed, strength_parsed)
1335
1336def curve_gamma(gamma) -> Graph:
1337    """Curve Gamma
1338
1339    A gamma curve. The gamma parameter corresponding to y=x^gamma.
1340
1341    Args:
1342        gamma: Graph of Float
1343        
1344
1345    Returns:
1346        Graph: A graph node producing a Curve.
1347    """
1348    gamma_parsed = parse_float_graph(gamma)
1349    return curve_gamma_internal(gamma_parsed)
1350
1351def curve_identity() -> Graph:
1352    """Curve Identity
1353
1354    An identity curve, y=x
1355
1356    Returns:
1357        Graph: A graph node producing a Curve.
1358    """
1359    return curve_identity_internal()
1360
1361def curve_pivoted_sigmoid(pivot, slope) -> Graph:
1362    """Curve Pivoted Sigmoid
1363
1364    A pivoted sigmoid contrast curve that anchors at the pivot and smoothly compresses shadows and highlights, with a slope parameter controlling midtone contrast.
1365
1366    Args:
1367        pivot: Graph of Float
1368        slope: Graph of Float
1369        
1370
1371    Returns:
1372        Graph: A graph node producing a Curve.
1373    """
1374    pivot_parsed = parse_float_graph(pivot)
1375    slope_parsed = parse_float_graph(slope)
1376    return curve_pivoted_sigmoid_internal(pivot_parsed, slope_parsed)
1377
1378def curve_s_curve(pivot, slope, toe, shoulder) -> Graph:
1379    """Curve S
1380
1381    An S-curve remaps values by anchoring contrast at a chosen pivot, increasing or decreasing midtone separation via slope, gently flattening the curve near black with toe to compress or lift shadows, and softly flattening near white with shoulder to roll off highlights, while keeping black and white fixed.
1382
1383    Args:
1384        pivot: Graph of Float
1385        slope: Graph of Float
1386        toe: Graph of Float
1387        shoulder: Graph of Float
1388        
1389
1390    Returns:
1391        Graph: A graph node producing a Curve.
1392    """
1393    pivot_parsed = parse_float_graph(pivot)
1394    slope_parsed = parse_float_graph(slope)
1395    toe_parsed = parse_float_graph(toe)
1396    shoulder_parsed = parse_float_graph(shoulder)
1397    return curve_s_curve_internal(pivot_parsed, slope_parsed, toe_parsed, shoulder_parsed)
1398
1399def dictionary_create() -> Graph:
1400    """Dictionary Create
1401
1402    Creates a new dictionary
1403
1404    Returns:
1405        Graph: A graph node producing a Dictionary.
1406    """
1407    return dictionary_create_internal()
1408
1409def fill_custom(function_body, helpers, inputs) -> Graph:
1410    """Fill Custom
1411
1412    Creates a fill with a custom shader.
1413
1414    Args:
1415        function body: Graph of String
1416        helpers: Graph of String
1417        inputs: Graph of Dictionary
1418        
1419
1420    Returns:
1421        Graph: A graph node producing a Fill.
1422    """
1423    function_body_parsed = parse_string_graph(function_body)
1424    helpers_parsed = parse_string_graph(helpers)
1425    inputs_parsed = parse_graph(inputs)
1426    return fill_custom_internal(function_body_parsed, helpers_parsed, inputs_parsed)
1427
1428def fill_solid(color) -> Graph:
1429    """Fill Solid
1430
1431    Creates a fill with a solid color.
1432
1433    Args:
1434        color: Graph of RGBAColor
1435        
1436
1437    Returns:
1438        Graph: A graph node producing a Fill.
1439    """
1440    color_parsed = parse_graph(color)
1441    return fill_solid_internal(color_parsed)
1442
1443def float_add(float1, float2) -> Graph:
1444    """Float Add
1445
1446    Adds two floats together.
1447
1448    Args:
1449        float1: Graph of Float
1450        float2: Graph of Float
1451        
1452
1453    Returns:
1454        Graph: A graph node producing a Float.
1455    """
1456    float1_parsed = parse_float_graph(float1)
1457    float2_parsed = parse_float_graph(float2)
1458    return float_add_internal(float1_parsed, float2_parsed)
1459
1460def float_add_to_dictionary(dictionary, key, value) -> Graph:
1461    """Float Add To Dictionary
1462
1463    Adds a Float to a Dictionary
1464
1465    Args:
1466        dictionary: Graph of Dictionary
1467        key: Graph of String
1468        value: Graph of Float
1469        
1470
1471    Returns:
1472        Graph: A graph node producing a Dictionary.
1473    """
1474    dictionary_parsed = parse_graph(dictionary)
1475    key_parsed = parse_string_graph(key)
1476    value_parsed = parse_float_graph(value)
1477    return float_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)
1478
1479def float_cos(angle) -> Graph:
1480    """Float Cosine
1481
1482    Computes the cosine of a float (in radians).
1483
1484    Args:
1485        Angle in radians: Graph of Float
1486        
1487
1488    Returns:
1489        Graph: A graph node producing a Float.
1490    """
1491    angle_parsed = parse_float_graph(angle)
1492    return float_cos_internal(angle_parsed)
1493
1494def float_divide(float1, float2) -> Graph:
1495    """Float Divide
1496
1497    Adds two floats together.
1498
1499    Args:
1500        float1: Graph of Float
1501        float2: Graph of Float
1502        
1503
1504    Returns:
1505        Graph: A graph node producing a Float.
1506    """
1507    float1_parsed = parse_float_graph(float1)
1508    float2_parsed = parse_float_graph(float2)
1509    return float_divide_internal(float1_parsed, float2_parsed)
1510
1511def float_if(bool, input_1, input_2) -> Graph:
1512    """Float If
1513
1514    If the boolean is true returns input 1, otherwise input 2. Type: Float
1515
1516    Args:
1517        bool: Graph of Bool
1518        input 1: Graph of Float
1519        input 2: Graph of Float
1520        
1521
1522    Returns:
1523        Graph: A graph node producing a Float.
1524    """
1525    bool_parsed = parse_bool_graph(bool)
1526    input_1_parsed = parse_float_graph(input_1)
1527    input_2_parsed = parse_float_graph(input_2)
1528    return float_if_internal(bool_parsed, input_1_parsed, input_2_parsed)
1529
1530def float_lerp(x, float1, float2) -> Graph:
1531    """Float Lerp
1532
1533    Lerps between two floats using the x parameter
1534
1535    Args:
1536        x: Graph of Float
1537        float1: Graph of Float
1538        float2: Graph of Float
1539        
1540
1541    Returns:
1542        Graph: A graph node producing a Float.
1543    """
1544    x_parsed = parse_float_graph(x)
1545    float1_parsed = parse_float_graph(float1)
1546    float2_parsed = parse_float_graph(float2)
1547    return float_lerp_internal(x_parsed, float1_parsed, float2_parsed)
1548
1549def float_max(float1, float2) -> Graph:
1550    """Float Max
1551
1552    Returns the maximum float.
1553
1554    Args:
1555        float1: Graph of Float
1556        float2: Graph of Float
1557        
1558
1559    Returns:
1560        Graph: A graph node producing a Float.
1561    """
1562    float1_parsed = parse_float_graph(float1)
1563    float2_parsed = parse_float_graph(float2)
1564    return float_max_internal(float1_parsed, float2_parsed)
1565
1566def float_min(float1, float2) -> Graph:
1567    """Float Min
1568
1569    Returns the minimum float.
1570
1571    Args:
1572        float1: Graph of Float
1573        float2: Graph of Float
1574        
1575
1576    Returns:
1577        Graph: A graph node producing a Float.
1578    """
1579    float1_parsed = parse_float_graph(float1)
1580    float2_parsed = parse_float_graph(float2)
1581    return float_min_internal(float1_parsed, float2_parsed)
1582
1583def float_multiply(float1, float2) -> Graph:
1584    """Float Multiply
1585
1586    Multiplies two floats together.
1587
1588    Args:
1589        float1: Graph of Float
1590        float2: Graph of Float
1591        
1592
1593    Returns:
1594        Graph: A graph node producing a Float.
1595    """
1596    float1_parsed = parse_float_graph(float1)
1597    float2_parsed = parse_float_graph(float2)
1598    return float_multiply_internal(float1_parsed, float2_parsed)
1599
1600def float_passthrough(value) -> Graph:
1601    """Float Passthrough
1602
1603    Responds with the value provided. Doing nothing to it.
1604
1605    Args:
1606        value: Graph of Float
1607        
1608
1609    Returns:
1610        Graph: A graph node producing a Float.
1611    """
1612    value_parsed = parse_float_graph(value)
1613    return float_passthrough_internal(value_parsed)
1614
1615def float_pow(float1, float2) -> Graph:
1616    """Float Power
1617
1618    Raises float 1 to the power of float 2
1619
1620    Args:
1621        float 1: Graph of Float
1622        float 2: Graph of Float
1623        
1624
1625    Returns:
1626        Graph: A graph node producing a Float.
1627    """
1628    float1_parsed = parse_float_graph(float1)
1629    float2_parsed = parse_float_graph(float2)
1630    return float_pow_internal(float1_parsed, float2_parsed)
1631
1632def float_round_to_int(float) -> Graph:
1633    """Float Round to Int
1634
1635    Rounds the float to the nearest int
1636
1637    Args:
1638        float: Graph of Float
1639        
1640
1641    Returns:
1642        Graph: A graph node producing a Int.
1643    """
1644    float_parsed = parse_float_graph(float)
1645    return float_round_to_int_internal(float_parsed)
1646
1647def float_sin(angle) -> Graph:
1648    """Float Sine
1649
1650    Computes the sine of a float (in radians).
1651
1652    Args:
1653        Angle in radians: Graph of Float
1654        
1655
1656    Returns:
1657        Graph: A graph node producing a Float.
1658    """
1659    angle_parsed = parse_float_graph(angle)
1660    return float_sin_internal(angle_parsed)
1661
1662def float_square_root(number) -> Graph:
1663    """Float Square Root
1664
1665    Compares the square root of a number
1666
1667    Args:
1668        Number: Graph of Float
1669        
1670
1671    Returns:
1672        Graph: A graph node producing a Float.
1673    """
1674    number_parsed = parse_float_graph(number)
1675    return float_square_root_internal(number_parsed)
1676
1677def float_squared(number) -> Graph:
1678    """Float Squared
1679
1680    Raises a float to the power of 2.
1681
1682    Args:
1683        Number: Graph of Float
1684        
1685
1686    Returns:
1687        Graph: A graph node producing a Float.
1688    """
1689    number_parsed = parse_float_graph(number)
1690    return float_squared_internal(number_parsed)
1691
1692def float_subtract(float1, float2) -> Graph:
1693    """Float Subtract
1694
1695    Adds two floats together.
1696
1697    Args:
1698        float1: Graph of Float
1699        float2: Graph of Float
1700        
1701
1702    Returns:
1703        Graph: A graph node producing a Float.
1704    """
1705    float1_parsed = parse_float_graph(float1)
1706    float2_parsed = parse_float_graph(float2)
1707    return float_subtract_internal(float1_parsed, float2_parsed)
1708
1709def image_from_byte_list(bytes) -> Graph:
1710    """Image from Bytes
1711
1712    Given some bytes, parses an image
1713
1714    Args:
1715        bytes: Graph of ByteList
1716        
1717
1718    Returns:
1719        Graph: A graph node producing a Image.
1720    """
1721    bytes_parsed = parse_graph(bytes)
1722    return image_from_byte_list_internal(bytes_parsed)
1723
1724def image_to_byte_list(image) -> Graph:
1725    """Image to Byte List
1726
1727    Given an image, converts it to a byte list
1728
1729    Args:
1730        image: Graph of Image
1731        
1732
1733    Returns:
1734        Graph: A graph node producing a ByteList.
1735    """
1736    image_parsed = parse_graph(image)
1737    return image_to_byte_list_internal(image_parsed)
1738
1739def int_abs(number) -> Graph:
1740    """Int Absolute Value
1741
1742    Returns the absolute value of an int
1743
1744    Args:
1745        number: Graph of Int
1746        
1747
1748    Returns:
1749        Graph: A graph node producing a Int.
1750    """
1751    number_parsed = parse_int_graph(number)
1752    return int_abs_internal(number_parsed)
1753
1754def int_add(int_1, int_2) -> Graph:
1755    """Int Add
1756
1757    Adds to ints together
1758
1759    Args:
1760        First Int: Graph of Int
1761        Second Int: Graph of Int
1762        
1763
1764    Returns:
1765        Graph: A graph node producing a Int.
1766    """
1767    int_1_parsed = parse_int_graph(int_1)
1768    int_2_parsed = parse_int_graph(int_2)
1769    return int_add_internal(int_1_parsed, int_2_parsed)
1770
1771def int_add_to_dictionary(dictionary, key, value) -> Graph:
1772    """Int Add To Dictionary
1773
1774    Adds a Int to a Dictionary
1775
1776    Args:
1777        dictionary: Graph of Dictionary
1778        key: Graph of String
1779        value: Graph of Int
1780        
1781
1782    Returns:
1783        Graph: A graph node producing a Dictionary.
1784    """
1785    dictionary_parsed = parse_graph(dictionary)
1786    key_parsed = parse_string_graph(key)
1787    value_parsed = parse_int_graph(value)
1788    return int_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)
1789
1790def int_equals(int_1, int_2) -> Graph:
1791    """Int Equals
1792
1793    Checks if two ints are equal
1794
1795    Args:
1796        First Int: Graph of Int
1797        Second Int: Graph of Int
1798        
1799
1800    Returns:
1801        Graph: A graph node producing a Bool.
1802    """
1803    int_1_parsed = parse_int_graph(int_1)
1804    int_2_parsed = parse_int_graph(int_2)
1805    return int_equals_internal(int_1_parsed, int_2_parsed)
1806
1807def int_greater_than(int_1, int_2) -> Graph:
1808    """Int Greater Than
1809
1810    Checks if the first int is greater than the second int
1811
1812    Args:
1813        First Int: Graph of Int
1814        Second Int: Graph of Int
1815        
1816
1817    Returns:
1818        Graph: A graph node producing a Bool.
1819    """
1820    int_1_parsed = parse_int_graph(int_1)
1821    int_2_parsed = parse_int_graph(int_2)
1822    return int_greater_than_internal(int_1_parsed, int_2_parsed)
1823
1824def int_if(bool, input_1, input_2) -> Graph:
1825    """Int If
1826
1827    If the boolean is true returns input 1, otherwise input 2. Type: Int
1828
1829    Args:
1830        bool: Graph of Bool
1831        input 1: Graph of Int
1832        input 2: Graph of Int
1833        
1834
1835    Returns:
1836        Graph: A graph node producing a Int.
1837    """
1838    bool_parsed = parse_bool_graph(bool)
1839    input_1_parsed = parse_int_graph(input_1)
1840    input_2_parsed = parse_int_graph(input_2)
1841    return int_if_internal(bool_parsed, input_1_parsed, input_2_parsed)
1842
1843def int_less_than(int_1, int_2) -> Graph:
1844    """Int Less Than
1845
1846    Checks if the first int is less than the second int
1847
1848    Args:
1849        First Int: Graph of Int
1850        Second Int: Graph of Int
1851        
1852
1853    Returns:
1854        Graph: A graph node producing a Bool.
1855    """
1856    int_1_parsed = parse_int_graph(int_1)
1857    int_2_parsed = parse_int_graph(int_2)
1858    return int_less_than_internal(int_1_parsed, int_2_parsed)
1859
1860def int_max(int1, int2) -> Graph:
1861    """Int Max
1862
1863    Returns the maximum int.
1864
1865    Args:
1866        int1: Graph of Int
1867        int2: Graph of Int
1868        
1869
1870    Returns:
1871        Graph: A graph node producing a Int.
1872    """
1873    int1_parsed = parse_int_graph(int1)
1874    int2_parsed = parse_int_graph(int2)
1875    return int_max_internal(int1_parsed, int2_parsed)
1876
1877def int_min(int1, int2) -> Graph:
1878    """Int Min
1879
1880    Returns the minimum int.
1881
1882    Args:
1883        int1: Graph of Int
1884        int2: Graph of Int
1885        
1886
1887    Returns:
1888        Graph: A graph node producing a Int.
1889    """
1890    int1_parsed = parse_int_graph(int1)
1891    int2_parsed = parse_int_graph(int2)
1892    return int_min_internal(int1_parsed, int2_parsed)
1893
1894def int_multiply(int_1, int_2) -> Graph:
1895    """Int Multiply
1896
1897    Multiplies two integers together
1898
1899    Args:
1900        First Int: Graph of Int
1901        Second Int: Graph of Int
1902        
1903
1904    Returns:
1905        Graph: A graph node producing a Int.
1906    """
1907    int_1_parsed = parse_int_graph(int_1)
1908    int_2_parsed = parse_int_graph(int_2)
1909    return int_multiply_internal(int_1_parsed, int_2_parsed)
1910
1911def int_passthrough(value) -> Graph:
1912    """Int Passthrough
1913
1914    Responds with the value provided. Doing nothing to it.
1915
1916    Args:
1917        value: Graph of Int
1918        
1919
1920    Returns:
1921        Graph: A graph node producing a Int.
1922    """
1923    value_parsed = parse_int_graph(value)
1924    return int_passthrough_internal(value_parsed)
1925
1926def int_subtract(int_1, int_2) -> Graph:
1927    """Int Subtract
1928
1929    Subtracts one int from another
1930
1931    Args:
1932        int 1: Graph of Int
1933        int 2: Graph of Int
1934        
1935
1936    Returns:
1937        Graph: A graph node producing a Int.
1938    """
1939    int_1_parsed = parse_int_graph(int_1)
1940    int_2_parsed = parse_int_graph(int_2)
1941    return int_subtract_internal(int_1_parsed, int_2_parsed)
1942
1943def int_to_float(int) -> Graph:
1944    """Int To Float
1945
1946    Converts an Int to a Float
1947
1948    Args:
1949        int: Graph of Int
1950        
1951
1952    Returns:
1953        Graph: A graph node producing a Float.
1954    """
1955    int_parsed = parse_int_graph(int)
1956    return int_to_float_internal(int_parsed)
1957
1958def monet_network_download_u_r_l_from_asset_i_d(asset_id) -> Graph:
1959    """Monet Network Download URL from Asset ID
1960
1961    Creates a Download URL from asset ID in the Monet Network
1962
1963    Args:
1964        asset id: Graph of Int
1965        
1966
1967    Returns:
1968        Graph: A graph node producing a String.
1969    """
1970    asset_id_parsed = parse_int_graph(asset_id)
1971    return monet_network_download_u_r_l_from_asset_i_d_internal(asset_id_parsed)
1972
1973def not_(bool) -> Graph:
1974    """Not
1975
1976    Returns the opposite of a boolean
1977
1978    Args:
1979        Bool: Graph of Bool
1980        
1981
1982    Returns:
1983        Graph: A graph node producing a Bool.
1984    """
1985    bool_parsed = parse_bool_graph(bool)
1986    return not_internal(bool_parsed)
1987
1988def null_value() -> Graph:
1989    """Null Value
1990
1991    Returns a null value
1992
1993    Returns:
1994        Graph: A graph node producing a Null.
1995    """
1996    return null_value_internal()
1997
1998def ok_lab_color_from_components(l, a, b) -> Graph:
1999    """OkLab Color from Components
2000
2001    Given the L, a and b creates the color
2002
2003    Args:
2004        l: Graph of Float
2005        a: Graph of Float
2006        b: Graph of Float
2007        
2008
2009    Returns:
2010        Graph: A graph node producing a OkLabColor.
2011    """
2012    l_parsed = parse_float_graph(l)
2013    a_parsed = parse_float_graph(a)
2014    b_parsed = parse_float_graph(b)
2015    return ok_lab_color_from_components_internal(l_parsed, a_parsed, b_parsed)
2016
2017def ok_lab_to_r_g_b(ok_lab, color_profile) -> Graph:
2018    """OkLab to RGB
2019
2020    Converts an OkLab color to an RGB color
2021
2022    Args:
2023        OkLab: Graph of OkLabColor
2024        color profile: Graph of ColorProfile
2025        
2026
2027    Returns:
2028        Graph: A graph node producing a RGBColor.
2029    """
2030    ok_lab_parsed = parse_graph(ok_lab)
2031    color_profile_parsed = parse_graph(color_profile)
2032    return ok_lab_to_r_g_b_internal(ok_lab_parsed, color_profile_parsed)
2033
2034def or_(bool1, bool2) -> Graph:
2035    """Or
2036
2037    Returns true if either inputs are true.
2038
2039    Args:
2040        bool1: Graph of Bool
2041        bool2: Graph of Bool
2042        
2043
2044    Returns:
2045        Graph: A graph node producing a Bool.
2046    """
2047    bool1_parsed = parse_bool_graph(bool1)
2048    bool2_parsed = parse_bool_graph(bool2)
2049    return or_internal(bool1_parsed, bool2_parsed)
2050
2051def painter_add_path_with_render_style(painter, path, render_style, instances, depth) -> Graph:
2052    """Painter Add Path with Render Style
2053
2054    Adds a path to the painter and draws it with the render style. Set some transforms on the path as well.
2055
2056    Args:
2057        painter: Graph of Painter
2058        path: Graph of Path
2059        render style: Graph of RenderStyle
2060        instances: Graph of Transform2List
2061        depth: Graph of Int
2062        
2063
2064    Returns:
2065        Graph: A graph node producing a Painter.
2066    """
2067    painter_parsed = parse_graph(painter)
2068    path_parsed = parse_graph(path)
2069    render_style_parsed = parse_graph(render_style)
2070    instances_parsed = parse_graph(instances)
2071    depth_parsed = parse_int_graph(depth)
2072    return painter_add_path_with_render_style_internal(painter_parsed, path_parsed, render_style_parsed, instances_parsed, depth_parsed)
2073
2074def painter_new(color_profile) -> Graph:
2075    """Painter New
2076
2077    Creates a new painter.
2078
2079    Args:
2080        color profile: Graph of ColorProfile
2081        
2082
2083    Returns:
2084        Graph: A graph node producing a Painter.
2085    """
2086    color_profile_parsed = parse_graph(color_profile)
2087    return painter_new_internal(color_profile_parsed)
2088
2089def path_add_rectangle(path, center, dimensions, rotation) -> Graph:
2090    """Path Add Rectangle
2091
2092    Rectangle
2093
2094    Args:
2095        path: Graph of Path
2096        center point of the rectangle: Graph of Point2f
2097        width and height of the rectangle: Graph of Vector2f
2098        rotation angle in radians: Graph of Float
2099        
2100
2101    Returns:
2102        Graph: A graph node producing a Path.
2103    """
2104    path_parsed = parse_graph(path)
2105    center_parsed = parse_graph(center)
2106    dimensions_parsed = parse_graph(dimensions)
2107    rotation_parsed = parse_float_graph(rotation)
2108    return path_add_rectangle_internal(path_parsed, center_parsed, dimensions_parsed, rotation_parsed)
2109
2110def path_line_to_point(path, point) -> Graph:
2111    """Path Line to Point
2112
2113    Moves the path from it's current point to another at another point with a line.
2114
2115    Args:
2116        path: Graph of Path
2117        point: Graph of Point2f
2118        
2119
2120    Returns:
2121        Graph: A graph node producing a Path.
2122    """
2123    path_parsed = parse_graph(path)
2124    point_parsed = parse_graph(point)
2125    return path_line_to_point_internal(path_parsed, point_parsed)
2126
2127def path_move_to_point(path, point) -> Graph:
2128    """Path Move to Point
2129
2130    Moves the path to a specified point without drawing anything.
2131
2132    Args:
2133        path: Graph of Path
2134        point: Graph of Point2f
2135        
2136
2137    Returns:
2138        Graph: A graph node producing a Path.
2139    """
2140    path_parsed = parse_graph(path)
2141    point_parsed = parse_graph(point)
2142    return path_move_to_point_internal(path_parsed, point_parsed)
2143
2144def path_new() -> Graph:
2145    """Path New
2146
2147    Creates a new empty path.
2148
2149    Returns:
2150        Graph: A graph node producing a Path.
2151    """
2152    return path_new_internal()
2153
2154def pi() -> Graph:
2155    """Pi
2156
2157    Returns π as a float
2158
2159    Returns:
2160        Graph: A graph node producing a Float.
2161    """
2162    return pi_internal()
2163
2164def point2f_from_components(x, y) -> Graph:
2165    """Point 2 Float from Components
2166
2167    Given an x and y creates a point
2168
2169    Args:
2170        x: Graph of Float
2171        y: Graph of Float
2172        
2173
2174    Returns:
2175        Graph: A graph node producing a Point2f.
2176    """
2177    x_parsed = parse_float_graph(x)
2178    y_parsed = parse_float_graph(y)
2179    return point2f_from_components_internal(x_parsed, y_parsed)
2180
2181def r_g_b_a_color_add_to_dictionary(dictionary, key, value) -> Graph:
2182    """RGBA Color Add To Dictionary
2183
2184    Adds a RGBA Color to a Dictionary
2185
2186    Args:
2187        dictionary: Graph of Dictionary
2188        key: Graph of String
2189        value: Graph of RGBAColor
2190        
2191
2192    Returns:
2193        Graph: A graph node producing a Dictionary.
2194    """
2195    dictionary_parsed = parse_graph(dictionary)
2196    key_parsed = parse_string_graph(key)
2197    value_parsed = parse_graph(value)
2198    return r_g_b_a_color_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)
2199
2200def r_g_b_a_color_from_components(r, g, b, a) -> Graph:
2201    """RGBA Color from Components
2202
2203    Given the r, g, b and a creates the color
2204
2205    Args:
2206        red: Graph of Float
2207        green: Graph of Float
2208        blue: Graph of Float
2209        alpha: Graph of Float
2210        
2211
2212    Returns:
2213        Graph: A graph node producing a RGBAColor.
2214    """
2215    r_parsed = parse_float_graph(r)
2216    g_parsed = parse_float_graph(g)
2217    b_parsed = parse_float_graph(b)
2218    a_parsed = parse_float_graph(a)
2219    return r_g_b_a_color_from_components_internal(r_parsed, g_parsed, b_parsed, a_parsed)
2220
2221def r_g_b_a_color_passthrough(value) -> Graph:
2222    """RGBA Color Passthrough
2223
2224    Responds with the value provided. Doing nothing to it.
2225
2226    Args:
2227        value: Graph of RGBAColor
2228        
2229
2230    Returns:
2231        Graph: A graph node producing a RGBAColor.
2232    """
2233    value_parsed = parse_graph(value)
2234    return r_g_b_a_color_passthrough_internal(value_parsed)
2235
2236def r_g_b_color_add_to_dictionary(dictionary, key, value) -> Graph:
2237    """RGB Color Add To Dictionary
2238
2239    Adds a RGB Color to a Dictionary
2240
2241    Args:
2242        dictionary: Graph of Dictionary
2243        key: Graph of String
2244        value: Graph of RGBColor
2245        
2246
2247    Returns:
2248        Graph: A graph node producing a Dictionary.
2249    """
2250    dictionary_parsed = parse_graph(dictionary)
2251    key_parsed = parse_string_graph(key)
2252    value_parsed = parse_graph(value)
2253    return r_g_b_color_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)
2254
2255def r_g_b_color_from_components(r, g, b) -> Graph:
2256    """RGB Color from Components
2257
2258    Given the r, g and b creates the color
2259
2260    Args:
2261        red: Graph of Float
2262        green: Graph of Float
2263        blue: Graph of Float
2264        
2265
2266    Returns:
2267        Graph: A graph node producing a RGBColor.
2268    """
2269    r_parsed = parse_float_graph(r)
2270    g_parsed = parse_float_graph(g)
2271    b_parsed = parse_float_graph(b)
2272    return r_g_b_color_from_components_internal(r_parsed, g_parsed, b_parsed)
2273
2274def r_g_b_color_passthrough(value) -> Graph:
2275    """RGB Color Passthrough
2276
2277    Responds with the value provided. Doing nothing to it.
2278
2279    Args:
2280        value: Graph of RGBColor
2281        
2282
2283    Returns:
2284        Graph: A graph node producing a RGBColor.
2285    """
2286    value_parsed = parse_graph(value)
2287    return r_g_b_color_passthrough_internal(value_parsed)
2288
2289def r_g_b_to_ok_lab(rgb, color_profile) -> Graph:
2290    """RGB to OkLab
2291
2292    Converts an RGB color to an OkLab color
2293
2294    Args:
2295        RGB: Graph of RGBColor
2296        color profile: Graph of ColorProfile
2297        
2298
2299    Returns:
2300        Graph: A graph node producing a OkLabColor.
2301    """
2302    rgb_parsed = parse_graph(rgb)
2303    color_profile_parsed = parse_graph(color_profile)
2304    return r_g_b_to_ok_lab_internal(rgb_parsed, color_profile_parsed)
2305
2306def render_style_brush_and_fill(brush, fill) -> Graph:
2307    """Render Style Brush and Fill
2308
2309    Creates a render style that will have a brush and a fill.
2310
2311    Args:
2312        brush: Graph of Brush
2313        fill: Graph of Fill
2314        
2315
2316    Returns:
2317        Graph: A graph node producing a RenderStyle.
2318    """
2319    brush_parsed = parse_graph(brush)
2320    fill_parsed = parse_graph(fill)
2321    return render_style_brush_and_fill_internal(brush_parsed, fill_parsed)
2322
2323def render_style_brush_only(brush) -> Graph:
2324    """Render Style Brush Only
2325
2326    Creates a render style that will only have a brush.
2327
2328    Args:
2329        brush: Graph of Brush
2330        
2331
2332    Returns:
2333        Graph: A graph node producing a RenderStyle.
2334    """
2335    brush_parsed = parse_graph(brush)
2336    return render_style_brush_only_internal(brush_parsed)
2337
2338def render_style_fill_only(fill) -> Graph:
2339    """Render Style Fill Only
2340
2341    Creates a render style that will only have a fill.
2342
2343    Args:
2344        fill: Graph of Fill
2345        
2346
2347    Returns:
2348        Graph: A graph node producing a RenderStyle.
2349    """
2350    fill_parsed = parse_graph(fill)
2351    return render_style_fill_only_internal(fill_parsed)
2352
2353def sequence_adjust_speed(sequence, factor) -> Graph:
2354    """Sequence Adjust Speed
2355
2356    Adjusts the speed of a sequence by a speed factor.
2357
2358    Args:
2359        sequence: Graph of Sequence
2360        factor: Graph of Float
2361        
2362
2363    Returns:
2364        Graph: A graph node producing a Sequence.
2365    """
2366    sequence_parsed = parse_graph(sequence)
2367    factor_parsed = parse_float_graph(factor)
2368    return sequence_adjust_speed_internal(sequence_parsed, factor_parsed)
2369
2370def sequence_animated_web_p(sequence, framerate) -> Graph:
2371    """Sequence to Animated WebP
2372
2373    Given a sequence of images, encodes them into an animated WebP returning the URL to the file.
2374
2375    Args:
2376        sequence: Graph of Sequence
2377        framerate: Graph of Int
2378        
2379
2380    Returns:
2381        Graph: A graph node producing a ByteList.
2382    """
2383    sequence_parsed = parse_graph(sequence)
2384    framerate_parsed = parse_int_graph(framerate)
2385    return sequence_animated_web_p_internal(sequence_parsed, framerate_parsed)
2386
2387def sequence_composition_at_time(sequence, time) -> Graph:
2388    """Sequence Composition at Time
2389
2390    Extracts an composition from a sequence at a particular time
2391
2392    Args:
2393        sequence: Graph of Sequence
2394        time: Graph of Float
2395        
2396
2397    Returns:
2398        Graph: A graph node producing a Composition.
2399    """
2400    sequence_parsed = parse_graph(sequence)
2401    time_parsed = parse_float_graph(time)
2402    return sequence_composition_at_time_internal(sequence_parsed, time_parsed)
2403
2404def sequence_concatenate(sequence_1, sequence_2) -> Graph:
2405    """Sequence Concatenate
2406
2407    Given two sequences, combines them into one by playing the first one and then the second one.
2408
2409    Args:
2410        sequence 1: Graph of Sequence
2411        sequence 2: Graph of Sequence
2412        
2413
2414    Returns:
2415        Graph: A graph node producing a Sequence.
2416    """
2417    sequence_1_parsed = parse_graph(sequence_1)
2418    sequence_2_parsed = parse_graph(sequence_2)
2419    return sequence_concatenate_internal(sequence_1_parsed, sequence_2_parsed)
2420
2421def sequence_duration(sequence) -> Graph:
2422    """Sequence Duration
2423
2424    Gets the duration from a sequence
2425
2426    Args:
2427        sequence: Graph of Sequence
2428        
2429
2430    Returns:
2431        Graph: A graph node producing a Float.
2432    """
2433    sequence_parsed = parse_graph(sequence)
2434    return sequence_duration_internal(sequence_parsed)
2435
2436def sequence_from_composition_and_duration(composition, duration) -> Graph:
2437    """Sequence from Composition and Duration
2438
2439    Give a Composition and a Duration. Returns a Sequence.
2440
2441    Args:
2442        composition: Graph of Composition
2443        duration: Graph of Float
2444        
2445
2446    Returns:
2447        Graph: A graph node producing a Sequence.
2448    """
2449    composition_parsed = parse_graph(composition)
2450    duration_parsed = parse_float_graph(duration)
2451    return sequence_from_composition_and_duration_internal(composition_parsed, duration_parsed)
2452
2453def sequence_from_u_r_l(url) -> Graph:
2454    """Sequence from URL
2455
2456    Creates a sequence from URL
2457
2458    Args:
2459        url: Graph of String
2460        
2461
2462    Returns:
2463        Graph: A graph node producing a Sequence.
2464    """
2465    url_parsed = parse_string_graph(url)
2466    return sequence_from_u_r_l_internal(url_parsed)
2467
2468def sequence_graph(duration, time, frame) -> Graph:
2469    """Sequence Graph
2470
2471    Creates a sequence that runs the graph to get the duration and the frame for each time.
2472
2473    Args:
2474        duration: Graph of Float
2475        time: Graph of Float
2476        frame: Graph of Composition
2477        
2478
2479    Returns:
2480        Graph: A graph node producing a Sequence.
2481    """
2482    duration_parsed = parse_float_graph(duration)
2483    time_parsed = parse_float_graph(time)
2484    frame_parsed = parse_graph(frame)
2485    return sequence_graph_internal(duration_parsed, time_parsed, frame_parsed)
2486
2487def sequence_grayscale(sequence) -> Graph:
2488    """Sequence Grayscale
2489
2490    Creates a sequence that converts the video to grayscale
2491
2492    Args:
2493        sequence: Graph of Sequence
2494        
2495
2496    Returns:
2497        Graph: A graph node producing a Sequence.
2498    """
2499    sequence_parsed = parse_graph(sequence)
2500    return sequence_grayscale_internal(sequence_parsed)
2501
2502def sequence_passthrough(value) -> Graph:
2503    """Sequence Passthrough
2504
2505    Responds with the value provided. Doing nothing to it.
2506
2507    Args:
2508        value: Graph of Sequence
2509        
2510
2511    Returns:
2512        Graph: A graph node producing a Sequence.
2513    """
2514    value_parsed = parse_graph(value)
2515    return sequence_passthrough_internal(value_parsed)
2516
2517def sequence_reverse(sequence) -> Graph:
2518    """Sequence Reverse
2519
2520    Given a sequence. Reverses it.
2521
2522    Args:
2523        sequence: Graph of Sequence
2524        
2525
2526    Returns:
2527        Graph: A graph node producing a Sequence.
2528    """
2529    sequence_parsed = parse_graph(sequence)
2530    return sequence_reverse_internal(sequence_parsed)
2531
2532def sequence_to_mp4(sequence, frame_rate_numerator, frame_rate_denominator) -> Graph:
2533    """Sequence To MP4
2534
2535    Given a sequence. Converts it to MP4 return a local file to where that MP4 is stored.
2536
2537    Args:
2538        sequence: Graph of Sequence
2539        frame rate numerator: Graph of Int
2540        frame rate denominator: Graph of Int
2541        
2542
2543    Returns:
2544        Graph: A graph node producing a String.
2545    """
2546    sequence_parsed = parse_graph(sequence)
2547    frame_rate_numerator_parsed = parse_int_graph(frame_rate_numerator)
2548    frame_rate_denominator_parsed = parse_int_graph(frame_rate_denominator)
2549    return sequence_to_mp4_internal(sequence_parsed, frame_rate_numerator_parsed, frame_rate_denominator_parsed)
2550
2551def sequence_trim_back(sequence, amount) -> Graph:
2552    """Sequence Trim Back
2553
2554    Given a sequence. Trims from the back.
2555
2556    Args:
2557        sequence: Graph of Sequence
2558        amount: Graph of Float
2559        
2560
2561    Returns:
2562        Graph: A graph node producing a Sequence.
2563    """
2564    sequence_parsed = parse_graph(sequence)
2565    amount_parsed = parse_float_graph(amount)
2566    return sequence_trim_back_internal(sequence_parsed, amount_parsed)
2567
2568def sequence_trim_front(sequence, amount) -> Graph:
2569    """Sequence Trim Front
2570
2571    Given a sequence. Trims from the front.
2572
2573    Args:
2574        sequence: Graph of Sequence
2575        amount: Graph of Float
2576        
2577
2578    Returns:
2579        Graph: A graph node producing a Sequence.
2580    """
2581    sequence_parsed = parse_graph(sequence)
2582    amount_parsed = parse_float_graph(amount)
2583    return sequence_trim_front_internal(sequence_parsed, amount_parsed)
2584
2585def string_if(bool, input_1, input_2) -> Graph:
2586    """String If
2587
2588    If the boolean is true returns input 1, otherwise input 2. Type: String
2589
2590    Args:
2591        bool: Graph of Bool
2592        input 1: Graph of String
2593        input 2: Graph of String
2594        
2595
2596    Returns:
2597        Graph: A graph node producing a String.
2598    """
2599    bool_parsed = parse_bool_graph(bool)
2600    input_1_parsed = parse_string_graph(input_1)
2601    input_2_parsed = parse_string_graph(input_2)
2602    return string_if_internal(bool_parsed, input_1_parsed, input_2_parsed)
2603
2604def transform2_identity() -> Graph:
2605    """Transform 2D Identity
2606
2607    Creates a 2D transform that is the identity transform.
2608
2609    Returns:
2610        Graph: A graph node producing a Transform2.
2611    """
2612    return transform2_identity_internal()
2613
2614def transform2_rotate(transform, angle) -> Graph:
2615    """Transform 2D Rotate
2616
2617    Applies a rotation to a 2D transform. Rotation is in radians.
2618
2619    Args:
2620        transform: Graph of Transform2
2621        angle in radians: Graph of Float
2622        
2623
2624    Returns:
2625        Graph: A graph node producing a Transform2.
2626    """
2627    transform_parsed = parse_graph(transform)
2628    angle_parsed = parse_float_graph(angle)
2629    return transform2_rotate_internal(transform_parsed, angle_parsed)
2630
2631def transform2_scale(transform, scale) -> Graph:
2632    """Transform 2D Scale
2633
2634    Applies a scale to a 2D transform.
2635
2636    Args:
2637        transform: Graph of Transform2
2638        scale: Graph of Vector2f
2639        
2640
2641    Returns:
2642        Graph: A graph node producing a Transform2.
2643    """
2644    transform_parsed = parse_graph(transform)
2645    scale_parsed = parse_graph(scale)
2646    return transform2_scale_internal(transform_parsed, scale_parsed)
2647
2648def transform2_to_list(item) -> Graph:
2649    """Transform 2D to List
2650
2651    Converts Transform 2D to a single item list
2652
2653    Args:
2654        item: Graph of Transform2
2655        
2656
2657    Returns:
2658        Graph: A graph node producing a Transform2List.
2659    """
2660    item_parsed = parse_graph(item)
2661    return transform2_to_list_internal(item_parsed)
2662
2663def transform2_translation(transform, translation) -> Graph:
2664    """Transform 2D Translation
2665
2666    Applies a translation to a 2D transform.
2667
2668    Args:
2669        transform: Graph of Transform2
2670        translation: Graph of Vector2f
2671        
2672
2673    Returns:
2674        Graph: A graph node producing a Transform2.
2675    """
2676    transform_parsed = parse_graph(transform)
2677    translation_parsed = parse_graph(translation)
2678    return transform2_translation_internal(transform_parsed, translation_parsed)
2679
2680def upload_file_path(path, url, content_type) -> Graph:
2681    """Upload File Path
2682
2683    Reads a file from a local path on disk and uploads its contents to a URL via PUT request
2684
2685    Args:
2686        local file path to read: Graph of String
2687        url: Graph of String
2688        content type: Graph of String
2689        
2690
2691    Returns:
2692        Graph: A graph node producing a Void.
2693    """
2694    path_parsed = parse_string_graph(path)
2695    url_parsed = parse_string_graph(url)
2696    content_type_parsed = parse_string_graph(content_type)
2697    return upload_file_path_internal(path_parsed, url_parsed, content_type_parsed)
2698
2699def vector2_int_to_vector2_float(vector) -> Graph:
2700    """Vector 2 Int to Vector 2 Float
2701
2702    Given a Vector 2 Int. Creates a Vector 2 Float.
2703
2704    Args:
2705        vector: Graph of Vector2i
2706        
2707
2708    Returns:
2709        Graph: A graph node producing a Vector2f.
2710    """
2711    vector_parsed = parse_graph(vector)
2712    return vector2_int_to_vector2_float_internal(vector_parsed)
2713
2714def vector2f_add(lhs, rhs) -> Graph:
2715    """Vector 2 Float Add
2716
2717    Add two Vector 2s of Floats
2718
2719    Args:
2720        The vector on the left hand side of the add: Graph of Vector2f
2721        The vector on the right hand side of the add: Graph of Vector2f
2722        
2723
2724    Returns:
2725        Graph: A graph node producing a Vector2f.
2726    """
2727    lhs_parsed = parse_graph(lhs)
2728    rhs_parsed = parse_graph(rhs)
2729    return vector2f_add_internal(lhs_parsed, rhs_parsed)
2730
2731def vector2f_add_to_dictionary(dictionary, key, value) -> Graph:
2732    """Vector 2 Float Add To Dictionary
2733
2734    Adds a Vector 2 Float to a Dictionary
2735
2736    Args:
2737        dictionary: Graph of Dictionary
2738        key: Graph of String
2739        value: Graph of Vector2f
2740        
2741
2742    Returns:
2743        Graph: A graph node producing a Dictionary.
2744    """
2745    dictionary_parsed = parse_graph(dictionary)
2746    key_parsed = parse_string_graph(key)
2747    value_parsed = parse_graph(value)
2748    return vector2f_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)
2749
2750def vector2f_from_components(x, y) -> Graph:
2751    """Vector 2 Float from Components
2752
2753    Given an x and y creates a vector.
2754
2755    Args:
2756        x: Graph of Float
2757        y: Graph of Float
2758        
2759
2760    Returns:
2761        Graph: A graph node producing a Vector2f.
2762    """
2763    x_parsed = parse_float_graph(x)
2764    y_parsed = parse_float_graph(y)
2765    return vector2f_from_components_internal(x_parsed, y_parsed)
2766
2767def vector2f_normalize(vector) -> Graph:
2768    """Vector 2 Float Normalize
2769
2770    Normalizes a Vector. Converting it's length to 1.
2771
2772    Args:
2773        Vector: Graph of Vector2f
2774        
2775
2776    Returns:
2777        Graph: A graph node producing a Vector2f.
2778    """
2779    vector_parsed = parse_graph(vector)
2780    return vector2f_normalize_internal(vector_parsed)
2781
2782def vector2f_passthrough(value) -> Graph:
2783    """Vector 2 Float Passthrough
2784
2785    Responds with the value provided. Doing nothing to it.
2786
2787    Args:
2788        value: Graph of Vector2f
2789        
2790
2791    Returns:
2792        Graph: A graph node producing a Vector2f.
2793    """
2794    value_parsed = parse_graph(value)
2795    return vector2f_passthrough_internal(value_parsed)
2796
2797def vector2f_scalar_multiply(vector, scalar) -> Graph:
2798    """Vector 2 Float Scalar Multiply
2799
2800    Multiplies each element of the Vector as a scalar
2801
2802    Args:
2803        Vector: Graph of Vector2f
2804        Scalar: Graph of Float
2805        
2806
2807    Returns:
2808        Graph: A graph node producing a Vector2f.
2809    """
2810    vector_parsed = parse_graph(vector)
2811    scalar_parsed = parse_float_graph(scalar)
2812    return vector2f_scalar_multiply_internal(vector_parsed, scalar_parsed)
2813
2814def vector2f_x(vector) -> Graph:
2815    """Vector 2 Float get X
2816
2817    Retrieves the X component of a Vector 2 Float.
2818
2819    Args:
2820        vector: Graph of Vector2f
2821        
2822
2823    Returns:
2824        Graph: A graph node producing a Float.
2825    """
2826    vector_parsed = parse_graph(vector)
2827    return vector2f_x_internal(vector_parsed)
2828
2829def vector2f_y(vector) -> Graph:
2830    """Vector 2 Float get Y
2831
2832    Retrieves the Y component of a Vector 2 Float.
2833
2834    Args:
2835        vector: Graph of Vector2f
2836        
2837
2838    Returns:
2839        Graph: A graph node producing a Float.
2840    """
2841    vector_parsed = parse_graph(vector)
2842    return vector2f_y_internal(vector_parsed)
2843
2844def vector2i_add(lhs, rhs) -> Graph:
2845    """Vector 2 Int Add
2846
2847    Add two Vector 2s of Ints
2848
2849    Args:
2850        The vector on the left hand side of the add: Graph of Vector2i
2851        The vector on the right hand side of the add: Graph of Vector2i
2852        
2853
2854    Returns:
2855        Graph: A graph node producing a Vector2i.
2856    """
2857    lhs_parsed = parse_graph(lhs)
2858    rhs_parsed = parse_graph(rhs)
2859    return vector2i_add_internal(lhs_parsed, rhs_parsed)
2860
2861def vector2i_add_to_dictionary(dictionary, key, value) -> Graph:
2862    """Vector 2 Int Add To Dictionary
2863
2864    Adds a Vector 2 Int to a Dictionary
2865
2866    Args:
2867        dictionary: Graph of Dictionary
2868        key: Graph of String
2869        value: Graph of Vector2i
2870        
2871
2872    Returns:
2873        Graph: A graph node producing a Dictionary.
2874    """
2875    dictionary_parsed = parse_graph(dictionary)
2876    key_parsed = parse_string_graph(key)
2877    value_parsed = parse_graph(value)
2878    return vector2i_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)
2879
2880def vector2i_from_components(x, y) -> Graph:
2881    """Vector 2 Int from Components
2882
2883    Given an x and y creates a vector.
2884
2885    Args:
2886        x: Graph of Int
2887        y: Graph of Int
2888        
2889
2890    Returns:
2891        Graph: A graph node producing a Vector2i.
2892    """
2893    x_parsed = parse_int_graph(x)
2894    y_parsed = parse_int_graph(y)
2895    return vector2i_from_components_internal(x_parsed, y_parsed)
2896
2897def vector2i_passthrough(value) -> Graph:
2898    """Vector 2 Int Passthrough
2899
2900    Responds with the value provided. Doing nothing to it.
2901
2902    Args:
2903        value: Graph of Vector2i
2904        
2905
2906    Returns:
2907        Graph: A graph node producing a Vector2i.
2908    """
2909    value_parsed = parse_graph(value)
2910    return vector2i_passthrough_internal(value_parsed)
2911
2912def vector2i_to_vector2f(vector) -> Graph:
2913    """Vector 2 Int to Vector 2 Float
2914
2915    Given a Vector 2 Int. Creates a Vector 2 Float.
2916
2917    Args:
2918        vector: Graph of Vector2i
2919        
2920
2921    Returns:
2922        Graph: A graph node producing a Vector2f.
2923    """
2924    vector_parsed = parse_graph(vector)
2925    return vector2i_to_vector2f_internal(vector_parsed)
2926
2927def vector2i_x(vector) -> Graph:
2928    """Vector 2 Int get X
2929
2930    Retrieves the X component of a Vector 2 Int.
2931
2932    Args:
2933        vector: Graph of Vector2i
2934        
2935
2936    Returns:
2937        Graph: A graph node producing a Int.
2938    """
2939    vector_parsed = parse_graph(vector)
2940    return vector2i_x_internal(vector_parsed)
2941
2942def vector2i_y(vector) -> Graph:
2943    """Vector 2 Int get Y
2944
2945    Retrieves the Y component of a Vector 2 Int.
2946
2947    Args:
2948        vector: Graph of Vector2i
2949        
2950
2951    Returns:
2952        Graph: A graph node producing a Int.
2953    """
2954    vector_parsed = parse_graph(vector)
2955    return vector2i_y_internal(vector_parsed)
2956
2957def vector3f_add(lhs, rhs) -> Graph:
2958    """Vector 3 Float Add
2959
2960    Add two Vector 3s of Floats
2961
2962    Args:
2963        The vector on the left hand side of the add: Graph of Vector3f
2964        The vector on the right hand side of the add: Graph of Vector3f
2965        
2966
2967    Returns:
2968        Graph: A graph node producing a Vector3f.
2969    """
2970    lhs_parsed = parse_graph(lhs)
2971    rhs_parsed = parse_graph(rhs)
2972    return vector3f_add_internal(lhs_parsed, rhs_parsed)
2973
2974def vector3f_from_components(x, y, z) -> Graph:
2975    """Vector 3 Float from Components
2976
2977    Given an x, y and z creates a vector floats.
2978
2979    Args:
2980        x: Graph of Float
2981        y: Graph of Float
2982        z: Graph of Float
2983        
2984
2985    Returns:
2986        Graph: A graph node producing a Vector3f.
2987    """
2988    x_parsed = parse_float_graph(x)
2989    y_parsed = parse_float_graph(y)
2990    z_parsed = parse_float_graph(z)
2991    return vector3f_from_components_internal(x_parsed, y_parsed, z_parsed)
2992
2993def vector3f_normalize(vector) -> Graph:
2994    """Vector 3 Normalize
2995
2996    Normalizes a Vector 3 Float. Converting it's length to 1.
2997
2998    Args:
2999        Vector: Graph of Vector3f
3000        
3001
3002    Returns:
3003        Graph: A graph node producing a Vector3f.
3004    """
3005    vector_parsed = parse_graph(vector)
3006    return vector3f_normalize_internal(vector_parsed)
3007
3008def vector3f_x(vector) -> Graph:
3009    """Vector 3D Float X
3010
3011    Gets the value in the x component for the provided vector
3012
3013    Args:
3014        vector: Graph of Vector3f
3015        
3016
3017    Returns:
3018        Graph: A graph node producing a Float.
3019    """
3020    vector_parsed = parse_graph(vector)
3021    return vector3f_x_internal(vector_parsed)
3022
3023def vector3f_y(vector) -> Graph:
3024    """Vector 3D Y Float
3025
3026    Gets the value in the y component for the provided vector
3027
3028    Args:
3029        vector: Graph of Vector3f
3030        
3031
3032    Returns:
3033        Graph: A graph node producing a Float.
3034    """
3035    vector_parsed = parse_graph(vector)
3036    return vector3f_y_internal(vector_parsed)
3037
3038def vector3f_z(vector) -> Graph:
3039    """Vector 3D Float Z
3040
3041    Gets the value in the z component for the provided vector
3042
3043    Args:
3044        vector: Graph of Vector3f
3045        
3046
3047    Returns:
3048        Graph: A graph node producing a Float.
3049    """
3050    vector_parsed = parse_graph(vector)
3051    return vector3f_z_internal(vector_parsed)
3052
3053def xor(bool1, bool2) -> Graph:
3054    """Exclusive Or
3055
3056    Returns true if either the inputs are true. But false if both are true.
3057
3058    Args:
3059        the first bool: Graph of Bool
3060        The second bool: Graph of Bool
3061        
3062
3063    Returns:
3064        Graph: A graph node producing a Bool.
3065    """
3066    bool1_parsed = parse_bool_graph(bool1)
3067    bool2_parsed = parse_bool_graph(bool2)
3068    return xor_internal(bool1_parsed, bool2_parsed)
3069
3070
3071__all__ = [
3072    # Core classes
3073    "Context", "Graph", "Project", "Type",
3074    "TypeDefinition", "NodeDefinition", "NodeDefinitionInput", "ImageRecipe",
3075    # Constant functions
3076    "int_constant", "float_constant", "string_constant", "bool_constant",
3077    # Node functions
3078    "abs",
3079    "and_",
3080    "bool_add_to_dictionary",
3081    "bool_if",
3082    "bounds2f_from_x_y_width_height",
3083    "bounds2i_from_x_y_width_height",
3084    "brush_solid",
3085    "byte_list_from_u_r_l",
3086    "color_profile_b_t709",
3087    "color_profile_ok_lab_a",
3088    "color_profile_p3",
3089    "color_profile_p_n_g_s_r_g_b",
3090    "color_profile_s_r_g_b",
3091    "composition_absolute_value",
3092    "composition_bilinear_interpolation",
3093    "composition_blend_add",
3094    "composition_blend_add_with_ok_lab",
3095    "composition_blend_alpha",
3096    "composition_blend_alpha_with_ok_lab",
3097    "composition_blend_divide",
3098    "composition_blend_divide_with_ok_lab",
3099    "composition_blend_max",
3100    "composition_blend_max_with_ok_lab",
3101    "composition_blend_min",
3102    "composition_blend_min_with_ok_lab",
3103    "composition_blend_multiply",
3104    "composition_blend_multiply_with_ok_lab",
3105    "composition_blend_subtract",
3106    "composition_blend_subtract_with_ok_lab",
3107    "composition_blend_with_mask",
3108    "composition_box_blur",
3109    "composition_box_blur_with_ok_lab",
3110    "composition_brightness_adjust",
3111    "composition_chroma_offset",
3112    "composition_color_convert",
3113    "composition_color_invert",
3114    "composition_color_profile",
3115    "composition_color_rect",
3116    "composition_color_threshold",
3117    "composition_convolution",
3118    "composition_crop",
3119    "composition_custom_transformer_shader",
3120    "composition_face_landmarks",
3121    "composition_flip_horizontal",
3122    "composition_flip_vertical",
3123    "composition_from_image",
3124    "composition_gaussian_blur",
3125    "composition_gaussian_blur_with_ok_lab",
3126    "composition_grayscale",
3127    "composition_l_curve",
3128    "composition_linear_transform",
3129    "composition_monet_women_with_parasol",
3130    "composition_morphological_max",
3131    "composition_morphological_min",
3132    "composition_painter",
3133    "composition_passthrough",
3134    "composition_perceptual_difference",
3135    "composition_r_g_b_curve",
3136    "composition_render_to_image",
3137    "composition_rotate180",
3138    "composition_rotate90_clockwise",
3139    "composition_rotate90_counter_clockwise",
3140    "composition_saturation_adjust",
3141    "composition_scale_nearest_neighbor",
3142    "composition_segment_facial_skin",
3143    "composition_segment_mouth_lips_eyes_eyebrows",
3144    "composition_segment_person",
3145    "composition_segment_under_right_eye",
3146    "composition_size",
3147    "composition_sobel_edge_detection",
3148    "composition_target_white_kelvin",
3149    "composition_to_ok_lab_hist",
3150    "composition_uniform_lightness",
3151    "composition_vignette",
3152    "curve_gamma",
3153    "curve_identity",
3154    "curve_pivoted_sigmoid",
3155    "curve_s_curve",
3156    "dictionary_create",
3157    "fill_custom",
3158    "fill_solid",
3159    "float_add",
3160    "float_add_to_dictionary",
3161    "float_cos",
3162    "float_divide",
3163    "float_if",
3164    "float_lerp",
3165    "float_max",
3166    "float_min",
3167    "float_multiply",
3168    "float_passthrough",
3169    "float_pow",
3170    "float_round_to_int",
3171    "float_sin",
3172    "float_square_root",
3173    "float_squared",
3174    "float_subtract",
3175    "image_from_byte_list",
3176    "image_to_byte_list",
3177    "int_abs",
3178    "int_add",
3179    "int_add_to_dictionary",
3180    "int_equals",
3181    "int_greater_than",
3182    "int_if",
3183    "int_less_than",
3184    "int_max",
3185    "int_min",
3186    "int_multiply",
3187    "int_passthrough",
3188    "int_subtract",
3189    "int_to_float",
3190    "monet_network_download_u_r_l_from_asset_i_d",
3191    "not_",
3192    "null_value",
3193    "ok_lab_color_from_components",
3194    "ok_lab_to_r_g_b",
3195    "or_",
3196    "painter_add_path_with_render_style",
3197    "painter_new",
3198    "path_add_rectangle",
3199    "path_line_to_point",
3200    "path_move_to_point",
3201    "path_new",
3202    "pi",
3203    "point2f_from_components",
3204    "r_g_b_a_color_add_to_dictionary",
3205    "r_g_b_a_color_from_components",
3206    "r_g_b_a_color_passthrough",
3207    "r_g_b_color_add_to_dictionary",
3208    "r_g_b_color_from_components",
3209    "r_g_b_color_passthrough",
3210    "r_g_b_to_ok_lab",
3211    "render_style_brush_and_fill",
3212    "render_style_brush_only",
3213    "render_style_fill_only",
3214    "sequence_adjust_speed",
3215    "sequence_animated_web_p",
3216    "sequence_composition_at_time",
3217    "sequence_concatenate",
3218    "sequence_duration",
3219    "sequence_from_composition_and_duration",
3220    "sequence_from_u_r_l",
3221    "sequence_graph",
3222    "sequence_grayscale",
3223    "sequence_passthrough",
3224    "sequence_reverse",
3225    "sequence_to_mp4",
3226    "sequence_trim_back",
3227    "sequence_trim_front",
3228    "string_if",
3229    "transform2_identity",
3230    "transform2_rotate",
3231    "transform2_scale",
3232    "transform2_to_list",
3233    "transform2_translation",
3234    "upload_file_path",
3235    "vector2_int_to_vector2_float",
3236    "vector2f_add",
3237    "vector2f_add_to_dictionary",
3238    "vector2f_from_components",
3239    "vector2f_normalize",
3240    "vector2f_passthrough",
3241    "vector2f_scalar_multiply",
3242    "vector2f_x",
3243    "vector2f_y",
3244    "vector2i_add",
3245    "vector2i_add_to_dictionary",
3246    "vector2i_from_components",
3247    "vector2i_passthrough",
3248    "vector2i_to_vector2f",
3249    "vector2i_x",
3250    "vector2i_y",
3251    "vector3f_add",
3252    "vector3f_from_components",
3253    "vector3f_normalize",
3254    "vector3f_x",
3255    "vector3f_y",
3256    "vector3f_z",
3257    "xor",
3258    ]
class Context:
class Graph:
def persistent_id(self, /):

The type of the None singleton.

def revision_id(self, /):

The type of the None singleton.

def node_definition(self, /):

The type of the None singleton.

def dependencies(self, /):

The type of the None singleton.

def generate_ipynb_script(self, /):

The type of the None singleton.

def execute(self, /, context):

The type of the None singleton.

class Project:
def add_graph(self, /, graph):

The type of the None singleton.

def all_nodes(self, /):

The type of the None singleton.

def lookup(self, /, graph_id):

The type of the None singleton.

def serialize(self, /, context):

The type of the None singleton.

def execute(self, /, context, graph_id):

The type of the None singleton.

def deserialize(context, bytes):

The type of the None singleton.

class Type:

The result of executing a graph node.

def type_definition(self, /):

The type of the None singleton.

def type_name(self, /):

The type of the None singleton.

def as_bool(self, /):

The type of the None singleton.

def as_int(self, /):

The type of the None singleton.

def as_float(self, /):

The type of the None singleton.

def as_string(self, /):

The type of the None singleton.

def as_float_list(self, /):

The type of the None singleton.

def as_int_list(self, /):

The type of the None singleton.

def as_composition(self, /):

The type of the None singleton.

class TypeDefinition:
description
display_name
name
class NodeDefinition:
display_name
output_type
inputs
description
name
node_type_id
class NodeDefinitionInput:
name
input_type
description
class ImageRecipe:

Wraps image_recipe::ImageRecipe for Python. Methods return new PyImageRecipe instances following ImageRecipe's immutable builder pattern.

def size(self, /):

The type of the None singleton.

def to_image_bytes(self, /, context):

The type of the None singleton.

def int_constant(value) -> Graph:
46def int_constant(value) -> Graph:
47    return int_constant_internal(int(value))
def float_constant(value) -> Graph:
49def float_constant(value) -> Graph:
50    return float_constant_internal(float(value))
def string_constant(value: str) -> Graph:
52def string_constant(value: str) -> Graph:
53    return string_constant_internal(value)
def bool_constant(value: bool) -> Graph:
55def bool_constant(value: bool) -> Graph:
56    return bool_constant_internal(value)
def abs(number) -> Graph:
71def abs(number) -> Graph:
72    """Absolute Value
73
74    Returns the absolute value of a float
75
76    Args:
77        number: Graph of Float
78        
79
80    Returns:
81        Graph: A graph node producing a Float.
82    """
83    number_parsed = parse_float_graph(number)
84    return abs_internal(number_parsed)

Absolute Value

Returns the absolute value of a float

Args: number: Graph of Float

Returns: Graph: A graph node producing a Float.

def and_(bool1, bool2) -> Graph:
 86def and_(bool1, bool2) -> Graph:
 87    """And
 88
 89    Returns true if both inputs are true.
 90
 91    Args:
 92        the first bool: Graph of Bool
 93        The second bool: Graph of Bool
 94        
 95
 96    Returns:
 97        Graph: A graph node producing a Bool.
 98    """
 99    bool1_parsed = parse_bool_graph(bool1)
100    bool2_parsed = parse_bool_graph(bool2)
101    return and_internal(bool1_parsed, bool2_parsed)

And

Returns true if both inputs are true.

Args: the first bool: Graph of Bool The second bool: Graph of Bool

Returns: Graph: A graph node producing a Bool.

def bool_add_to_dictionary(dictionary, key, value) -> Graph:
103def bool_add_to_dictionary(dictionary, key, value) -> Graph:
104    """Bool Add To Dictionary
105
106    Adds a Bool to a Dictionary
107
108    Args:
109        dictionary: Graph of Dictionary
110        key: Graph of String
111        value: Graph of Bool
112        
113
114    Returns:
115        Graph: A graph node producing a Dictionary.
116    """
117    dictionary_parsed = parse_graph(dictionary)
118    key_parsed = parse_string_graph(key)
119    value_parsed = parse_bool_graph(value)
120    return bool_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)

Bool Add To Dictionary

Adds a Bool to a Dictionary

Args: dictionary: Graph of Dictionary key: Graph of String value: Graph of Bool

Returns: Graph: A graph node producing a Dictionary.

def bool_if(bool, input_1, input_2) -> Graph:
122def bool_if(bool, input_1, input_2) -> Graph:
123    """Bool If
124
125    If the boolean is true returns input 1, otherwise input 2. Type: Bool
126
127    Args:
128        bool: Graph of Bool
129        input 1: Graph of Bool
130        input 2: Graph of Bool
131        
132
133    Returns:
134        Graph: A graph node producing a Bool.
135    """
136    bool_parsed = parse_bool_graph(bool)
137    input_1_parsed = parse_bool_graph(input_1)
138    input_2_parsed = parse_bool_graph(input_2)
139    return bool_if_internal(bool_parsed, input_1_parsed, input_2_parsed)

Bool If

If the boolean is true returns input 1, otherwise input 2. Type: Bool

Args: bool: Graph of Bool input 1: Graph of Bool input 2: Graph of Bool

Returns: Graph: A graph node producing a Bool.

def bounds2f_from_x_y_width_height(x, y, width, height) -> Graph:
141def bounds2f_from_x_y_width_height(x, y, width, height) -> Graph:
142    """Bounds 2D Float from X, Y, Width & Height
143
144    Creates the bounds of a 2D float region from its X, Y, Width and Height.
145
146    Args:
147        x: Graph of Float
148        y: Graph of Float
149        width: Graph of Float
150        height: Graph of Float
151        
152
153    Returns:
154        Graph: A graph node producing a Bounds2f.
155    """
156    x_parsed = parse_float_graph(x)
157    y_parsed = parse_float_graph(y)
158    width_parsed = parse_float_graph(width)
159    height_parsed = parse_float_graph(height)
160    return bounds2f_from_x_y_width_height_internal(x_parsed, y_parsed, width_parsed, height_parsed)

Bounds 2D Float from X, Y, Width & Height

Creates the bounds of a 2D float region from its X, Y, Width and Height.

Args: x: Graph of Float y: Graph of Float width: Graph of Float height: Graph of Float

Returns: Graph: A graph node producing a Bounds2f.

def bounds2i_from_x_y_width_height(x, y, width, height) -> Graph:
162def bounds2i_from_x_y_width_height(x, y, width, height) -> Graph:
163    """Bounds 2D Int from X, Y, Width & Height
164
165    Creates the bounds of a 2D array from its X, Y, Width and Height.
166
167    Args:
168        x: Graph of Int
169        y: Graph of Int
170        width: Graph of Int
171        height: Graph of Int
172        
173
174    Returns:
175        Graph: A graph node producing a Bounds2i.
176    """
177    x_parsed = parse_int_graph(x)
178    y_parsed = parse_int_graph(y)
179    width_parsed = parse_int_graph(width)
180    height_parsed = parse_int_graph(height)
181    return bounds2i_from_x_y_width_height_internal(x_parsed, y_parsed, width_parsed, height_parsed)

Bounds 2D Int from X, Y, Width & Height

Creates the bounds of a 2D array from its X, Y, Width and Height.

Args: x: Graph of Int y: Graph of Int width: Graph of Int height: Graph of Int

Returns: Graph: A graph node producing a Bounds2i.

def brush_solid(color, radius) -> Graph:
183def brush_solid(color, radius) -> Graph:
184    """Brush Solid
185
186    Creates a brush with a color and radius. Will stroke with the solid color.
187
188    Args:
189        color: Graph of RGBAColor
190        radius: Graph of Float
191        
192
193    Returns:
194        Graph: A graph node producing a Brush.
195    """
196    color_parsed = parse_graph(color)
197    radius_parsed = parse_float_graph(radius)
198    return brush_solid_internal(color_parsed, radius_parsed)

Brush Solid

Creates a brush with a color and radius. Will stroke with the solid color.

Args: color: Graph of RGBAColor radius: Graph of Float

Returns: Graph: A graph node producing a Brush.

def byte_list_from_u_r_l(url) -> Graph:
200def byte_list_from_u_r_l(url) -> Graph:
201    """Byte List from URL
202
203    Given a URL. Performs a GET request and downloads the result as bytes
204
205    Args:
206        url: Graph of String
207        
208
209    Returns:
210        Graph: A graph node producing a ByteList.
211    """
212    url_parsed = parse_string_graph(url)
213    return byte_list_from_u_r_l_internal(url_parsed)

Byte List from URL

Given a URL. Performs a GET request and downloads the result as bytes

Args: url: Graph of String

Returns: Graph: A graph node producing a ByteList.

def color_profile_b_t709() -> Graph:
215def color_profile_b_t709() -> Graph:
216    """Color Profile BT.709
217
218    Creates a BT.709 Color Profile
219
220    Returns:
221        Graph: A graph node producing a ColorProfile.
222    """
223    return color_profile_b_t709_internal()

Color Profile BT.709

Creates a BT.709 Color Profile

Returns: Graph: A graph node producing a ColorProfile.

def color_profile_ok_lab_a() -> Graph:
225def color_profile_ok_lab_a() -> Graph:
226    """Color Profile OkLabA
227
228    Creates an OkLabA color profile. OkLab with also an alpha component.
229
230    Returns:
231        Graph: A graph node producing a ColorProfile.
232    """
233    return color_profile_ok_lab_a_internal()

Color Profile OkLabA

Creates an OkLabA color profile. OkLab with also an alpha component.

Returns: Graph: A graph node producing a ColorProfile.

def color_profile_p3() -> Graph:
235def color_profile_p3() -> Graph:
236    """Color Profile P3
237
238    Creates a P3 Color Profile
239
240    Returns:
241        Graph: A graph node producing a ColorProfile.
242    """
243    return color_profile_p3_internal()

Color Profile P3

Creates a P3 Color Profile

Returns: Graph: A graph node producing a ColorProfile.

def color_profile_p_n_g_s_r_g_b() -> Graph:
245def color_profile_p_n_g_s_r_g_b() -> Graph:
246    """Color Profile PNG sRGB
247
248    Creates a color profile that is the same one as PNG sRGB.
249
250    Returns:
251        Graph: A graph node producing a ColorProfile.
252    """
253    return color_profile_p_n_g_s_r_g_b_internal()

Color Profile PNG sRGB

Creates a color profile that is the same one as PNG sRGB.

Returns: Graph: A graph node producing a ColorProfile.

def color_profile_s_r_g_b() -> Graph:
255def color_profile_s_r_g_b() -> Graph:
256    """Color Profile sRGB
257
258    Creates an sRGB Color Profile
259
260    Returns:
261        Graph: A graph node producing a ColorProfile.
262    """
263    return color_profile_s_r_g_b_internal()

Color Profile sRGB

Creates an sRGB Color Profile

Returns: Graph: A graph node producing a ColorProfile.

def composition_absolute_value(image) -> Graph:
265def composition_absolute_value(image) -> Graph:
266    """Composition Absolute Value
267
268    Takes the absolute value of all the pixels in the image.
269
270    Args:
271        image: Graph of Composition
272        
273
274    Returns:
275        Graph: A graph node producing a Composition.
276    """
277    image_parsed = parse_graph(image)
278    return composition_absolute_value_internal(image_parsed)

Composition Absolute Value

Takes the absolute value of all the pixels in the image.

Args: image: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_bilinear_interpolation(composition, size) -> Graph:
280def composition_bilinear_interpolation(composition, size) -> Graph:
281    """Composition Scale Bilinear Interpolation
282
283    Uses the bilinear interpolation algorithm to scale an image recipe
284
285    Args:
286        composition: Graph of Composition
287        size: Graph of Vector2i
288        
289
290    Returns:
291        Graph: A graph node producing a Composition.
292    """
293    composition_parsed = parse_graph(composition)
294    size_parsed = parse_graph(size)
295    return composition_bilinear_interpolation_internal(composition_parsed, size_parsed)

Composition Scale Bilinear Interpolation

Uses the bilinear interpolation algorithm to scale an image recipe

Args: composition: Graph of Composition size: Graph of Vector2i

Returns: Graph: A graph node producing a Composition.

def composition_blend_add(foreground, background, foreground_transform) -> Graph:
297def composition_blend_add(foreground, background, foreground_transform) -> Graph:
298    """Composition Blend Add
299
300    Adds the foreground and background images together using additive blending.
301
302    Args:
303        foreground: Graph of Composition
304        background: Graph of Composition
305        foreground transform: Graph of Transform2
306        
307
308    Returns:
309        Graph: A graph node producing a Composition.
310    """
311    foreground_parsed = parse_graph(foreground)
312    background_parsed = parse_graph(background)
313    foreground_transform_parsed = parse_graph(foreground_transform)
314    return composition_blend_add_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Add

Adds the foreground and background images together using additive blending.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_add_with_ok_lab(foreground, background, foreground_transform) -> Graph:
316def composition_blend_add_with_ok_lab(foreground, background, foreground_transform) -> Graph:
317    """Composition Blend Add with OkLab
318
319    Adds the foreground and background images together using additive blending in OkLab color space.
320
321    Args:
322        foreground: Graph of Composition
323        background: Graph of Composition
324        foreground transform: Graph of Transform2
325        
326
327    Returns:
328        Graph: A graph node producing a Composition.
329    """
330    foreground_parsed = parse_graph(foreground)
331    background_parsed = parse_graph(background)
332    foreground_transform_parsed = parse_graph(foreground_transform)
333    return composition_blend_add_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Add with OkLab

Adds the foreground and background images together using additive blending in OkLab color space.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_alpha(foreground, background, foreground_transform) -> Graph:
335def composition_blend_alpha(foreground, background, foreground_transform) -> Graph:
336    """Composition Blend Alpha
337
338    Blends between the foreground and background using the alpha component of the foreground. 1 is foreground. 0 is background.
339
340    Args:
341        foreground: Graph of Composition
342        background: Graph of Composition
343        foreground transform: Graph of Transform2
344        
345
346    Returns:
347        Graph: A graph node producing a Composition.
348    """
349    foreground_parsed = parse_graph(foreground)
350    background_parsed = parse_graph(background)
351    foreground_transform_parsed = parse_graph(foreground_transform)
352    return composition_blend_alpha_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Alpha

Blends between the foreground and background using the alpha component of the foreground. 1 is foreground. 0 is background.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_alpha_with_ok_lab(foreground, background, foreground_transform) -> Graph:
354def composition_blend_alpha_with_ok_lab(foreground, background, foreground_transform) -> Graph:
355    """Composition Blend Alpha with OkLab
356
357    Blends between the foreground and background using the alpha component of the foreground in OkLab color space. 1 is foreground. 0 is background.
358
359    Args:
360        foreground: Graph of Composition
361        background: Graph of Composition
362        foreground transform: Graph of Transform2
363        
364
365    Returns:
366        Graph: A graph node producing a Composition.
367    """
368    foreground_parsed = parse_graph(foreground)
369    background_parsed = parse_graph(background)
370    foreground_transform_parsed = parse_graph(foreground_transform)
371    return composition_blend_alpha_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Alpha with OkLab

Blends between the foreground and background using the alpha component of the foreground in OkLab color space. 1 is foreground. 0 is background.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_divide(foreground, background, foreground_transform) -> Graph:
373def composition_blend_divide(foreground, background, foreground_transform) -> Graph:
374    """Composition Blend Divide
375
376    Divides the background image by the foreground image using division blending.
377
378    Args:
379        foreground: Graph of Composition
380        background: Graph of Composition
381        foreground transform: Graph of Transform2
382        
383
384    Returns:
385        Graph: A graph node producing a Composition.
386    """
387    foreground_parsed = parse_graph(foreground)
388    background_parsed = parse_graph(background)
389    foreground_transform_parsed = parse_graph(foreground_transform)
390    return composition_blend_divide_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Divide

Divides the background image by the foreground image using division blending.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_divide_with_ok_lab(foreground, background, foreground_transform) -> Graph:
392def composition_blend_divide_with_ok_lab(foreground, background, foreground_transform) -> Graph:
393    """Composition Blend Divide with OkLab
394
395    Divides the background image by the foreground image using division blending in OkLab color space.
396
397    Args:
398        foreground: Graph of Composition
399        background: Graph of Composition
400        foreground transform: Graph of Transform2
401        
402
403    Returns:
404        Graph: A graph node producing a Composition.
405    """
406    foreground_parsed = parse_graph(foreground)
407    background_parsed = parse_graph(background)
408    foreground_transform_parsed = parse_graph(foreground_transform)
409    return composition_blend_divide_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Divide with OkLab

Divides the background image by the foreground image using division blending in OkLab color space.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_max(foreground, background, foreground_transform) -> Graph:
411def composition_blend_max(foreground, background, foreground_transform) -> Graph:
412    """Composition Blend Max
413
414    Blends the foreground and background images using maximum value blending.
415
416    Args:
417        foreground: Graph of Composition
418        background: Graph of Composition
419        foreground transform: Graph of Transform2
420        
421
422    Returns:
423        Graph: A graph node producing a Composition.
424    """
425    foreground_parsed = parse_graph(foreground)
426    background_parsed = parse_graph(background)
427    foreground_transform_parsed = parse_graph(foreground_transform)
428    return composition_blend_max_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Max

Blends the foreground and background images using maximum value blending.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_max_with_ok_lab(foreground, background, foreground_transform) -> Graph:
430def composition_blend_max_with_ok_lab(foreground, background, foreground_transform) -> Graph:
431    """Composition Blend Max with OkLab
432
433    Blends the foreground and background images using maximum value blending in OkLab color space.
434
435    Args:
436        foreground: Graph of Composition
437        background: Graph of Composition
438        foreground transform: Graph of Transform2
439        
440
441    Returns:
442        Graph: A graph node producing a Composition.
443    """
444    foreground_parsed = parse_graph(foreground)
445    background_parsed = parse_graph(background)
446    foreground_transform_parsed = parse_graph(foreground_transform)
447    return composition_blend_max_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Max with OkLab

Blends the foreground and background images using maximum value blending in OkLab color space.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_min(foreground, background, foreground_transform) -> Graph:
449def composition_blend_min(foreground, background, foreground_transform) -> Graph:
450    """Composition Blend Min
451
452    Blends the foreground and background images using minimum blending, taking the minimum value for each pixel.
453
454    Args:
455        foreground: Graph of Composition
456        background: Graph of Composition
457        foreground transform: Graph of Transform2
458        
459
460    Returns:
461        Graph: A graph node producing a Composition.
462    """
463    foreground_parsed = parse_graph(foreground)
464    background_parsed = parse_graph(background)
465    foreground_transform_parsed = parse_graph(foreground_transform)
466    return composition_blend_min_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Min

Blends the foreground and background images using minimum blending, taking the minimum value for each pixel.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_min_with_ok_lab(foreground, background, foreground_transform) -> Graph:
468def composition_blend_min_with_ok_lab(foreground, background, foreground_transform) -> Graph:
469    """Composition Blend Min with OkLab
470
471    Blends the foreground and background images using minimum blending in OkLab color space, taking the minimum value for each pixel.
472
473    Args:
474        foreground: Graph of Composition
475        background: Graph of Composition
476        foreground transform: Graph of Transform2
477        
478
479    Returns:
480        Graph: A graph node producing a Composition.
481    """
482    foreground_parsed = parse_graph(foreground)
483    background_parsed = parse_graph(background)
484    foreground_transform_parsed = parse_graph(foreground_transform)
485    return composition_blend_min_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Min with OkLab

Blends the foreground and background images using minimum blending in OkLab color space, taking the minimum value for each pixel.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_multiply(foreground, background, foreground_transform) -> Graph:
487def composition_blend_multiply(foreground, background, foreground_transform) -> Graph:
488    """Composition Blend Multiply
489
490    Multiplies the foreground and background images together using multiply blending.
491
492    Args:
493        foreground: Graph of Composition
494        background: Graph of Composition
495        foreground transform: Graph of Transform2
496        
497
498    Returns:
499        Graph: A graph node producing a Composition.
500    """
501    foreground_parsed = parse_graph(foreground)
502    background_parsed = parse_graph(background)
503    foreground_transform_parsed = parse_graph(foreground_transform)
504    return composition_blend_multiply_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Multiply

Multiplies the foreground and background images together using multiply blending.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_multiply_with_ok_lab(foreground, background, foreground_transform) -> Graph:
506def composition_blend_multiply_with_ok_lab(foreground, background, foreground_transform) -> Graph:
507    """Composition Blend Multiply with OkLab
508
509    Multiplies the foreground and background images together using multiply blending in OkLab color space.
510
511    Args:
512        foreground: Graph of Composition
513        background: Graph of Composition
514        foreground transform: Graph of Transform2
515        
516
517    Returns:
518        Graph: A graph node producing a Composition.
519    """
520    foreground_parsed = parse_graph(foreground)
521    background_parsed = parse_graph(background)
522    foreground_transform_parsed = parse_graph(foreground_transform)
523    return composition_blend_multiply_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Multiply with OkLab

Multiplies the foreground and background images together using multiply blending in OkLab color space.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_subtract(foreground, background, foreground_transform) -> Graph:
525def composition_blend_subtract(foreground, background, foreground_transform) -> Graph:
526    """Composition Blend Subtract
527
528    Subtracts the foreground image from the background image using subtractive blending.
529
530    Args:
531        foreground: Graph of Composition
532        background: Graph of Composition
533        foreground transform: Graph of Transform2
534        
535
536    Returns:
537        Graph: A graph node producing a Composition.
538    """
539    foreground_parsed = parse_graph(foreground)
540    background_parsed = parse_graph(background)
541    foreground_transform_parsed = parse_graph(foreground_transform)
542    return composition_blend_subtract_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Subtract

Subtracts the foreground image from the background image using subtractive blending.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_subtract_with_ok_lab(foreground, background, foreground_transform) -> Graph:
544def composition_blend_subtract_with_ok_lab(foreground, background, foreground_transform) -> Graph:
545    """Composition Blend Subtract with OkLab
546
547    Subtracts the foreground image from the background image using subtractive blending in OkLab color space.
548
549    Args:
550        foreground: Graph of Composition
551        background: Graph of Composition
552        foreground transform: Graph of Transform2
553        
554
555    Returns:
556        Graph: A graph node producing a Composition.
557    """
558    foreground_parsed = parse_graph(foreground)
559    background_parsed = parse_graph(background)
560    foreground_transform_parsed = parse_graph(foreground_transform)
561    return composition_blend_subtract_with_ok_lab_internal(foreground_parsed, background_parsed, foreground_transform_parsed)

Composition Blend Subtract with OkLab

Subtracts the foreground image from the background image using subtractive blending in OkLab color space.

Args: foreground: Graph of Composition background: Graph of Composition foreground transform: Graph of Transform2

Returns: Graph: A graph node producing a Composition.

def composition_blend_with_mask(foreground, background, mask) -> Graph:
563def composition_blend_with_mask(foreground, background, mask) -> Graph:
564    """Composition Blend with Mask
565
566    Given a mask. Blends between the foreground and background using the r component of the mask. 1 is foreground. 0 is background.
567
568    Args:
569        foreground: Graph of Composition
570        background: Graph of Composition
571        mask: Graph of Composition
572        
573
574    Returns:
575        Graph: A graph node producing a Composition.
576    """
577    foreground_parsed = parse_graph(foreground)
578    background_parsed = parse_graph(background)
579    mask_parsed = parse_graph(mask)
580    return composition_blend_with_mask_internal(foreground_parsed, background_parsed, mask_parsed)

Composition Blend with Mask

Given a mask. Blends between the foreground and background using the r component of the mask. 1 is foreground. 0 is background.

Args: foreground: Graph of Composition background: Graph of Composition mask: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_box_blur(composition, dimension) -> Graph:
582def composition_box_blur(composition, dimension) -> Graph:
583    """Composition Box Blur
584
585    Applies a box blur to an image. Dimension is the size. 1 corresponding to 3x3, 2 5x5 and so on.
586
587    Args:
588        composition: Graph of Composition
589        dimension: Graph of Int
590        
591
592    Returns:
593        Graph: A graph node producing a Composition.
594    """
595    composition_parsed = parse_graph(composition)
596    dimension_parsed = parse_int_graph(dimension)
597    return composition_box_blur_internal(composition_parsed, dimension_parsed)

Composition Box Blur

Applies a box blur to an image. Dimension is the size. 1 corresponding to 3x3, 2 5x5 and so on.

Args: composition: Graph of Composition dimension: Graph of Int

Returns: Graph: A graph node producing a Composition.

def composition_box_blur_with_ok_lab(composition, dimension) -> Graph:
599def composition_box_blur_with_ok_lab(composition, dimension) -> Graph:
600    """Composition Box Blur with OkLab
601
602    Applies a box blur to an image in OkLab color space. Dimension is the size. 1 corresponding to 3x3, 2 5x5 and so on.
603
604    Args:
605        composition: Graph of Composition
606        dimension: Graph of Int
607        
608
609    Returns:
610        Graph: A graph node producing a Composition.
611    """
612    composition_parsed = parse_graph(composition)
613    dimension_parsed = parse_int_graph(dimension)
614    return composition_box_blur_with_ok_lab_internal(composition_parsed, dimension_parsed)

Composition Box Blur with OkLab

Applies a box blur to an image in OkLab color space. Dimension is the size. 1 corresponding to 3x3, 2 5x5 and so on.

Args: composition: Graph of Composition dimension: Graph of Int

Returns: Graph: A graph node producing a Composition.

def composition_brightness_adjust(composition, scale) -> Graph:
616def composition_brightness_adjust(composition, scale) -> Graph:
617    """Composition Brightness Adjust
618
619    Adjusts the brightness of an image by a given factor. Internally, works by modifying the L component of OkLab by multiplying it by the scale.
620
621    Args:
622        composition: Graph of Composition
623        scale: Graph of Float
624        
625
626    Returns:
627        Graph: A graph node producing a Composition.
628    """
629    composition_parsed = parse_graph(composition)
630    scale_parsed = parse_float_graph(scale)
631    return composition_brightness_adjust_internal(composition_parsed, scale_parsed)

Composition Brightness Adjust

Adjusts the brightness of an image by a given factor. Internally, works by modifying the L component of OkLab by multiplying it by the scale.

Args: composition: Graph of Composition scale: Graph of Float

Returns: Graph: A graph node producing a Composition.

def composition_chroma_offset(composition, offset) -> Graph:
633def composition_chroma_offset(composition, offset) -> Graph:
634    """Composition Chroma Offset
635
636    Applies a chroma offset to an image. This is done by modifying the a and b components of OkLab. For the vector, X applies to a, Y to to b.
637
638    Args:
639        composition: Graph of Composition
640        offset: Graph of Vector2f
641        
642
643    Returns:
644        Graph: A graph node producing a Composition.
645    """
646    composition_parsed = parse_graph(composition)
647    offset_parsed = parse_graph(offset)
648    return composition_chroma_offset_internal(composition_parsed, offset_parsed)

Composition Chroma Offset

Applies a chroma offset to an image. This is done by modifying the a and b components of OkLab. For the vector, X applies to a, Y to to b.

Args: composition: Graph of Composition offset: Graph of Vector2f

Returns: Graph: A graph node producing a Composition.

def composition_color_convert(composition, color_profile) -> Graph:
650def composition_color_convert(composition, color_profile) -> Graph:
651    """Composition Color Convert
652
653    Converts a Composition from one color space to another.
654
655    Args:
656        composition: Graph of Composition
657        color profile: Graph of ColorProfile
658        
659
660    Returns:
661        Graph: A graph node producing a Composition.
662    """
663    composition_parsed = parse_graph(composition)
664    color_profile_parsed = parse_graph(color_profile)
665    return composition_color_convert_internal(composition_parsed, color_profile_parsed)

Composition Color Convert

Converts a Composition from one color space to another.

Args: composition: Graph of Composition color profile: Graph of ColorProfile

Returns: Graph: A graph node producing a Composition.

def composition_color_invert(composition) -> Graph:
667def composition_color_invert(composition) -> Graph:
668    """Composition Color Invert
669
670    Applies a color invert operation to a Composition. Taking 1 and subtracting each RGB operation against it.
671
672    Args:
673        composition: Graph of Composition
674        
675
676    Returns:
677        Graph: A graph node producing a Composition.
678    """
679    composition_parsed = parse_graph(composition)
680    return composition_color_invert_internal(composition_parsed)

Composition Color Invert

Applies a color invert operation to a Composition. Taking 1 and subtracting each RGB operation against it.

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_color_profile(composition) -> Graph:
682def composition_color_profile(composition) -> Graph:
683    """Composition Color Profile
684
685    Gets the color profile associated with a Composition
686
687    Args:
688        composition: Graph of Composition
689        
690
691    Returns:
692        Graph: A graph node producing a ColorProfile.
693    """
694    composition_parsed = parse_graph(composition)
695    return composition_color_profile_internal(composition_parsed)

Composition Color Profile

Gets the color profile associated with a Composition

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a ColorProfile.

def composition_color_rect(color, color_profile, size) -> Graph:
697def composition_color_rect(color, color_profile, size) -> Graph:
698    """Composition Color Rect
699
700    Given a color and it's color proile. Creates a rectangle Composition of that color.
701
702    Args:
703        color: Graph of RGBAColor
704        color profile: Graph of ColorProfile
705        size: Graph of Vector2i
706        
707
708    Returns:
709        Graph: A graph node producing a Composition.
710    """
711    color_parsed = parse_graph(color)
712    color_profile_parsed = parse_graph(color_profile)
713    size_parsed = parse_graph(size)
714    return composition_color_rect_internal(color_parsed, color_profile_parsed, size_parsed)

Composition Color Rect

Given a color and it's color proile. Creates a rectangle Composition of that color.

Args: color: Graph of RGBAColor color profile: Graph of ColorProfile size: Graph of Vector2i

Returns: Graph: A graph node producing a Composition.

def composition_color_threshold(composition, threshold) -> Graph:
716def composition_color_threshold(composition, threshold) -> Graph:
717    """Composition Color Threshold
718
719    Applies a color threshold to a Composition
720
721    Args:
722        composition: Graph of Composition
723        threshold: Graph of Float
724        
725
726    Returns:
727        Graph: A graph node producing a Composition.
728    """
729    composition_parsed = parse_graph(composition)
730    threshold_parsed = parse_float_graph(threshold)
731    return composition_color_threshold_internal(composition_parsed, threshold_parsed)

Composition Color Threshold

Applies a color threshold to a Composition

Args: composition: Graph of Composition threshold: Graph of Float

Returns: Graph: A graph node producing a Composition.

def composition_convolution(composition, kernel, kernel_width, kernel_height) -> Graph:
733def composition_convolution(composition, kernel, kernel_width, kernel_height) -> Graph:
734    """Composition Convolution
735
736    Performs a convolution on an composition
737
738    Args:
739        The image to perform the convolution on: Graph of Composition
740        kernel: Graph of FloatList
741        kernel width: Graph of Int
742        kernel height: Graph of Int
743        
744
745    Returns:
746        Graph: A graph node producing a Composition.
747    """
748    composition_parsed = parse_graph(composition)
749    kernel_parsed = parse_graph(kernel)
750    kernel_width_parsed = parse_int_graph(kernel_width)
751    kernel_height_parsed = parse_int_graph(kernel_height)
752    return composition_convolution_internal(composition_parsed, kernel_parsed, kernel_width_parsed, kernel_height_parsed)

Composition Convolution

Performs a convolution on an composition

Args: The image to perform the convolution on: Graph of Composition kernel: Graph of FloatList kernel width: Graph of Int kernel height: Graph of Int

Returns: Graph: A graph node producing a Composition.

def composition_crop(composition, rect) -> Graph:
754def composition_crop(composition, rect) -> Graph:
755    """Composition Crop
756
757    Applies a crop to a Composition
758
759    Args:
760        composition: Graph of Composition
761        rect: Graph of Bounds2i
762        
763
764    Returns:
765        Graph: A graph node producing a Composition.
766    """
767    composition_parsed = parse_graph(composition)
768    rect_parsed = parse_graph(rect)
769    return composition_crop_internal(composition_parsed, rect_parsed)

Composition Crop

Applies a crop to a Composition

Args: composition: Graph of Composition rect: Graph of Bounds2i

Returns: Graph: A graph node producing a Composition.

def composition_custom_transformer_shader( composition, function_body, helpers, input_color_profile, output_color_profile, inputs, needs_sample_capability) -> Graph:
771def composition_custom_transformer_shader(composition, function_body, helpers, input_color_profile, output_color_profile, inputs, needs_sample_capability) -> Graph:
772    """Composition Custom Transformer Shader
773
774    Given an input, runs a custom defined shader over that input.
775
776    Args:
777        composition: Graph of Composition
778        function body: Graph of String
779        helpers: Graph of String
780        input color profile: Graph of ColorProfile
781        output color profile: Graph of ColorProfile
782        inputs: Graph of Dictionary
783        needs sample capability: Graph of Bool
784        
785
786    Returns:
787        Graph: A graph node producing a Composition.
788    """
789    composition_parsed = parse_graph(composition)
790    function_body_parsed = parse_string_graph(function_body)
791    helpers_parsed = parse_string_graph(helpers)
792    input_color_profile_parsed = parse_graph(input_color_profile)
793    output_color_profile_parsed = parse_graph(output_color_profile)
794    inputs_parsed = parse_graph(inputs)
795    needs_sample_capability_parsed = parse_bool_graph(needs_sample_capability)
796    return composition_custom_transformer_shader_internal(composition_parsed, function_body_parsed, helpers_parsed, input_color_profile_parsed, output_color_profile_parsed, inputs_parsed, needs_sample_capability_parsed)

Composition Custom Transformer Shader

Given an input, runs a custom defined shader over that input.

Args: composition: Graph of Composition function body: Graph of String helpers: Graph of String input color profile: Graph of ColorProfile output color profile: Graph of ColorProfile inputs: Graph of Dictionary needs sample capability: Graph of Bool

Returns: Graph: A graph node producing a Composition.

def composition_face_landmarks(composition) -> Graph:
798def composition_face_landmarks(composition) -> Graph:
799    """Composition Face Landmarks
800
801    Given an input image, returns the 468 3D face landmarks.
802
803    Args:
804        composition: Graph of Composition
805        
806
807    Returns:
808        Graph: A graph node producing a Point3fList.
809    """
810    composition_parsed = parse_graph(composition)
811    return composition_face_landmarks_internal(composition_parsed)

Composition Face Landmarks

Given an input image, returns the 468 3D face landmarks.

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Point3fList.

def composition_flip_horizontal(composition) -> Graph:
813def composition_flip_horizontal(composition) -> Graph:
814    """Composition Flip Horizontal
815
816    Flips the image along the horizontal axis
817
818    Args:
819        composition: Graph of Composition
820        
821
822    Returns:
823        Graph: A graph node producing a Composition.
824    """
825    composition_parsed = parse_graph(composition)
826    return composition_flip_horizontal_internal(composition_parsed)

Composition Flip Horizontal

Flips the image along the horizontal axis

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_flip_vertical(composition) -> Graph:
828def composition_flip_vertical(composition) -> Graph:
829    """Composition Flip Vertical
830
831    Flips the image vertically
832
833    Args:
834        composition: Graph of Composition
835        
836
837    Returns:
838        Graph: A graph node producing a Composition.
839    """
840    composition_parsed = parse_graph(composition)
841    return composition_flip_vertical_internal(composition_parsed)

Composition Flip Vertical

Flips the image vertically

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_from_image(image) -> Graph:
843def composition_from_image(image) -> Graph:
844    """Composition from Image
845
846    Creates an composition out of an image
847
848    Args:
849        image: Graph of Image
850        
851
852    Returns:
853        Graph: A graph node producing a Composition.
854    """
855    image_parsed = parse_graph(image)
856    return composition_from_image_internal(image_parsed)

Composition from Image

Creates an composition out of an image

Args: image: Graph of Image

Returns: Graph: A graph node producing a Composition.

def composition_gaussian_blur(composition, sigma) -> Graph:
858def composition_gaussian_blur(composition, sigma) -> Graph:
859    """Composition Gaussian Blur
860
861    Applies a gaussian blur to an image. Sigma controls the blur intensity.
862
863    Args:
864        composition: Graph of Composition
865        sigma: Graph of Float
866        
867
868    Returns:
869        Graph: A graph node producing a Composition.
870    """
871    composition_parsed = parse_graph(composition)
872    sigma_parsed = parse_float_graph(sigma)
873    return composition_gaussian_blur_internal(composition_parsed, sigma_parsed)

Composition Gaussian Blur

Applies a gaussian blur to an image. Sigma controls the blur intensity.

Args: composition: Graph of Composition sigma: Graph of Float

Returns: Graph: A graph node producing a Composition.

def composition_gaussian_blur_with_ok_lab(composition, sigma) -> Graph:
875def composition_gaussian_blur_with_ok_lab(composition, sigma) -> Graph:
876    """Composition Gaussian Blur with OkLab
877
878    Applies a gaussian blur to an image in OkLab color space. Sigma controls the blur intensity.
879
880    Args:
881        composition: Graph of Composition
882        sigma: Graph of Float
883        
884
885    Returns:
886        Graph: A graph node producing a Composition.
887    """
888    composition_parsed = parse_graph(composition)
889    sigma_parsed = parse_float_graph(sigma)
890    return composition_gaussian_blur_with_ok_lab_internal(composition_parsed, sigma_parsed)

Composition Gaussian Blur with OkLab

Applies a gaussian blur to an image in OkLab color space. Sigma controls the blur intensity.

Args: composition: Graph of Composition sigma: Graph of Float

Returns: Graph: A graph node producing a Composition.

def composition_grayscale(composition) -> Graph:
892def composition_grayscale(composition) -> Graph:
893    """Composition Grayscale
894
895    Applies grayscale to a Composition
896
897    Args:
898        composition: Graph of Composition
899        
900
901    Returns:
902        Graph: A graph node producing a Composition.
903    """
904    composition_parsed = parse_graph(composition)
905    return composition_grayscale_internal(composition_parsed)

Composition Grayscale

Applies grayscale to a Composition

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_l_curve(composition, l_curve) -> Graph:
907def composition_l_curve(composition, l_curve) -> Graph:
908    """Composition Lightness Curve
909
910    Applies a curve to the L component in an OkLab color. Adjusting the lightness of the image.
911
912    Args:
913        composition: Graph of Composition
914        l curve: Graph of Curve
915        
916
917    Returns:
918        Graph: A graph node producing a Composition.
919    """
920    composition_parsed = parse_graph(composition)
921    l_curve_parsed = parse_graph(l_curve)
922    return composition_l_curve_internal(composition_parsed, l_curve_parsed)

Composition Lightness Curve

Applies a curve to the L component in an OkLab color. Adjusting the lightness of the image.

Args: composition: Graph of Composition l curve: Graph of Curve

Returns: Graph: A graph node producing a Composition.

def composition_linear_transform( composition, entry_0_0, entry_0_1, entry_0_2, entry_0_3, entry_1_0, entry_1_1, entry_1_2, entry_1_3, entry_2_0, entry_2_1, entry_2_2, entry_2_3, entry_3_0, entry_3_1, entry_3_2, entry_3_3) -> Graph:
924def composition_linear_transform(composition, entry_0_0, entry_0_1, entry_0_2, entry_0_3, entry_1_0, entry_1_1, entry_1_2, entry_1_3, entry_2_0, entry_2_1, entry_2_2, entry_2_3, entry_3_0, entry_3_1, entry_3_2, entry_3_3) -> Graph:
925    """Composition RGBA Linear Transform
926
927    Applies a linear transform to a Composition's RGBA values. Before application, will convert to a linear version of the color profile and will convert to an RGB profile if needed.
928
929    Args:
930        composition: Graph of Composition
931        entry 0,0: Graph of Float
932        entry 0,1: Graph of Float
933        entry 0,2: Graph of Float
934        entry 0,3: Graph of Float
935        entry 1,0: Graph of Float
936        entry 1,1: Graph of Float
937        entry 1,2: Graph of Float
938        entry 1,3: Graph of Float
939        entry 2,0: Graph of Float
940        entry 2,1: Graph of Float
941        entry 2,2: Graph of Float
942        entry 2,3: Graph of Float
943        entry 3,0: Graph of Float
944        entry 3,1: Graph of Float
945        entry 3,2: Graph of Float
946        entry 3,3: Graph of Float
947        
948
949    Returns:
950        Graph: A graph node producing a Composition.
951    """
952    composition_parsed = parse_graph(composition)
953    entry_0_0_parsed = parse_float_graph(entry_0_0)
954    entry_0_1_parsed = parse_float_graph(entry_0_1)
955    entry_0_2_parsed = parse_float_graph(entry_0_2)
956    entry_0_3_parsed = parse_float_graph(entry_0_3)
957    entry_1_0_parsed = parse_float_graph(entry_1_0)
958    entry_1_1_parsed = parse_float_graph(entry_1_1)
959    entry_1_2_parsed = parse_float_graph(entry_1_2)
960    entry_1_3_parsed = parse_float_graph(entry_1_3)
961    entry_2_0_parsed = parse_float_graph(entry_2_0)
962    entry_2_1_parsed = parse_float_graph(entry_2_1)
963    entry_2_2_parsed = parse_float_graph(entry_2_2)
964    entry_2_3_parsed = parse_float_graph(entry_2_3)
965    entry_3_0_parsed = parse_float_graph(entry_3_0)
966    entry_3_1_parsed = parse_float_graph(entry_3_1)
967    entry_3_2_parsed = parse_float_graph(entry_3_2)
968    entry_3_3_parsed = parse_float_graph(entry_3_3)
969    return composition_linear_transform_internal(composition_parsed, entry_0_0_parsed, entry_0_1_parsed, entry_0_2_parsed, entry_0_3_parsed, entry_1_0_parsed, entry_1_1_parsed, entry_1_2_parsed, entry_1_3_parsed, entry_2_0_parsed, entry_2_1_parsed, entry_2_2_parsed, entry_2_3_parsed, entry_3_0_parsed, entry_3_1_parsed, entry_3_2_parsed, entry_3_3_parsed)

Composition RGBA Linear Transform

Applies a linear transform to a Composition's RGBA values. Before application, will convert to a linear version of the color profile and will convert to an RGB profile if needed.

Args: composition: Graph of Composition entry 0,0: Graph of Float entry 0,1: Graph of Float entry 0,2: Graph of Float entry 0,3: Graph of Float entry 1,0: Graph of Float entry 1,1: Graph of Float entry 1,2: Graph of Float entry 1,3: Graph of Float entry 2,0: Graph of Float entry 2,1: Graph of Float entry 2,2: Graph of Float entry 2,3: Graph of Float entry 3,0: Graph of Float entry 3,1: Graph of Float entry 3,2: Graph of Float entry 3,3: Graph of Float

Returns: Graph: A graph node producing a Composition.

def composition_monet_women_with_parasol() -> Graph:
971def composition_monet_women_with_parasol() -> Graph:
972    """Monet's Women with a Parasol
973
974    Creates a composition from Monet's "Women with a Parasol" painting. Used frequently as a test asset.
975
976    Returns:
977        Graph: A graph node producing a Composition.
978    """
979    return composition_monet_women_with_parasol_internal()

Monet's Women with a Parasol

Creates a composition from Monet's "Women with a Parasol" painting. Used frequently as a test asset.

Returns: Graph: A graph node producing a Composition.

def composition_morphological_max(composition, dimension) -> Graph:
981def composition_morphological_max(composition, dimension) -> Graph:
982    """Composition Morphological Max
983
984    Apples a morphological max operation.
985
986    Args:
987        composition: Graph of Composition
988        dimension: Graph of Int
989        
990
991    Returns:
992        Graph: A graph node producing a Composition.
993    """
994    composition_parsed = parse_graph(composition)
995    dimension_parsed = parse_int_graph(dimension)
996    return composition_morphological_max_internal(composition_parsed, dimension_parsed)

Composition Morphological Max

Apples a morphological max operation.

Args: composition: Graph of Composition dimension: Graph of Int

Returns: Graph: A graph node producing a Composition.

def composition_morphological_min(composition, dimension) -> Graph:
 998def composition_morphological_min(composition, dimension) -> Graph:
 999    """Composition Morphological Min
1000
1001    Apples a morphological min operation.
1002
1003    Args:
1004        composition: Graph of Composition
1005        dimension: Graph of Int
1006        
1007
1008    Returns:
1009        Graph: A graph node producing a Composition.
1010    """
1011    composition_parsed = parse_graph(composition)
1012    dimension_parsed = parse_int_graph(dimension)
1013    return composition_morphological_min_internal(composition_parsed, dimension_parsed)

Composition Morphological Min

Apples a morphological min operation.

Args: composition: Graph of Composition dimension: Graph of Int

Returns: Graph: A graph node producing a Composition.

def composition_painter(painter) -> Graph:
1015def composition_painter(painter) -> Graph:
1016    """Composition Painter
1017
1018    Creates a composition from a painter.
1019
1020    Args:
1021        painter: Graph of Painter
1022        
1023
1024    Returns:
1025        Graph: A graph node producing a Composition.
1026    """
1027    painter_parsed = parse_graph(painter)
1028    return composition_painter_internal(painter_parsed)

Composition Painter

Creates a composition from a painter.

Args: painter: Graph of Painter

Returns: Graph: A graph node producing a Composition.

def composition_passthrough(value) -> Graph:
1030def composition_passthrough(value) -> Graph:
1031    """Composition Passthrough
1032
1033    Responds with the value provided. Doing nothing to it.
1034
1035    Args:
1036        value: Graph of Composition
1037        
1038
1039    Returns:
1040        Graph: A graph node producing a Composition.
1041    """
1042    value_parsed = parse_graph(value)
1043    return composition_passthrough_internal(value_parsed)

Composition Passthrough

Responds with the value provided. Doing nothing to it.

Args: value: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_perceptual_difference(composition, color) -> Graph:
1045def composition_perceptual_difference(composition, color) -> Graph:
1046    """Composition Perceptual Difference
1047
1048    Calculates the difference for each pixel to the OkLab color specified. Each r, g, b and a component in the output is the difference.
1049
1050    Args:
1051        composition: Graph of Composition
1052        color: Graph of OkLabColor
1053        
1054
1055    Returns:
1056        Graph: A graph node producing a Composition.
1057    """
1058    composition_parsed = parse_graph(composition)
1059    color_parsed = parse_graph(color)
1060    return composition_perceptual_difference_internal(composition_parsed, color_parsed)

Composition Perceptual Difference

Calculates the difference for each pixel to the OkLab color specified. Each r, g, b and a component in the output is the difference.

Args: composition: Graph of Composition color: Graph of OkLabColor

Returns: Graph: A graph node producing a Composition.

def composition_r_g_b_curve(composition, r_curve, g_curve, b_curve) -> Graph:
1062def composition_r_g_b_curve(composition, r_curve, g_curve, b_curve) -> Graph:
1063    """Composition RGB Curve
1064
1065    Applies a curve to the R, G, and B components
1066
1067    Args:
1068        composition: Graph of Composition
1069        r curve: Graph of Curve
1070        g curve: Graph of Curve
1071        b curve: Graph of Curve
1072        
1073
1074    Returns:
1075        Graph: A graph node producing a Composition.
1076    """
1077    composition_parsed = parse_graph(composition)
1078    r_curve_parsed = parse_graph(r_curve)
1079    g_curve_parsed = parse_graph(g_curve)
1080    b_curve_parsed = parse_graph(b_curve)
1081    return composition_r_g_b_curve_internal(composition_parsed, r_curve_parsed, g_curve_parsed, b_curve_parsed)

Composition RGB Curve

Applies a curve to the R, G, and B components

Args: composition: Graph of Composition r curve: Graph of Curve g curve: Graph of Curve b curve: Graph of Curve

Returns: Graph: A graph node producing a Composition.

def composition_render_to_image(composition) -> Graph:
1083def composition_render_to_image(composition) -> Graph:
1084    """Composition Render to Image
1085
1086    Renders a Composition to an Image
1087
1088    Args:
1089        composition: Graph of Composition
1090        
1091
1092    Returns:
1093        Graph: A graph node producing a Image.
1094    """
1095    composition_parsed = parse_graph(composition)
1096    return composition_render_to_image_internal(composition_parsed)

Composition Render to Image

Renders a Composition to an Image

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Image.

def composition_rotate180(composition) -> Graph:
1098def composition_rotate180(composition) -> Graph:
1099    """Composition Rotate 180
1100
1101    Rotates the image 180 degrees
1102
1103    Args:
1104        composition: Graph of Composition
1105        
1106
1107    Returns:
1108        Graph: A graph node producing a Composition.
1109    """
1110    composition_parsed = parse_graph(composition)
1111    return composition_rotate180_internal(composition_parsed)

Composition Rotate 180

Rotates the image 180 degrees

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_rotate90_clockwise(composition) -> Graph:
1113def composition_rotate90_clockwise(composition) -> Graph:
1114    """Composition Rotate 90 Clockwise
1115
1116    Rotates the image 90 degrees clockwise
1117
1118    Args:
1119        composition: Graph of Composition
1120        
1121
1122    Returns:
1123        Graph: A graph node producing a Composition.
1124    """
1125    composition_parsed = parse_graph(composition)
1126    return composition_rotate90_clockwise_internal(composition_parsed)

Composition Rotate 90 Clockwise

Rotates the image 90 degrees clockwise

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_rotate90_counter_clockwise(composition) -> Graph:
1128def composition_rotate90_counter_clockwise(composition) -> Graph:
1129    """Composition Rotate 90 Counter Clockwise
1130
1131    Rotates the image 90 degrees counter-clockwise
1132
1133    Args:
1134        composition: Graph of Composition
1135        
1136
1137    Returns:
1138        Graph: A graph node producing a Composition.
1139    """
1140    composition_parsed = parse_graph(composition)
1141    return composition_rotate90_counter_clockwise_internal(composition_parsed)

Composition Rotate 90 Counter Clockwise

Rotates the image 90 degrees counter-clockwise

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_saturation_adjust(composition, scale) -> Graph:
1143def composition_saturation_adjust(composition, scale) -> Graph:
1144    """Composition Saturation Adjust
1145
1146    Adjusts the saturation of an image by a given factor. Internally, scales the chroma components in OkLab color space.
1147
1148    Args:
1149        composition: Graph of Composition
1150        scale: Graph of Float
1151        
1152
1153    Returns:
1154        Graph: A graph node producing a Composition.
1155    """
1156    composition_parsed = parse_graph(composition)
1157    scale_parsed = parse_float_graph(scale)
1158    return composition_saturation_adjust_internal(composition_parsed, scale_parsed)

Composition Saturation Adjust

Adjusts the saturation of an image by a given factor. Internally, scales the chroma components in OkLab color space.

Args: composition: Graph of Composition scale: Graph of Float

Returns: Graph: A graph node producing a Composition.

def composition_scale_nearest_neighbor(composition, size) -> Graph:
1160def composition_scale_nearest_neighbor(composition, size) -> Graph:
1161    """Composition Scale Nearest Neighbor
1162
1163    Uses the nearest neighbor algorithm to scale an image recipe
1164
1165    Args:
1166        composition: Graph of Composition
1167        size: Graph of Vector2i
1168        
1169
1170    Returns:
1171        Graph: A graph node producing a Composition.
1172    """
1173    composition_parsed = parse_graph(composition)
1174    size_parsed = parse_graph(size)
1175    return composition_scale_nearest_neighbor_internal(composition_parsed, size_parsed)

Composition Scale Nearest Neighbor

Uses the nearest neighbor algorithm to scale an image recipe

Args: composition: Graph of Composition size: Graph of Vector2i

Returns: Graph: A graph node producing a Composition.

def composition_segment_facial_skin(composition) -> Graph:
1177def composition_segment_facial_skin(composition) -> Graph:
1178    """Composition Segment Facial Skin
1179
1180    Given an input image. Returns a mask that segments out the facial skin in the image.
1181
1182    Args:
1183        composition: Graph of Composition
1184        
1185
1186    Returns:
1187        Graph: A graph node producing a Composition.
1188    """
1189    composition_parsed = parse_graph(composition)
1190    return composition_segment_facial_skin_internal(composition_parsed)

Composition Segment Facial Skin

Given an input image. Returns a mask that segments out the facial skin in the image.

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_segment_mouth_lips_eyes_eyebrows(composition) -> Graph:
1192def composition_segment_mouth_lips_eyes_eyebrows(composition) -> Graph:
1193    """Composition Segment Mouth Lips Eyes Eyebrows
1194
1195    Given an input image, returns a mask (all white) of the mouth, lips, eyes, and eyebrows area.
1196
1197    Args:
1198        composition: Graph of Composition
1199        
1200
1201    Returns:
1202        Graph: A graph node producing a Composition.
1203    """
1204    composition_parsed = parse_graph(composition)
1205    return composition_segment_mouth_lips_eyes_eyebrows_internal(composition_parsed)

Composition Segment Mouth Lips Eyes Eyebrows

Given an input image, returns a mask (all white) of the mouth, lips, eyes, and eyebrows area.

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_segment_person(composition) -> Graph:
1207def composition_segment_person(composition) -> Graph:
1208    """Composition Segment Person
1209
1210    Given an input image. Returns a mask that segments out the person in the image.
1211
1212    Args:
1213        composition: Graph of Composition
1214        
1215
1216    Returns:
1217        Graph: A graph node producing a Composition.
1218    """
1219    composition_parsed = parse_graph(composition)
1220    return composition_segment_person_internal(composition_parsed)

Composition Segment Person

Given an input image. Returns a mask that segments out the person in the image.

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_segment_under_right_eye(composition) -> Graph:
1222def composition_segment_under_right_eye(composition) -> Graph:
1223    """Composition Segment Under Right Eye
1224
1225    Given an input image, returns a mask (all white) of the area under the right eye.
1226
1227    Args:
1228        composition: Graph of Composition
1229        
1230
1231    Returns:
1232        Graph: A graph node producing a Composition.
1233    """
1234    composition_parsed = parse_graph(composition)
1235    return composition_segment_under_right_eye_internal(composition_parsed)

Composition Segment Under Right Eye

Given an input image, returns a mask (all white) of the area under the right eye.

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_size(composition) -> Graph:
1237def composition_size(composition) -> Graph:
1238    """Composition Size
1239
1240    Gets the resulting size of a Composition
1241
1242    Args:
1243        composition: Graph of Composition
1244        
1245
1246    Returns:
1247        Graph: A graph node producing a Vector2i.
1248    """
1249    composition_parsed = parse_graph(composition)
1250    return composition_size_internal(composition_parsed)

Composition Size

Gets the resulting size of a Composition

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Vector2i.

def composition_sobel_edge_detection(composition) -> Graph:
1252def composition_sobel_edge_detection(composition) -> Graph:
1253    """Composition Sobel Edge Detection
1254
1255    Applies Sobel edge detection to an image.
1256
1257    Args:
1258        composition: Graph of Composition
1259        
1260
1261    Returns:
1262        Graph: A graph node producing a Composition.
1263    """
1264    composition_parsed = parse_graph(composition)
1265    return composition_sobel_edge_detection_internal(composition_parsed)

Composition Sobel Edge Detection

Applies Sobel edge detection to an image.

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a Composition.

def composition_target_white_kelvin(composition, kelvin) -> Graph:
1267def composition_target_white_kelvin(composition, kelvin) -> Graph:
1268    """Composition Target White Kelvin
1269
1270    Sets the image white point to the value specified in Kelvin. The profile connection white point is D50, so you will only see changes as you move away from that.
1271
1272    Args:
1273        composition: Graph of Composition
1274        kelvin: Graph of Float
1275        
1276
1277    Returns:
1278        Graph: A graph node producing a Composition.
1279    """
1280    composition_parsed = parse_graph(composition)
1281    kelvin_parsed = parse_float_graph(kelvin)
1282    return composition_target_white_kelvin_internal(composition_parsed, kelvin_parsed)

Composition Target White Kelvin

Sets the image white point to the value specified in Kelvin. The profile connection white point is D50, so you will only see changes as you move away from that.

Args: composition: Graph of Composition kelvin: Graph of Float

Returns: Graph: A graph node producing a Composition.

def composition_to_ok_lab_hist(composition) -> Graph:
1284def composition_to_ok_lab_hist(composition) -> Graph:
1285    """Composition to OkLab Histogram
1286
1287    Creates an OkLab Histogram from the colors in a Composition.
1288
1289    Args:
1290        composition: Graph of Composition
1291        
1292
1293    Returns:
1294        Graph: A graph node producing a OkLabHist.
1295    """
1296    composition_parsed = parse_graph(composition)
1297    return composition_to_ok_lab_hist_internal(composition_parsed)

Composition to OkLab Histogram

Creates an OkLab Histogram from the colors in a Composition.

Args: composition: Graph of Composition

Returns: Graph: A graph node producing a OkLabHist.

def composition_uniform_lightness(composition, lightness) -> Graph:
1299def composition_uniform_lightness(composition, lightness) -> Graph:
1300    """Composition Uniform Lightness
1301
1302    Sets a uniform lightness to the entire image by using OkLab and setting the lightness to a constant number.
1303
1304    Args:
1305        composition: Graph of Composition
1306        lightness: Graph of Float
1307        
1308
1309    Returns:
1310        Graph: A graph node producing a Composition.
1311    """
1312    composition_parsed = parse_graph(composition)
1313    lightness_parsed = parse_float_graph(lightness)
1314    return composition_uniform_lightness_internal(composition_parsed, lightness_parsed)

Composition Uniform Lightness

Sets a uniform lightness to the entire image by using OkLab and setting the lightness to a constant number.

Args: composition: Graph of Composition lightness: Graph of Float

Returns: Graph: A graph node producing a Composition.

def composition_vignette(composition, radius, softness, strength) -> Graph:
1316def composition_vignette(composition, radius, softness, strength) -> Graph:
1317    """Composition Vignette
1318
1319    darkens the outer edges - radius (0-1, measured relative to the image's smaller dimension) sets how far the bright center extends, Softness (typically 0.05-0.5) controls the width of the fade-out band, and Strength (0–1) defines how dark the edges become at maximum.
1320
1321    Args:
1322        composition: Graph of Composition
1323        radius: Graph of Float
1324        softness: Graph of Float
1325        strength: Graph of Float
1326        
1327
1328    Returns:
1329        Graph: A graph node producing a Composition.
1330    """
1331    composition_parsed = parse_graph(composition)
1332    radius_parsed = parse_float_graph(radius)
1333    softness_parsed = parse_float_graph(softness)
1334    strength_parsed = parse_float_graph(strength)
1335    return composition_vignette_internal(composition_parsed, radius_parsed, softness_parsed, strength_parsed)

Composition Vignette

darkens the outer edges - radius (0-1, measured relative to the image's smaller dimension) sets how far the bright center extends, Softness (typically 0.05-0.5) controls the width of the fade-out band, and Strength (0–1) defines how dark the edges become at maximum.

Args: composition: Graph of Composition radius: Graph of Float softness: Graph of Float strength: Graph of Float

Returns: Graph: A graph node producing a Composition.

def curve_gamma(gamma) -> Graph:
1337def curve_gamma(gamma) -> Graph:
1338    """Curve Gamma
1339
1340    A gamma curve. The gamma parameter corresponding to y=x^gamma.
1341
1342    Args:
1343        gamma: Graph of Float
1344        
1345
1346    Returns:
1347        Graph: A graph node producing a Curve.
1348    """
1349    gamma_parsed = parse_float_graph(gamma)
1350    return curve_gamma_internal(gamma_parsed)

Curve Gamma

A gamma curve. The gamma parameter corresponding to y=x^gamma.

Args: gamma: Graph of Float

Returns: Graph: A graph node producing a Curve.

def curve_identity() -> Graph:
1352def curve_identity() -> Graph:
1353    """Curve Identity
1354
1355    An identity curve, y=x
1356
1357    Returns:
1358        Graph: A graph node producing a Curve.
1359    """
1360    return curve_identity_internal()

Curve Identity

An identity curve, y=x

Returns: Graph: A graph node producing a Curve.

def curve_pivoted_sigmoid(pivot, slope) -> Graph:
1362def curve_pivoted_sigmoid(pivot, slope) -> Graph:
1363    """Curve Pivoted Sigmoid
1364
1365    A pivoted sigmoid contrast curve that anchors at the pivot and smoothly compresses shadows and highlights, with a slope parameter controlling midtone contrast.
1366
1367    Args:
1368        pivot: Graph of Float
1369        slope: Graph of Float
1370        
1371
1372    Returns:
1373        Graph: A graph node producing a Curve.
1374    """
1375    pivot_parsed = parse_float_graph(pivot)
1376    slope_parsed = parse_float_graph(slope)
1377    return curve_pivoted_sigmoid_internal(pivot_parsed, slope_parsed)

Curve Pivoted Sigmoid

A pivoted sigmoid contrast curve that anchors at the pivot and smoothly compresses shadows and highlights, with a slope parameter controlling midtone contrast.

Args: pivot: Graph of Float slope: Graph of Float

Returns: Graph: A graph node producing a Curve.

def curve_s_curve(pivot, slope, toe, shoulder) -> Graph:
1379def curve_s_curve(pivot, slope, toe, shoulder) -> Graph:
1380    """Curve S
1381
1382    An S-curve remaps values by anchoring contrast at a chosen pivot, increasing or decreasing midtone separation via slope, gently flattening the curve near black with toe to compress or lift shadows, and softly flattening near white with shoulder to roll off highlights, while keeping black and white fixed.
1383
1384    Args:
1385        pivot: Graph of Float
1386        slope: Graph of Float
1387        toe: Graph of Float
1388        shoulder: Graph of Float
1389        
1390
1391    Returns:
1392        Graph: A graph node producing a Curve.
1393    """
1394    pivot_parsed = parse_float_graph(pivot)
1395    slope_parsed = parse_float_graph(slope)
1396    toe_parsed = parse_float_graph(toe)
1397    shoulder_parsed = parse_float_graph(shoulder)
1398    return curve_s_curve_internal(pivot_parsed, slope_parsed, toe_parsed, shoulder_parsed)

Curve S

An S-curve remaps values by anchoring contrast at a chosen pivot, increasing or decreasing midtone separation via slope, gently flattening the curve near black with toe to compress or lift shadows, and softly flattening near white with shoulder to roll off highlights, while keeping black and white fixed.

Args: pivot: Graph of Float slope: Graph of Float toe: Graph of Float shoulder: Graph of Float

Returns: Graph: A graph node producing a Curve.

def dictionary_create() -> Graph:
1400def dictionary_create() -> Graph:
1401    """Dictionary Create
1402
1403    Creates a new dictionary
1404
1405    Returns:
1406        Graph: A graph node producing a Dictionary.
1407    """
1408    return dictionary_create_internal()

Dictionary Create

Creates a new dictionary

Returns: Graph: A graph node producing a Dictionary.

def fill_custom(function_body, helpers, inputs) -> Graph:
1410def fill_custom(function_body, helpers, inputs) -> Graph:
1411    """Fill Custom
1412
1413    Creates a fill with a custom shader.
1414
1415    Args:
1416        function body: Graph of String
1417        helpers: Graph of String
1418        inputs: Graph of Dictionary
1419        
1420
1421    Returns:
1422        Graph: A graph node producing a Fill.
1423    """
1424    function_body_parsed = parse_string_graph(function_body)
1425    helpers_parsed = parse_string_graph(helpers)
1426    inputs_parsed = parse_graph(inputs)
1427    return fill_custom_internal(function_body_parsed, helpers_parsed, inputs_parsed)

Fill Custom

Creates a fill with a custom shader.

Args: function body: Graph of String helpers: Graph of String inputs: Graph of Dictionary

Returns: Graph: A graph node producing a Fill.

def fill_solid(color) -> Graph:
1429def fill_solid(color) -> Graph:
1430    """Fill Solid
1431
1432    Creates a fill with a solid color.
1433
1434    Args:
1435        color: Graph of RGBAColor
1436        
1437
1438    Returns:
1439        Graph: A graph node producing a Fill.
1440    """
1441    color_parsed = parse_graph(color)
1442    return fill_solid_internal(color_parsed)

Fill Solid

Creates a fill with a solid color.

Args: color: Graph of RGBAColor

Returns: Graph: A graph node producing a Fill.

def float_add(float1, float2) -> Graph:
1444def float_add(float1, float2) -> Graph:
1445    """Float Add
1446
1447    Adds two floats together.
1448
1449    Args:
1450        float1: Graph of Float
1451        float2: Graph of Float
1452        
1453
1454    Returns:
1455        Graph: A graph node producing a Float.
1456    """
1457    float1_parsed = parse_float_graph(float1)
1458    float2_parsed = parse_float_graph(float2)
1459    return float_add_internal(float1_parsed, float2_parsed)

Float Add

Adds two floats together.

Args: float1: Graph of Float float2: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_add_to_dictionary(dictionary, key, value) -> Graph:
1461def float_add_to_dictionary(dictionary, key, value) -> Graph:
1462    """Float Add To Dictionary
1463
1464    Adds a Float to a Dictionary
1465
1466    Args:
1467        dictionary: Graph of Dictionary
1468        key: Graph of String
1469        value: Graph of Float
1470        
1471
1472    Returns:
1473        Graph: A graph node producing a Dictionary.
1474    """
1475    dictionary_parsed = parse_graph(dictionary)
1476    key_parsed = parse_string_graph(key)
1477    value_parsed = parse_float_graph(value)
1478    return float_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)

Float Add To Dictionary

Adds a Float to a Dictionary

Args: dictionary: Graph of Dictionary key: Graph of String value: Graph of Float

Returns: Graph: A graph node producing a Dictionary.

def float_cos(angle) -> Graph:
1480def float_cos(angle) -> Graph:
1481    """Float Cosine
1482
1483    Computes the cosine of a float (in radians).
1484
1485    Args:
1486        Angle in radians: Graph of Float
1487        
1488
1489    Returns:
1490        Graph: A graph node producing a Float.
1491    """
1492    angle_parsed = parse_float_graph(angle)
1493    return float_cos_internal(angle_parsed)

Float Cosine

Computes the cosine of a float (in radians).

Args: Angle in radians: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_divide(float1, float2) -> Graph:
1495def float_divide(float1, float2) -> Graph:
1496    """Float Divide
1497
1498    Adds two floats together.
1499
1500    Args:
1501        float1: Graph of Float
1502        float2: Graph of Float
1503        
1504
1505    Returns:
1506        Graph: A graph node producing a Float.
1507    """
1508    float1_parsed = parse_float_graph(float1)
1509    float2_parsed = parse_float_graph(float2)
1510    return float_divide_internal(float1_parsed, float2_parsed)

Float Divide

Adds two floats together.

Args: float1: Graph of Float float2: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_if(bool, input_1, input_2) -> Graph:
1512def float_if(bool, input_1, input_2) -> Graph:
1513    """Float If
1514
1515    If the boolean is true returns input 1, otherwise input 2. Type: Float
1516
1517    Args:
1518        bool: Graph of Bool
1519        input 1: Graph of Float
1520        input 2: Graph of Float
1521        
1522
1523    Returns:
1524        Graph: A graph node producing a Float.
1525    """
1526    bool_parsed = parse_bool_graph(bool)
1527    input_1_parsed = parse_float_graph(input_1)
1528    input_2_parsed = parse_float_graph(input_2)
1529    return float_if_internal(bool_parsed, input_1_parsed, input_2_parsed)

Float If

If the boolean is true returns input 1, otherwise input 2. Type: Float

Args: bool: Graph of Bool input 1: Graph of Float input 2: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_lerp(x, float1, float2) -> Graph:
1531def float_lerp(x, float1, float2) -> Graph:
1532    """Float Lerp
1533
1534    Lerps between two floats using the x parameter
1535
1536    Args:
1537        x: Graph of Float
1538        float1: Graph of Float
1539        float2: Graph of Float
1540        
1541
1542    Returns:
1543        Graph: A graph node producing a Float.
1544    """
1545    x_parsed = parse_float_graph(x)
1546    float1_parsed = parse_float_graph(float1)
1547    float2_parsed = parse_float_graph(float2)
1548    return float_lerp_internal(x_parsed, float1_parsed, float2_parsed)

Float Lerp

Lerps between two floats using the x parameter

Args: x: Graph of Float float1: Graph of Float float2: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_max(float1, float2) -> Graph:
1550def float_max(float1, float2) -> Graph:
1551    """Float Max
1552
1553    Returns the maximum float.
1554
1555    Args:
1556        float1: Graph of Float
1557        float2: Graph of Float
1558        
1559
1560    Returns:
1561        Graph: A graph node producing a Float.
1562    """
1563    float1_parsed = parse_float_graph(float1)
1564    float2_parsed = parse_float_graph(float2)
1565    return float_max_internal(float1_parsed, float2_parsed)

Float Max

Returns the maximum float.

Args: float1: Graph of Float float2: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_min(float1, float2) -> Graph:
1567def float_min(float1, float2) -> Graph:
1568    """Float Min
1569
1570    Returns the minimum float.
1571
1572    Args:
1573        float1: Graph of Float
1574        float2: Graph of Float
1575        
1576
1577    Returns:
1578        Graph: A graph node producing a Float.
1579    """
1580    float1_parsed = parse_float_graph(float1)
1581    float2_parsed = parse_float_graph(float2)
1582    return float_min_internal(float1_parsed, float2_parsed)

Float Min

Returns the minimum float.

Args: float1: Graph of Float float2: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_multiply(float1, float2) -> Graph:
1584def float_multiply(float1, float2) -> Graph:
1585    """Float Multiply
1586
1587    Multiplies two floats together.
1588
1589    Args:
1590        float1: Graph of Float
1591        float2: Graph of Float
1592        
1593
1594    Returns:
1595        Graph: A graph node producing a Float.
1596    """
1597    float1_parsed = parse_float_graph(float1)
1598    float2_parsed = parse_float_graph(float2)
1599    return float_multiply_internal(float1_parsed, float2_parsed)

Float Multiply

Multiplies two floats together.

Args: float1: Graph of Float float2: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_passthrough(value) -> Graph:
1601def float_passthrough(value) -> Graph:
1602    """Float Passthrough
1603
1604    Responds with the value provided. Doing nothing to it.
1605
1606    Args:
1607        value: Graph of Float
1608        
1609
1610    Returns:
1611        Graph: A graph node producing a Float.
1612    """
1613    value_parsed = parse_float_graph(value)
1614    return float_passthrough_internal(value_parsed)

Float Passthrough

Responds with the value provided. Doing nothing to it.

Args: value: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_pow(float1, float2) -> Graph:
1616def float_pow(float1, float2) -> Graph:
1617    """Float Power
1618
1619    Raises float 1 to the power of float 2
1620
1621    Args:
1622        float 1: Graph of Float
1623        float 2: Graph of Float
1624        
1625
1626    Returns:
1627        Graph: A graph node producing a Float.
1628    """
1629    float1_parsed = parse_float_graph(float1)
1630    float2_parsed = parse_float_graph(float2)
1631    return float_pow_internal(float1_parsed, float2_parsed)

Float Power

Raises float 1 to the power of float 2

Args: float 1: Graph of Float float 2: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_round_to_int(float) -> Graph:
1633def float_round_to_int(float) -> Graph:
1634    """Float Round to Int
1635
1636    Rounds the float to the nearest int
1637
1638    Args:
1639        float: Graph of Float
1640        
1641
1642    Returns:
1643        Graph: A graph node producing a Int.
1644    """
1645    float_parsed = parse_float_graph(float)
1646    return float_round_to_int_internal(float_parsed)

Float Round to Int

Rounds the float to the nearest int

Args: float: Graph of Float

Returns: Graph: A graph node producing a Int.

def float_sin(angle) -> Graph:
1648def float_sin(angle) -> Graph:
1649    """Float Sine
1650
1651    Computes the sine of a float (in radians).
1652
1653    Args:
1654        Angle in radians: Graph of Float
1655        
1656
1657    Returns:
1658        Graph: A graph node producing a Float.
1659    """
1660    angle_parsed = parse_float_graph(angle)
1661    return float_sin_internal(angle_parsed)

Float Sine

Computes the sine of a float (in radians).

Args: Angle in radians: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_square_root(number) -> Graph:
1663def float_square_root(number) -> Graph:
1664    """Float Square Root
1665
1666    Compares the square root of a number
1667
1668    Args:
1669        Number: Graph of Float
1670        
1671
1672    Returns:
1673        Graph: A graph node producing a Float.
1674    """
1675    number_parsed = parse_float_graph(number)
1676    return float_square_root_internal(number_parsed)

Float Square Root

Compares the square root of a number

Args: Number: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_squared(number) -> Graph:
1678def float_squared(number) -> Graph:
1679    """Float Squared
1680
1681    Raises a float to the power of 2.
1682
1683    Args:
1684        Number: Graph of Float
1685        
1686
1687    Returns:
1688        Graph: A graph node producing a Float.
1689    """
1690    number_parsed = parse_float_graph(number)
1691    return float_squared_internal(number_parsed)

Float Squared

Raises a float to the power of 2.

Args: Number: Graph of Float

Returns: Graph: A graph node producing a Float.

def float_subtract(float1, float2) -> Graph:
1693def float_subtract(float1, float2) -> Graph:
1694    """Float Subtract
1695
1696    Adds two floats together.
1697
1698    Args:
1699        float1: Graph of Float
1700        float2: Graph of Float
1701        
1702
1703    Returns:
1704        Graph: A graph node producing a Float.
1705    """
1706    float1_parsed = parse_float_graph(float1)
1707    float2_parsed = parse_float_graph(float2)
1708    return float_subtract_internal(float1_parsed, float2_parsed)

Float Subtract

Adds two floats together.

Args: float1: Graph of Float float2: Graph of Float

Returns: Graph: A graph node producing a Float.

def image_from_byte_list(bytes) -> Graph:
1710def image_from_byte_list(bytes) -> Graph:
1711    """Image from Bytes
1712
1713    Given some bytes, parses an image
1714
1715    Args:
1716        bytes: Graph of ByteList
1717        
1718
1719    Returns:
1720        Graph: A graph node producing a Image.
1721    """
1722    bytes_parsed = parse_graph(bytes)
1723    return image_from_byte_list_internal(bytes_parsed)

Image from Bytes

Given some bytes, parses an image

Args: bytes: Graph of ByteList

Returns: Graph: A graph node producing a Image.

def image_to_byte_list(image) -> Graph:
1725def image_to_byte_list(image) -> Graph:
1726    """Image to Byte List
1727
1728    Given an image, converts it to a byte list
1729
1730    Args:
1731        image: Graph of Image
1732        
1733
1734    Returns:
1735        Graph: A graph node producing a ByteList.
1736    """
1737    image_parsed = parse_graph(image)
1738    return image_to_byte_list_internal(image_parsed)

Image to Byte List

Given an image, converts it to a byte list

Args: image: Graph of Image

Returns: Graph: A graph node producing a ByteList.

def int_abs(number) -> Graph:
1740def int_abs(number) -> Graph:
1741    """Int Absolute Value
1742
1743    Returns the absolute value of an int
1744
1745    Args:
1746        number: Graph of Int
1747        
1748
1749    Returns:
1750        Graph: A graph node producing a Int.
1751    """
1752    number_parsed = parse_int_graph(number)
1753    return int_abs_internal(number_parsed)

Int Absolute Value

Returns the absolute value of an int

Args: number: Graph of Int

Returns: Graph: A graph node producing a Int.

def int_add(int_1, int_2) -> Graph:
1755def int_add(int_1, int_2) -> Graph:
1756    """Int Add
1757
1758    Adds to ints together
1759
1760    Args:
1761        First Int: Graph of Int
1762        Second Int: Graph of Int
1763        
1764
1765    Returns:
1766        Graph: A graph node producing a Int.
1767    """
1768    int_1_parsed = parse_int_graph(int_1)
1769    int_2_parsed = parse_int_graph(int_2)
1770    return int_add_internal(int_1_parsed, int_2_parsed)

Int Add

Adds to ints together

Args: First Int: Graph of Int Second Int: Graph of Int

Returns: Graph: A graph node producing a Int.

def int_add_to_dictionary(dictionary, key, value) -> Graph:
1772def int_add_to_dictionary(dictionary, key, value) -> Graph:
1773    """Int Add To Dictionary
1774
1775    Adds a Int to a Dictionary
1776
1777    Args:
1778        dictionary: Graph of Dictionary
1779        key: Graph of String
1780        value: Graph of Int
1781        
1782
1783    Returns:
1784        Graph: A graph node producing a Dictionary.
1785    """
1786    dictionary_parsed = parse_graph(dictionary)
1787    key_parsed = parse_string_graph(key)
1788    value_parsed = parse_int_graph(value)
1789    return int_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)

Int Add To Dictionary

Adds a Int to a Dictionary

Args: dictionary: Graph of Dictionary key: Graph of String value: Graph of Int

Returns: Graph: A graph node producing a Dictionary.

def int_equals(int_1, int_2) -> Graph:
1791def int_equals(int_1, int_2) -> Graph:
1792    """Int Equals
1793
1794    Checks if two ints are equal
1795
1796    Args:
1797        First Int: Graph of Int
1798        Second Int: Graph of Int
1799        
1800
1801    Returns:
1802        Graph: A graph node producing a Bool.
1803    """
1804    int_1_parsed = parse_int_graph(int_1)
1805    int_2_parsed = parse_int_graph(int_2)
1806    return int_equals_internal(int_1_parsed, int_2_parsed)

Int Equals

Checks if two ints are equal

Args: First Int: Graph of Int Second Int: Graph of Int

Returns: Graph: A graph node producing a Bool.

def int_greater_than(int_1, int_2) -> Graph:
1808def int_greater_than(int_1, int_2) -> Graph:
1809    """Int Greater Than
1810
1811    Checks if the first int is greater than the second int
1812
1813    Args:
1814        First Int: Graph of Int
1815        Second Int: Graph of Int
1816        
1817
1818    Returns:
1819        Graph: A graph node producing a Bool.
1820    """
1821    int_1_parsed = parse_int_graph(int_1)
1822    int_2_parsed = parse_int_graph(int_2)
1823    return int_greater_than_internal(int_1_parsed, int_2_parsed)

Int Greater Than

Checks if the first int is greater than the second int

Args: First Int: Graph of Int Second Int: Graph of Int

Returns: Graph: A graph node producing a Bool.

def int_if(bool, input_1, input_2) -> Graph:
1825def int_if(bool, input_1, input_2) -> Graph:
1826    """Int If
1827
1828    If the boolean is true returns input 1, otherwise input 2. Type: Int
1829
1830    Args:
1831        bool: Graph of Bool
1832        input 1: Graph of Int
1833        input 2: Graph of Int
1834        
1835
1836    Returns:
1837        Graph: A graph node producing a Int.
1838    """
1839    bool_parsed = parse_bool_graph(bool)
1840    input_1_parsed = parse_int_graph(input_1)
1841    input_2_parsed = parse_int_graph(input_2)
1842    return int_if_internal(bool_parsed, input_1_parsed, input_2_parsed)

Int If

If the boolean is true returns input 1, otherwise input 2. Type: Int

Args: bool: Graph of Bool input 1: Graph of Int input 2: Graph of Int

Returns: Graph: A graph node producing a Int.

def int_less_than(int_1, int_2) -> Graph:
1844def int_less_than(int_1, int_2) -> Graph:
1845    """Int Less Than
1846
1847    Checks if the first int is less than the second int
1848
1849    Args:
1850        First Int: Graph of Int
1851        Second Int: Graph of Int
1852        
1853
1854    Returns:
1855        Graph: A graph node producing a Bool.
1856    """
1857    int_1_parsed = parse_int_graph(int_1)
1858    int_2_parsed = parse_int_graph(int_2)
1859    return int_less_than_internal(int_1_parsed, int_2_parsed)

Int Less Than

Checks if the first int is less than the second int

Args: First Int: Graph of Int Second Int: Graph of Int

Returns: Graph: A graph node producing a Bool.

def int_max(int1, int2) -> Graph:
1861def int_max(int1, int2) -> Graph:
1862    """Int Max
1863
1864    Returns the maximum int.
1865
1866    Args:
1867        int1: Graph of Int
1868        int2: Graph of Int
1869        
1870
1871    Returns:
1872        Graph: A graph node producing a Int.
1873    """
1874    int1_parsed = parse_int_graph(int1)
1875    int2_parsed = parse_int_graph(int2)
1876    return int_max_internal(int1_parsed, int2_parsed)

Int Max

Returns the maximum int.

Args: int1: Graph of Int int2: Graph of Int

Returns: Graph: A graph node producing a Int.

def int_min(int1, int2) -> Graph:
1878def int_min(int1, int2) -> Graph:
1879    """Int Min
1880
1881    Returns the minimum int.
1882
1883    Args:
1884        int1: Graph of Int
1885        int2: Graph of Int
1886        
1887
1888    Returns:
1889        Graph: A graph node producing a Int.
1890    """
1891    int1_parsed = parse_int_graph(int1)
1892    int2_parsed = parse_int_graph(int2)
1893    return int_min_internal(int1_parsed, int2_parsed)

Int Min

Returns the minimum int.

Args: int1: Graph of Int int2: Graph of Int

Returns: Graph: A graph node producing a Int.

def int_multiply(int_1, int_2) -> Graph:
1895def int_multiply(int_1, int_2) -> Graph:
1896    """Int Multiply
1897
1898    Multiplies two integers together
1899
1900    Args:
1901        First Int: Graph of Int
1902        Second Int: Graph of Int
1903        
1904
1905    Returns:
1906        Graph: A graph node producing a Int.
1907    """
1908    int_1_parsed = parse_int_graph(int_1)
1909    int_2_parsed = parse_int_graph(int_2)
1910    return int_multiply_internal(int_1_parsed, int_2_parsed)

Int Multiply

Multiplies two integers together

Args: First Int: Graph of Int Second Int: Graph of Int

Returns: Graph: A graph node producing a Int.

def int_passthrough(value) -> Graph:
1912def int_passthrough(value) -> Graph:
1913    """Int Passthrough
1914
1915    Responds with the value provided. Doing nothing to it.
1916
1917    Args:
1918        value: Graph of Int
1919        
1920
1921    Returns:
1922        Graph: A graph node producing a Int.
1923    """
1924    value_parsed = parse_int_graph(value)
1925    return int_passthrough_internal(value_parsed)

Int Passthrough

Responds with the value provided. Doing nothing to it.

Args: value: Graph of Int

Returns: Graph: A graph node producing a Int.

def int_subtract(int_1, int_2) -> Graph:
1927def int_subtract(int_1, int_2) -> Graph:
1928    """Int Subtract
1929
1930    Subtracts one int from another
1931
1932    Args:
1933        int 1: Graph of Int
1934        int 2: Graph of Int
1935        
1936
1937    Returns:
1938        Graph: A graph node producing a Int.
1939    """
1940    int_1_parsed = parse_int_graph(int_1)
1941    int_2_parsed = parse_int_graph(int_2)
1942    return int_subtract_internal(int_1_parsed, int_2_parsed)

Int Subtract

Subtracts one int from another

Args: int 1: Graph of Int int 2: Graph of Int

Returns: Graph: A graph node producing a Int.

def int_to_float(int) -> Graph:
1944def int_to_float(int) -> Graph:
1945    """Int To Float
1946
1947    Converts an Int to a Float
1948
1949    Args:
1950        int: Graph of Int
1951        
1952
1953    Returns:
1954        Graph: A graph node producing a Float.
1955    """
1956    int_parsed = parse_int_graph(int)
1957    return int_to_float_internal(int_parsed)

Int To Float

Converts an Int to a Float

Args: int: Graph of Int

Returns: Graph: A graph node producing a Float.

def monet_network_download_u_r_l_from_asset_i_d(asset_id) -> Graph:
1959def monet_network_download_u_r_l_from_asset_i_d(asset_id) -> Graph:
1960    """Monet Network Download URL from Asset ID
1961
1962    Creates a Download URL from asset ID in the Monet Network
1963
1964    Args:
1965        asset id: Graph of Int
1966        
1967
1968    Returns:
1969        Graph: A graph node producing a String.
1970    """
1971    asset_id_parsed = parse_int_graph(asset_id)
1972    return monet_network_download_u_r_l_from_asset_i_d_internal(asset_id_parsed)

Monet Network Download URL from Asset ID

Creates a Download URL from asset ID in the Monet Network

Args: asset id: Graph of Int

Returns: Graph: A graph node producing a String.

def not_(bool) -> Graph:
1974def not_(bool) -> Graph:
1975    """Not
1976
1977    Returns the opposite of a boolean
1978
1979    Args:
1980        Bool: Graph of Bool
1981        
1982
1983    Returns:
1984        Graph: A graph node producing a Bool.
1985    """
1986    bool_parsed = parse_bool_graph(bool)
1987    return not_internal(bool_parsed)

Not

Returns the opposite of a boolean

Args: Bool: Graph of Bool

Returns: Graph: A graph node producing a Bool.

def null_value() -> Graph:
1989def null_value() -> Graph:
1990    """Null Value
1991
1992    Returns a null value
1993
1994    Returns:
1995        Graph: A graph node producing a Null.
1996    """
1997    return null_value_internal()

Null Value

Returns a null value

Returns: Graph: A graph node producing a Null.

def ok_lab_color_from_components(l, a, b) -> Graph:
1999def ok_lab_color_from_components(l, a, b) -> Graph:
2000    """OkLab Color from Components
2001
2002    Given the L, a and b creates the color
2003
2004    Args:
2005        l: Graph of Float
2006        a: Graph of Float
2007        b: Graph of Float
2008        
2009
2010    Returns:
2011        Graph: A graph node producing a OkLabColor.
2012    """
2013    l_parsed = parse_float_graph(l)
2014    a_parsed = parse_float_graph(a)
2015    b_parsed = parse_float_graph(b)
2016    return ok_lab_color_from_components_internal(l_parsed, a_parsed, b_parsed)

OkLab Color from Components

Given the L, a and b creates the color

Args: l: Graph of Float a: Graph of Float b: Graph of Float

Returns: Graph: A graph node producing a OkLabColor.

def ok_lab_to_r_g_b(ok_lab, color_profile) -> Graph:
2018def ok_lab_to_r_g_b(ok_lab, color_profile) -> Graph:
2019    """OkLab to RGB
2020
2021    Converts an OkLab color to an RGB color
2022
2023    Args:
2024        OkLab: Graph of OkLabColor
2025        color profile: Graph of ColorProfile
2026        
2027
2028    Returns:
2029        Graph: A graph node producing a RGBColor.
2030    """
2031    ok_lab_parsed = parse_graph(ok_lab)
2032    color_profile_parsed = parse_graph(color_profile)
2033    return ok_lab_to_r_g_b_internal(ok_lab_parsed, color_profile_parsed)

OkLab to RGB

Converts an OkLab color to an RGB color

Args: OkLab: Graph of OkLabColor color profile: Graph of ColorProfile

Returns: Graph: A graph node producing a RGBColor.

def or_(bool1, bool2) -> Graph:
2035def or_(bool1, bool2) -> Graph:
2036    """Or
2037
2038    Returns true if either inputs are true.
2039
2040    Args:
2041        bool1: Graph of Bool
2042        bool2: Graph of Bool
2043        
2044
2045    Returns:
2046        Graph: A graph node producing a Bool.
2047    """
2048    bool1_parsed = parse_bool_graph(bool1)
2049    bool2_parsed = parse_bool_graph(bool2)
2050    return or_internal(bool1_parsed, bool2_parsed)

Or

Returns true if either inputs are true.

Args: bool1: Graph of Bool bool2: Graph of Bool

Returns: Graph: A graph node producing a Bool.

def painter_add_path_with_render_style(painter, path, render_style, instances, depth) -> Graph:
2052def painter_add_path_with_render_style(painter, path, render_style, instances, depth) -> Graph:
2053    """Painter Add Path with Render Style
2054
2055    Adds a path to the painter and draws it with the render style. Set some transforms on the path as well.
2056
2057    Args:
2058        painter: Graph of Painter
2059        path: Graph of Path
2060        render style: Graph of RenderStyle
2061        instances: Graph of Transform2List
2062        depth: Graph of Int
2063        
2064
2065    Returns:
2066        Graph: A graph node producing a Painter.
2067    """
2068    painter_parsed = parse_graph(painter)
2069    path_parsed = parse_graph(path)
2070    render_style_parsed = parse_graph(render_style)
2071    instances_parsed = parse_graph(instances)
2072    depth_parsed = parse_int_graph(depth)
2073    return painter_add_path_with_render_style_internal(painter_parsed, path_parsed, render_style_parsed, instances_parsed, depth_parsed)

Painter Add Path with Render Style

Adds a path to the painter and draws it with the render style. Set some transforms on the path as well.

Args: painter: Graph of Painter path: Graph of Path render style: Graph of RenderStyle instances: Graph of Transform2List depth: Graph of Int

Returns: Graph: A graph node producing a Painter.

def painter_new(color_profile) -> Graph:
2075def painter_new(color_profile) -> Graph:
2076    """Painter New
2077
2078    Creates a new painter.
2079
2080    Args:
2081        color profile: Graph of ColorProfile
2082        
2083
2084    Returns:
2085        Graph: A graph node producing a Painter.
2086    """
2087    color_profile_parsed = parse_graph(color_profile)
2088    return painter_new_internal(color_profile_parsed)

Painter New

Creates a new painter.

Args: color profile: Graph of ColorProfile

Returns: Graph: A graph node producing a Painter.

def path_add_rectangle(path, center, dimensions, rotation) -> Graph:
2090def path_add_rectangle(path, center, dimensions, rotation) -> Graph:
2091    """Path Add Rectangle
2092
2093    Rectangle
2094
2095    Args:
2096        path: Graph of Path
2097        center point of the rectangle: Graph of Point2f
2098        width and height of the rectangle: Graph of Vector2f
2099        rotation angle in radians: Graph of Float
2100        
2101
2102    Returns:
2103        Graph: A graph node producing a Path.
2104    """
2105    path_parsed = parse_graph(path)
2106    center_parsed = parse_graph(center)
2107    dimensions_parsed = parse_graph(dimensions)
2108    rotation_parsed = parse_float_graph(rotation)
2109    return path_add_rectangle_internal(path_parsed, center_parsed, dimensions_parsed, rotation_parsed)

Path Add Rectangle

Rectangle

Args: path: Graph of Path center point of the rectangle: Graph of Point2f width and height of the rectangle: Graph of Vector2f rotation angle in radians: Graph of Float

Returns: Graph: A graph node producing a Path.

def path_line_to_point(path, point) -> Graph:
2111def path_line_to_point(path, point) -> Graph:
2112    """Path Line to Point
2113
2114    Moves the path from it's current point to another at another point with a line.
2115
2116    Args:
2117        path: Graph of Path
2118        point: Graph of Point2f
2119        
2120
2121    Returns:
2122        Graph: A graph node producing a Path.
2123    """
2124    path_parsed = parse_graph(path)
2125    point_parsed = parse_graph(point)
2126    return path_line_to_point_internal(path_parsed, point_parsed)

Path Line to Point

Moves the path from it's current point to another at another point with a line.

Args: path: Graph of Path point: Graph of Point2f

Returns: Graph: A graph node producing a Path.

def path_move_to_point(path, point) -> Graph:
2128def path_move_to_point(path, point) -> Graph:
2129    """Path Move to Point
2130
2131    Moves the path to a specified point without drawing anything.
2132
2133    Args:
2134        path: Graph of Path
2135        point: Graph of Point2f
2136        
2137
2138    Returns:
2139        Graph: A graph node producing a Path.
2140    """
2141    path_parsed = parse_graph(path)
2142    point_parsed = parse_graph(point)
2143    return path_move_to_point_internal(path_parsed, point_parsed)

Path Move to Point

Moves the path to a specified point without drawing anything.

Args: path: Graph of Path point: Graph of Point2f

Returns: Graph: A graph node producing a Path.

def path_new() -> Graph:
2145def path_new() -> Graph:
2146    """Path New
2147
2148    Creates a new empty path.
2149
2150    Returns:
2151        Graph: A graph node producing a Path.
2152    """
2153    return path_new_internal()

Path New

Creates a new empty path.

Returns: Graph: A graph node producing a Path.

def pi() -> Graph:
2155def pi() -> Graph:
2156    """Pi
2157
2158    Returns π as a float
2159
2160    Returns:
2161        Graph: A graph node producing a Float.
2162    """
2163    return pi_internal()

Pi

Returns π as a float

Returns: Graph: A graph node producing a Float.

def point2f_from_components(x, y) -> Graph:
2165def point2f_from_components(x, y) -> Graph:
2166    """Point 2 Float from Components
2167
2168    Given an x and y creates a point
2169
2170    Args:
2171        x: Graph of Float
2172        y: Graph of Float
2173        
2174
2175    Returns:
2176        Graph: A graph node producing a Point2f.
2177    """
2178    x_parsed = parse_float_graph(x)
2179    y_parsed = parse_float_graph(y)
2180    return point2f_from_components_internal(x_parsed, y_parsed)

Point 2 Float from Components

Given an x and y creates a point

Args: x: Graph of Float y: Graph of Float

Returns: Graph: A graph node producing a Point2f.

def r_g_b_a_color_add_to_dictionary(dictionary, key, value) -> Graph:
2182def r_g_b_a_color_add_to_dictionary(dictionary, key, value) -> Graph:
2183    """RGBA Color Add To Dictionary
2184
2185    Adds a RGBA Color to a Dictionary
2186
2187    Args:
2188        dictionary: Graph of Dictionary
2189        key: Graph of String
2190        value: Graph of RGBAColor
2191        
2192
2193    Returns:
2194        Graph: A graph node producing a Dictionary.
2195    """
2196    dictionary_parsed = parse_graph(dictionary)
2197    key_parsed = parse_string_graph(key)
2198    value_parsed = parse_graph(value)
2199    return r_g_b_a_color_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)

RGBA Color Add To Dictionary

Adds a RGBA Color to a Dictionary

Args: dictionary: Graph of Dictionary key: Graph of String value: Graph of RGBAColor

Returns: Graph: A graph node producing a Dictionary.

def r_g_b_a_color_from_components(r, g, b, a) -> Graph:
2201def r_g_b_a_color_from_components(r, g, b, a) -> Graph:
2202    """RGBA Color from Components
2203
2204    Given the r, g, b and a creates the color
2205
2206    Args:
2207        red: Graph of Float
2208        green: Graph of Float
2209        blue: Graph of Float
2210        alpha: Graph of Float
2211        
2212
2213    Returns:
2214        Graph: A graph node producing a RGBAColor.
2215    """
2216    r_parsed = parse_float_graph(r)
2217    g_parsed = parse_float_graph(g)
2218    b_parsed = parse_float_graph(b)
2219    a_parsed = parse_float_graph(a)
2220    return r_g_b_a_color_from_components_internal(r_parsed, g_parsed, b_parsed, a_parsed)

RGBA Color from Components

Given the r, g, b and a creates the color

Args: red: Graph of Float green: Graph of Float blue: Graph of Float alpha: Graph of Float

Returns: Graph: A graph node producing a RGBAColor.

def r_g_b_a_color_passthrough(value) -> Graph:
2222def r_g_b_a_color_passthrough(value) -> Graph:
2223    """RGBA Color Passthrough
2224
2225    Responds with the value provided. Doing nothing to it.
2226
2227    Args:
2228        value: Graph of RGBAColor
2229        
2230
2231    Returns:
2232        Graph: A graph node producing a RGBAColor.
2233    """
2234    value_parsed = parse_graph(value)
2235    return r_g_b_a_color_passthrough_internal(value_parsed)

RGBA Color Passthrough

Responds with the value provided. Doing nothing to it.

Args: value: Graph of RGBAColor

Returns: Graph: A graph node producing a RGBAColor.

def r_g_b_color_add_to_dictionary(dictionary, key, value) -> Graph:
2237def r_g_b_color_add_to_dictionary(dictionary, key, value) -> Graph:
2238    """RGB Color Add To Dictionary
2239
2240    Adds a RGB Color to a Dictionary
2241
2242    Args:
2243        dictionary: Graph of Dictionary
2244        key: Graph of String
2245        value: Graph of RGBColor
2246        
2247
2248    Returns:
2249        Graph: A graph node producing a Dictionary.
2250    """
2251    dictionary_parsed = parse_graph(dictionary)
2252    key_parsed = parse_string_graph(key)
2253    value_parsed = parse_graph(value)
2254    return r_g_b_color_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)

RGB Color Add To Dictionary

Adds a RGB Color to a Dictionary

Args: dictionary: Graph of Dictionary key: Graph of String value: Graph of RGBColor

Returns: Graph: A graph node producing a Dictionary.

def r_g_b_color_from_components(r, g, b) -> Graph:
2256def r_g_b_color_from_components(r, g, b) -> Graph:
2257    """RGB Color from Components
2258
2259    Given the r, g and b creates the color
2260
2261    Args:
2262        red: Graph of Float
2263        green: Graph of Float
2264        blue: Graph of Float
2265        
2266
2267    Returns:
2268        Graph: A graph node producing a RGBColor.
2269    """
2270    r_parsed = parse_float_graph(r)
2271    g_parsed = parse_float_graph(g)
2272    b_parsed = parse_float_graph(b)
2273    return r_g_b_color_from_components_internal(r_parsed, g_parsed, b_parsed)

RGB Color from Components

Given the r, g and b creates the color

Args: red: Graph of Float green: Graph of Float blue: Graph of Float

Returns: Graph: A graph node producing a RGBColor.

def r_g_b_color_passthrough(value) -> Graph:
2275def r_g_b_color_passthrough(value) -> Graph:
2276    """RGB Color Passthrough
2277
2278    Responds with the value provided. Doing nothing to it.
2279
2280    Args:
2281        value: Graph of RGBColor
2282        
2283
2284    Returns:
2285        Graph: A graph node producing a RGBColor.
2286    """
2287    value_parsed = parse_graph(value)
2288    return r_g_b_color_passthrough_internal(value_parsed)

RGB Color Passthrough

Responds with the value provided. Doing nothing to it.

Args: value: Graph of RGBColor

Returns: Graph: A graph node producing a RGBColor.

def r_g_b_to_ok_lab(rgb, color_profile) -> Graph:
2290def r_g_b_to_ok_lab(rgb, color_profile) -> Graph:
2291    """RGB to OkLab
2292
2293    Converts an RGB color to an OkLab color
2294
2295    Args:
2296        RGB: Graph of RGBColor
2297        color profile: Graph of ColorProfile
2298        
2299
2300    Returns:
2301        Graph: A graph node producing a OkLabColor.
2302    """
2303    rgb_parsed = parse_graph(rgb)
2304    color_profile_parsed = parse_graph(color_profile)
2305    return r_g_b_to_ok_lab_internal(rgb_parsed, color_profile_parsed)

RGB to OkLab

Converts an RGB color to an OkLab color

Args: RGB: Graph of RGBColor color profile: Graph of ColorProfile

Returns: Graph: A graph node producing a OkLabColor.

def render_style_brush_and_fill(brush, fill) -> Graph:
2307def render_style_brush_and_fill(brush, fill) -> Graph:
2308    """Render Style Brush and Fill
2309
2310    Creates a render style that will have a brush and a fill.
2311
2312    Args:
2313        brush: Graph of Brush
2314        fill: Graph of Fill
2315        
2316
2317    Returns:
2318        Graph: A graph node producing a RenderStyle.
2319    """
2320    brush_parsed = parse_graph(brush)
2321    fill_parsed = parse_graph(fill)
2322    return render_style_brush_and_fill_internal(brush_parsed, fill_parsed)

Render Style Brush and Fill

Creates a render style that will have a brush and a fill.

Args: brush: Graph of Brush fill: Graph of Fill

Returns: Graph: A graph node producing a RenderStyle.

def render_style_brush_only(brush) -> Graph:
2324def render_style_brush_only(brush) -> Graph:
2325    """Render Style Brush Only
2326
2327    Creates a render style that will only have a brush.
2328
2329    Args:
2330        brush: Graph of Brush
2331        
2332
2333    Returns:
2334        Graph: A graph node producing a RenderStyle.
2335    """
2336    brush_parsed = parse_graph(brush)
2337    return render_style_brush_only_internal(brush_parsed)

Render Style Brush Only

Creates a render style that will only have a brush.

Args: brush: Graph of Brush

Returns: Graph: A graph node producing a RenderStyle.

def render_style_fill_only(fill) -> Graph:
2339def render_style_fill_only(fill) -> Graph:
2340    """Render Style Fill Only
2341
2342    Creates a render style that will only have a fill.
2343
2344    Args:
2345        fill: Graph of Fill
2346        
2347
2348    Returns:
2349        Graph: A graph node producing a RenderStyle.
2350    """
2351    fill_parsed = parse_graph(fill)
2352    return render_style_fill_only_internal(fill_parsed)

Render Style Fill Only

Creates a render style that will only have a fill.

Args: fill: Graph of Fill

Returns: Graph: A graph node producing a RenderStyle.

def sequence_adjust_speed(sequence, factor) -> Graph:
2354def sequence_adjust_speed(sequence, factor) -> Graph:
2355    """Sequence Adjust Speed
2356
2357    Adjusts the speed of a sequence by a speed factor.
2358
2359    Args:
2360        sequence: Graph of Sequence
2361        factor: Graph of Float
2362        
2363
2364    Returns:
2365        Graph: A graph node producing a Sequence.
2366    """
2367    sequence_parsed = parse_graph(sequence)
2368    factor_parsed = parse_float_graph(factor)
2369    return sequence_adjust_speed_internal(sequence_parsed, factor_parsed)

Sequence Adjust Speed

Adjusts the speed of a sequence by a speed factor.

Args: sequence: Graph of Sequence factor: Graph of Float

Returns: Graph: A graph node producing a Sequence.

def sequence_animated_web_p(sequence, framerate) -> Graph:
2371def sequence_animated_web_p(sequence, framerate) -> Graph:
2372    """Sequence to Animated WebP
2373
2374    Given a sequence of images, encodes them into an animated WebP returning the URL to the file.
2375
2376    Args:
2377        sequence: Graph of Sequence
2378        framerate: Graph of Int
2379        
2380
2381    Returns:
2382        Graph: A graph node producing a ByteList.
2383    """
2384    sequence_parsed = parse_graph(sequence)
2385    framerate_parsed = parse_int_graph(framerate)
2386    return sequence_animated_web_p_internal(sequence_parsed, framerate_parsed)

Sequence to Animated WebP

Given a sequence of images, encodes them into an animated WebP returning the URL to the file.

Args: sequence: Graph of Sequence framerate: Graph of Int

Returns: Graph: A graph node producing a ByteList.

def sequence_composition_at_time(sequence, time) -> Graph:
2388def sequence_composition_at_time(sequence, time) -> Graph:
2389    """Sequence Composition at Time
2390
2391    Extracts an composition from a sequence at a particular time
2392
2393    Args:
2394        sequence: Graph of Sequence
2395        time: Graph of Float
2396        
2397
2398    Returns:
2399        Graph: A graph node producing a Composition.
2400    """
2401    sequence_parsed = parse_graph(sequence)
2402    time_parsed = parse_float_graph(time)
2403    return sequence_composition_at_time_internal(sequence_parsed, time_parsed)

Sequence Composition at Time

Extracts an composition from a sequence at a particular time

Args: sequence: Graph of Sequence time: Graph of Float

Returns: Graph: A graph node producing a Composition.

def sequence_concatenate(sequence_1, sequence_2) -> Graph:
2405def sequence_concatenate(sequence_1, sequence_2) -> Graph:
2406    """Sequence Concatenate
2407
2408    Given two sequences, combines them into one by playing the first one and then the second one.
2409
2410    Args:
2411        sequence 1: Graph of Sequence
2412        sequence 2: Graph of Sequence
2413        
2414
2415    Returns:
2416        Graph: A graph node producing a Sequence.
2417    """
2418    sequence_1_parsed = parse_graph(sequence_1)
2419    sequence_2_parsed = parse_graph(sequence_2)
2420    return sequence_concatenate_internal(sequence_1_parsed, sequence_2_parsed)

Sequence Concatenate

Given two sequences, combines them into one by playing the first one and then the second one.

Args: sequence 1: Graph of Sequence sequence 2: Graph of Sequence

Returns: Graph: A graph node producing a Sequence.

def sequence_duration(sequence) -> Graph:
2422def sequence_duration(sequence) -> Graph:
2423    """Sequence Duration
2424
2425    Gets the duration from a sequence
2426
2427    Args:
2428        sequence: Graph of Sequence
2429        
2430
2431    Returns:
2432        Graph: A graph node producing a Float.
2433    """
2434    sequence_parsed = parse_graph(sequence)
2435    return sequence_duration_internal(sequence_parsed)

Sequence Duration

Gets the duration from a sequence

Args: sequence: Graph of Sequence

Returns: Graph: A graph node producing a Float.

def sequence_from_composition_and_duration(composition, duration) -> Graph:
2437def sequence_from_composition_and_duration(composition, duration) -> Graph:
2438    """Sequence from Composition and Duration
2439
2440    Give a Composition and a Duration. Returns a Sequence.
2441
2442    Args:
2443        composition: Graph of Composition
2444        duration: Graph of Float
2445        
2446
2447    Returns:
2448        Graph: A graph node producing a Sequence.
2449    """
2450    composition_parsed = parse_graph(composition)
2451    duration_parsed = parse_float_graph(duration)
2452    return sequence_from_composition_and_duration_internal(composition_parsed, duration_parsed)

Sequence from Composition and Duration

Give a Composition and a Duration. Returns a Sequence.

Args: composition: Graph of Composition duration: Graph of Float

Returns: Graph: A graph node producing a Sequence.

def sequence_from_u_r_l(url) -> Graph:
2454def sequence_from_u_r_l(url) -> Graph:
2455    """Sequence from URL
2456
2457    Creates a sequence from URL
2458
2459    Args:
2460        url: Graph of String
2461        
2462
2463    Returns:
2464        Graph: A graph node producing a Sequence.
2465    """
2466    url_parsed = parse_string_graph(url)
2467    return sequence_from_u_r_l_internal(url_parsed)

Sequence from URL

Creates a sequence from URL

Args: url: Graph of String

Returns: Graph: A graph node producing a Sequence.

def sequence_graph(duration, time, frame) -> Graph:
2469def sequence_graph(duration, time, frame) -> Graph:
2470    """Sequence Graph
2471
2472    Creates a sequence that runs the graph to get the duration and the frame for each time.
2473
2474    Args:
2475        duration: Graph of Float
2476        time: Graph of Float
2477        frame: Graph of Composition
2478        
2479
2480    Returns:
2481        Graph: A graph node producing a Sequence.
2482    """
2483    duration_parsed = parse_float_graph(duration)
2484    time_parsed = parse_float_graph(time)
2485    frame_parsed = parse_graph(frame)
2486    return sequence_graph_internal(duration_parsed, time_parsed, frame_parsed)

Sequence Graph

Creates a sequence that runs the graph to get the duration and the frame for each time.

Args: duration: Graph of Float time: Graph of Float frame: Graph of Composition

Returns: Graph: A graph node producing a Sequence.

def sequence_grayscale(sequence) -> Graph:
2488def sequence_grayscale(sequence) -> Graph:
2489    """Sequence Grayscale
2490
2491    Creates a sequence that converts the video to grayscale
2492
2493    Args:
2494        sequence: Graph of Sequence
2495        
2496
2497    Returns:
2498        Graph: A graph node producing a Sequence.
2499    """
2500    sequence_parsed = parse_graph(sequence)
2501    return sequence_grayscale_internal(sequence_parsed)

Sequence Grayscale

Creates a sequence that converts the video to grayscale

Args: sequence: Graph of Sequence

Returns: Graph: A graph node producing a Sequence.

def sequence_passthrough(value) -> Graph:
2503def sequence_passthrough(value) -> Graph:
2504    """Sequence Passthrough
2505
2506    Responds with the value provided. Doing nothing to it.
2507
2508    Args:
2509        value: Graph of Sequence
2510        
2511
2512    Returns:
2513        Graph: A graph node producing a Sequence.
2514    """
2515    value_parsed = parse_graph(value)
2516    return sequence_passthrough_internal(value_parsed)

Sequence Passthrough

Responds with the value provided. Doing nothing to it.

Args: value: Graph of Sequence

Returns: Graph: A graph node producing a Sequence.

def sequence_reverse(sequence) -> Graph:
2518def sequence_reverse(sequence) -> Graph:
2519    """Sequence Reverse
2520
2521    Given a sequence. Reverses it.
2522
2523    Args:
2524        sequence: Graph of Sequence
2525        
2526
2527    Returns:
2528        Graph: A graph node producing a Sequence.
2529    """
2530    sequence_parsed = parse_graph(sequence)
2531    return sequence_reverse_internal(sequence_parsed)

Sequence Reverse

Given a sequence. Reverses it.

Args: sequence: Graph of Sequence

Returns: Graph: A graph node producing a Sequence.

def sequence_to_mp4(sequence, frame_rate_numerator, frame_rate_denominator) -> Graph:
2533def sequence_to_mp4(sequence, frame_rate_numerator, frame_rate_denominator) -> Graph:
2534    """Sequence To MP4
2535
2536    Given a sequence. Converts it to MP4 return a local file to where that MP4 is stored.
2537
2538    Args:
2539        sequence: Graph of Sequence
2540        frame rate numerator: Graph of Int
2541        frame rate denominator: Graph of Int
2542        
2543
2544    Returns:
2545        Graph: A graph node producing a String.
2546    """
2547    sequence_parsed = parse_graph(sequence)
2548    frame_rate_numerator_parsed = parse_int_graph(frame_rate_numerator)
2549    frame_rate_denominator_parsed = parse_int_graph(frame_rate_denominator)
2550    return sequence_to_mp4_internal(sequence_parsed, frame_rate_numerator_parsed, frame_rate_denominator_parsed)

Sequence To MP4

Given a sequence. Converts it to MP4 return a local file to where that MP4 is stored.

Args: sequence: Graph of Sequence frame rate numerator: Graph of Int frame rate denominator: Graph of Int

Returns: Graph: A graph node producing a String.

def sequence_trim_back(sequence, amount) -> Graph:
2552def sequence_trim_back(sequence, amount) -> Graph:
2553    """Sequence Trim Back
2554
2555    Given a sequence. Trims from the back.
2556
2557    Args:
2558        sequence: Graph of Sequence
2559        amount: Graph of Float
2560        
2561
2562    Returns:
2563        Graph: A graph node producing a Sequence.
2564    """
2565    sequence_parsed = parse_graph(sequence)
2566    amount_parsed = parse_float_graph(amount)
2567    return sequence_trim_back_internal(sequence_parsed, amount_parsed)

Sequence Trim Back

Given a sequence. Trims from the back.

Args: sequence: Graph of Sequence amount: Graph of Float

Returns: Graph: A graph node producing a Sequence.

def sequence_trim_front(sequence, amount) -> Graph:
2569def sequence_trim_front(sequence, amount) -> Graph:
2570    """Sequence Trim Front
2571
2572    Given a sequence. Trims from the front.
2573
2574    Args:
2575        sequence: Graph of Sequence
2576        amount: Graph of Float
2577        
2578
2579    Returns:
2580        Graph: A graph node producing a Sequence.
2581    """
2582    sequence_parsed = parse_graph(sequence)
2583    amount_parsed = parse_float_graph(amount)
2584    return sequence_trim_front_internal(sequence_parsed, amount_parsed)

Sequence Trim Front

Given a sequence. Trims from the front.

Args: sequence: Graph of Sequence amount: Graph of Float

Returns: Graph: A graph node producing a Sequence.

def string_if(bool, input_1, input_2) -> Graph:
2586def string_if(bool, input_1, input_2) -> Graph:
2587    """String If
2588
2589    If the boolean is true returns input 1, otherwise input 2. Type: String
2590
2591    Args:
2592        bool: Graph of Bool
2593        input 1: Graph of String
2594        input 2: Graph of String
2595        
2596
2597    Returns:
2598        Graph: A graph node producing a String.
2599    """
2600    bool_parsed = parse_bool_graph(bool)
2601    input_1_parsed = parse_string_graph(input_1)
2602    input_2_parsed = parse_string_graph(input_2)
2603    return string_if_internal(bool_parsed, input_1_parsed, input_2_parsed)

String If

If the boolean is true returns input 1, otherwise input 2. Type: String

Args: bool: Graph of Bool input 1: Graph of String input 2: Graph of String

Returns: Graph: A graph node producing a String.

def transform2_identity() -> Graph:
2605def transform2_identity() -> Graph:
2606    """Transform 2D Identity
2607
2608    Creates a 2D transform that is the identity transform.
2609
2610    Returns:
2611        Graph: A graph node producing a Transform2.
2612    """
2613    return transform2_identity_internal()

Transform 2D Identity

Creates a 2D transform that is the identity transform.

Returns: Graph: A graph node producing a Transform2.

def transform2_rotate(transform, angle) -> Graph:
2615def transform2_rotate(transform, angle) -> Graph:
2616    """Transform 2D Rotate
2617
2618    Applies a rotation to a 2D transform. Rotation is in radians.
2619
2620    Args:
2621        transform: Graph of Transform2
2622        angle in radians: Graph of Float
2623        
2624
2625    Returns:
2626        Graph: A graph node producing a Transform2.
2627    """
2628    transform_parsed = parse_graph(transform)
2629    angle_parsed = parse_float_graph(angle)
2630    return transform2_rotate_internal(transform_parsed, angle_parsed)

Transform 2D Rotate

Applies a rotation to a 2D transform. Rotation is in radians.

Args: transform: Graph of Transform2 angle in radians: Graph of Float

Returns: Graph: A graph node producing a Transform2.

def transform2_scale(transform, scale) -> Graph:
2632def transform2_scale(transform, scale) -> Graph:
2633    """Transform 2D Scale
2634
2635    Applies a scale to a 2D transform.
2636
2637    Args:
2638        transform: Graph of Transform2
2639        scale: Graph of Vector2f
2640        
2641
2642    Returns:
2643        Graph: A graph node producing a Transform2.
2644    """
2645    transform_parsed = parse_graph(transform)
2646    scale_parsed = parse_graph(scale)
2647    return transform2_scale_internal(transform_parsed, scale_parsed)

Transform 2D Scale

Applies a scale to a 2D transform.

Args: transform: Graph of Transform2 scale: Graph of Vector2f

Returns: Graph: A graph node producing a Transform2.

def transform2_to_list(item) -> Graph:
2649def transform2_to_list(item) -> Graph:
2650    """Transform 2D to List
2651
2652    Converts Transform 2D to a single item list
2653
2654    Args:
2655        item: Graph of Transform2
2656        
2657
2658    Returns:
2659        Graph: A graph node producing a Transform2List.
2660    """
2661    item_parsed = parse_graph(item)
2662    return transform2_to_list_internal(item_parsed)

Transform 2D to List

Converts Transform 2D to a single item list

Args: item: Graph of Transform2

Returns: Graph: A graph node producing a Transform2List.

def transform2_translation(transform, translation) -> Graph:
2664def transform2_translation(transform, translation) -> Graph:
2665    """Transform 2D Translation
2666
2667    Applies a translation to a 2D transform.
2668
2669    Args:
2670        transform: Graph of Transform2
2671        translation: Graph of Vector2f
2672        
2673
2674    Returns:
2675        Graph: A graph node producing a Transform2.
2676    """
2677    transform_parsed = parse_graph(transform)
2678    translation_parsed = parse_graph(translation)
2679    return transform2_translation_internal(transform_parsed, translation_parsed)

Transform 2D Translation

Applies a translation to a 2D transform.

Args: transform: Graph of Transform2 translation: Graph of Vector2f

Returns: Graph: A graph node producing a Transform2.

def upload_file_path(path, url, content_type) -> Graph:
2681def upload_file_path(path, url, content_type) -> Graph:
2682    """Upload File Path
2683
2684    Reads a file from a local path on disk and uploads its contents to a URL via PUT request
2685
2686    Args:
2687        local file path to read: Graph of String
2688        url: Graph of String
2689        content type: Graph of String
2690        
2691
2692    Returns:
2693        Graph: A graph node producing a Void.
2694    """
2695    path_parsed = parse_string_graph(path)
2696    url_parsed = parse_string_graph(url)
2697    content_type_parsed = parse_string_graph(content_type)
2698    return upload_file_path_internal(path_parsed, url_parsed, content_type_parsed)

Upload File Path

Reads a file from a local path on disk and uploads its contents to a URL via PUT request

Args: local file path to read: Graph of String url: Graph of String content type: Graph of String

Returns: Graph: A graph node producing a Void.

def vector2_int_to_vector2_float(vector) -> Graph:
2700def vector2_int_to_vector2_float(vector) -> Graph:
2701    """Vector 2 Int to Vector 2 Float
2702
2703    Given a Vector 2 Int. Creates a Vector 2 Float.
2704
2705    Args:
2706        vector: Graph of Vector2i
2707        
2708
2709    Returns:
2710        Graph: A graph node producing a Vector2f.
2711    """
2712    vector_parsed = parse_graph(vector)
2713    return vector2_int_to_vector2_float_internal(vector_parsed)

Vector 2 Int to Vector 2 Float

Given a Vector 2 Int. Creates a Vector 2 Float.

Args: vector: Graph of Vector2i

Returns: Graph: A graph node producing a Vector2f.

def vector2f_add(lhs, rhs) -> Graph:
2715def vector2f_add(lhs, rhs) -> Graph:
2716    """Vector 2 Float Add
2717
2718    Add two Vector 2s of Floats
2719
2720    Args:
2721        The vector on the left hand side of the add: Graph of Vector2f
2722        The vector on the right hand side of the add: Graph of Vector2f
2723        
2724
2725    Returns:
2726        Graph: A graph node producing a Vector2f.
2727    """
2728    lhs_parsed = parse_graph(lhs)
2729    rhs_parsed = parse_graph(rhs)
2730    return vector2f_add_internal(lhs_parsed, rhs_parsed)

Vector 2 Float Add

Add two Vector 2s of Floats

Args: The vector on the left hand side of the add: Graph of Vector2f The vector on the right hand side of the add: Graph of Vector2f

Returns: Graph: A graph node producing a Vector2f.

def vector2f_add_to_dictionary(dictionary, key, value) -> Graph:
2732def vector2f_add_to_dictionary(dictionary, key, value) -> Graph:
2733    """Vector 2 Float Add To Dictionary
2734
2735    Adds a Vector 2 Float to a Dictionary
2736
2737    Args:
2738        dictionary: Graph of Dictionary
2739        key: Graph of String
2740        value: Graph of Vector2f
2741        
2742
2743    Returns:
2744        Graph: A graph node producing a Dictionary.
2745    """
2746    dictionary_parsed = parse_graph(dictionary)
2747    key_parsed = parse_string_graph(key)
2748    value_parsed = parse_graph(value)
2749    return vector2f_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)

Vector 2 Float Add To Dictionary

Adds a Vector 2 Float to a Dictionary

Args: dictionary: Graph of Dictionary key: Graph of String value: Graph of Vector2f

Returns: Graph: A graph node producing a Dictionary.

def vector2f_from_components(x, y) -> Graph:
2751def vector2f_from_components(x, y) -> Graph:
2752    """Vector 2 Float from Components
2753
2754    Given an x and y creates a vector.
2755
2756    Args:
2757        x: Graph of Float
2758        y: Graph of Float
2759        
2760
2761    Returns:
2762        Graph: A graph node producing a Vector2f.
2763    """
2764    x_parsed = parse_float_graph(x)
2765    y_parsed = parse_float_graph(y)
2766    return vector2f_from_components_internal(x_parsed, y_parsed)

Vector 2 Float from Components

Given an x and y creates a vector.

Args: x: Graph of Float y: Graph of Float

Returns: Graph: A graph node producing a Vector2f.

def vector2f_normalize(vector) -> Graph:
2768def vector2f_normalize(vector) -> Graph:
2769    """Vector 2 Float Normalize
2770
2771    Normalizes a Vector. Converting it's length to 1.
2772
2773    Args:
2774        Vector: Graph of Vector2f
2775        
2776
2777    Returns:
2778        Graph: A graph node producing a Vector2f.
2779    """
2780    vector_parsed = parse_graph(vector)
2781    return vector2f_normalize_internal(vector_parsed)

Vector 2 Float Normalize

Normalizes a Vector. Converting it's length to 1.

Args: Vector: Graph of Vector2f

Returns: Graph: A graph node producing a Vector2f.

def vector2f_passthrough(value) -> Graph:
2783def vector2f_passthrough(value) -> Graph:
2784    """Vector 2 Float Passthrough
2785
2786    Responds with the value provided. Doing nothing to it.
2787
2788    Args:
2789        value: Graph of Vector2f
2790        
2791
2792    Returns:
2793        Graph: A graph node producing a Vector2f.
2794    """
2795    value_parsed = parse_graph(value)
2796    return vector2f_passthrough_internal(value_parsed)

Vector 2 Float Passthrough

Responds with the value provided. Doing nothing to it.

Args: value: Graph of Vector2f

Returns: Graph: A graph node producing a Vector2f.

def vector2f_scalar_multiply(vector, scalar) -> Graph:
2798def vector2f_scalar_multiply(vector, scalar) -> Graph:
2799    """Vector 2 Float Scalar Multiply
2800
2801    Multiplies each element of the Vector as a scalar
2802
2803    Args:
2804        Vector: Graph of Vector2f
2805        Scalar: Graph of Float
2806        
2807
2808    Returns:
2809        Graph: A graph node producing a Vector2f.
2810    """
2811    vector_parsed = parse_graph(vector)
2812    scalar_parsed = parse_float_graph(scalar)
2813    return vector2f_scalar_multiply_internal(vector_parsed, scalar_parsed)

Vector 2 Float Scalar Multiply

Multiplies each element of the Vector as a scalar

Args: Vector: Graph of Vector2f Scalar: Graph of Float

Returns: Graph: A graph node producing a Vector2f.

def vector2f_x(vector) -> Graph:
2815def vector2f_x(vector) -> Graph:
2816    """Vector 2 Float get X
2817
2818    Retrieves the X component of a Vector 2 Float.
2819
2820    Args:
2821        vector: Graph of Vector2f
2822        
2823
2824    Returns:
2825        Graph: A graph node producing a Float.
2826    """
2827    vector_parsed = parse_graph(vector)
2828    return vector2f_x_internal(vector_parsed)

Vector 2 Float get X

Retrieves the X component of a Vector 2 Float.

Args: vector: Graph of Vector2f

Returns: Graph: A graph node producing a Float.

def vector2f_y(vector) -> Graph:
2830def vector2f_y(vector) -> Graph:
2831    """Vector 2 Float get Y
2832
2833    Retrieves the Y component of a Vector 2 Float.
2834
2835    Args:
2836        vector: Graph of Vector2f
2837        
2838
2839    Returns:
2840        Graph: A graph node producing a Float.
2841    """
2842    vector_parsed = parse_graph(vector)
2843    return vector2f_y_internal(vector_parsed)

Vector 2 Float get Y

Retrieves the Y component of a Vector 2 Float.

Args: vector: Graph of Vector2f

Returns: Graph: A graph node producing a Float.

def vector2i_add(lhs, rhs) -> Graph:
2845def vector2i_add(lhs, rhs) -> Graph:
2846    """Vector 2 Int Add
2847
2848    Add two Vector 2s of Ints
2849
2850    Args:
2851        The vector on the left hand side of the add: Graph of Vector2i
2852        The vector on the right hand side of the add: Graph of Vector2i
2853        
2854
2855    Returns:
2856        Graph: A graph node producing a Vector2i.
2857    """
2858    lhs_parsed = parse_graph(lhs)
2859    rhs_parsed = parse_graph(rhs)
2860    return vector2i_add_internal(lhs_parsed, rhs_parsed)

Vector 2 Int Add

Add two Vector 2s of Ints

Args: The vector on the left hand side of the add: Graph of Vector2i The vector on the right hand side of the add: Graph of Vector2i

Returns: Graph: A graph node producing a Vector2i.

def vector2i_add_to_dictionary(dictionary, key, value) -> Graph:
2862def vector2i_add_to_dictionary(dictionary, key, value) -> Graph:
2863    """Vector 2 Int Add To Dictionary
2864
2865    Adds a Vector 2 Int to a Dictionary
2866
2867    Args:
2868        dictionary: Graph of Dictionary
2869        key: Graph of String
2870        value: Graph of Vector2i
2871        
2872
2873    Returns:
2874        Graph: A graph node producing a Dictionary.
2875    """
2876    dictionary_parsed = parse_graph(dictionary)
2877    key_parsed = parse_string_graph(key)
2878    value_parsed = parse_graph(value)
2879    return vector2i_add_to_dictionary_internal(dictionary_parsed, key_parsed, value_parsed)

Vector 2 Int Add To Dictionary

Adds a Vector 2 Int to a Dictionary

Args: dictionary: Graph of Dictionary key: Graph of String value: Graph of Vector2i

Returns: Graph: A graph node producing a Dictionary.

def vector2i_from_components(x, y) -> Graph:
2881def vector2i_from_components(x, y) -> Graph:
2882    """Vector 2 Int from Components
2883
2884    Given an x and y creates a vector.
2885
2886    Args:
2887        x: Graph of Int
2888        y: Graph of Int
2889        
2890
2891    Returns:
2892        Graph: A graph node producing a Vector2i.
2893    """
2894    x_parsed = parse_int_graph(x)
2895    y_parsed = parse_int_graph(y)
2896    return vector2i_from_components_internal(x_parsed, y_parsed)

Vector 2 Int from Components

Given an x and y creates a vector.

Args: x: Graph of Int y: Graph of Int

Returns: Graph: A graph node producing a Vector2i.

def vector2i_passthrough(value) -> Graph:
2898def vector2i_passthrough(value) -> Graph:
2899    """Vector 2 Int Passthrough
2900
2901    Responds with the value provided. Doing nothing to it.
2902
2903    Args:
2904        value: Graph of Vector2i
2905        
2906
2907    Returns:
2908        Graph: A graph node producing a Vector2i.
2909    """
2910    value_parsed = parse_graph(value)
2911    return vector2i_passthrough_internal(value_parsed)

Vector 2 Int Passthrough

Responds with the value provided. Doing nothing to it.

Args: value: Graph of Vector2i

Returns: Graph: A graph node producing a Vector2i.

def vector2i_to_vector2f(vector) -> Graph:
2913def vector2i_to_vector2f(vector) -> Graph:
2914    """Vector 2 Int to Vector 2 Float
2915
2916    Given a Vector 2 Int. Creates a Vector 2 Float.
2917
2918    Args:
2919        vector: Graph of Vector2i
2920        
2921
2922    Returns:
2923        Graph: A graph node producing a Vector2f.
2924    """
2925    vector_parsed = parse_graph(vector)
2926    return vector2i_to_vector2f_internal(vector_parsed)

Vector 2 Int to Vector 2 Float

Given a Vector 2 Int. Creates a Vector 2 Float.

Args: vector: Graph of Vector2i

Returns: Graph: A graph node producing a Vector2f.

def vector2i_x(vector) -> Graph:
2928def vector2i_x(vector) -> Graph:
2929    """Vector 2 Int get X
2930
2931    Retrieves the X component of a Vector 2 Int.
2932
2933    Args:
2934        vector: Graph of Vector2i
2935        
2936
2937    Returns:
2938        Graph: A graph node producing a Int.
2939    """
2940    vector_parsed = parse_graph(vector)
2941    return vector2i_x_internal(vector_parsed)

Vector 2 Int get X

Retrieves the X component of a Vector 2 Int.

Args: vector: Graph of Vector2i

Returns: Graph: A graph node producing a Int.

def vector2i_y(vector) -> Graph:
2943def vector2i_y(vector) -> Graph:
2944    """Vector 2 Int get Y
2945
2946    Retrieves the Y component of a Vector 2 Int.
2947
2948    Args:
2949        vector: Graph of Vector2i
2950        
2951
2952    Returns:
2953        Graph: A graph node producing a Int.
2954    """
2955    vector_parsed = parse_graph(vector)
2956    return vector2i_y_internal(vector_parsed)

Vector 2 Int get Y

Retrieves the Y component of a Vector 2 Int.

Args: vector: Graph of Vector2i

Returns: Graph: A graph node producing a Int.

def vector3f_add(lhs, rhs) -> Graph:
2958def vector3f_add(lhs, rhs) -> Graph:
2959    """Vector 3 Float Add
2960
2961    Add two Vector 3s of Floats
2962
2963    Args:
2964        The vector on the left hand side of the add: Graph of Vector3f
2965        The vector on the right hand side of the add: Graph of Vector3f
2966        
2967
2968    Returns:
2969        Graph: A graph node producing a Vector3f.
2970    """
2971    lhs_parsed = parse_graph(lhs)
2972    rhs_parsed = parse_graph(rhs)
2973    return vector3f_add_internal(lhs_parsed, rhs_parsed)

Vector 3 Float Add

Add two Vector 3s of Floats

Args: The vector on the left hand side of the add: Graph of Vector3f The vector on the right hand side of the add: Graph of Vector3f

Returns: Graph: A graph node producing a Vector3f.

def vector3f_from_components(x, y, z) -> Graph:
2975def vector3f_from_components(x, y, z) -> Graph:
2976    """Vector 3 Float from Components
2977
2978    Given an x, y and z creates a vector floats.
2979
2980    Args:
2981        x: Graph of Float
2982        y: Graph of Float
2983        z: Graph of Float
2984        
2985
2986    Returns:
2987        Graph: A graph node producing a Vector3f.
2988    """
2989    x_parsed = parse_float_graph(x)
2990    y_parsed = parse_float_graph(y)
2991    z_parsed = parse_float_graph(z)
2992    return vector3f_from_components_internal(x_parsed, y_parsed, z_parsed)

Vector 3 Float from Components

Given an x, y and z creates a vector floats.

Args: x: Graph of Float y: Graph of Float z: Graph of Float

Returns: Graph: A graph node producing a Vector3f.

def vector3f_normalize(vector) -> Graph:
2994def vector3f_normalize(vector) -> Graph:
2995    """Vector 3 Normalize
2996
2997    Normalizes a Vector 3 Float. Converting it's length to 1.
2998
2999    Args:
3000        Vector: Graph of Vector3f
3001        
3002
3003    Returns:
3004        Graph: A graph node producing a Vector3f.
3005    """
3006    vector_parsed = parse_graph(vector)
3007    return vector3f_normalize_internal(vector_parsed)

Vector 3 Normalize

Normalizes a Vector 3 Float. Converting it's length to 1.

Args: Vector: Graph of Vector3f

Returns: Graph: A graph node producing a Vector3f.

def vector3f_x(vector) -> Graph:
3009def vector3f_x(vector) -> Graph:
3010    """Vector 3D Float X
3011
3012    Gets the value in the x component for the provided vector
3013
3014    Args:
3015        vector: Graph of Vector3f
3016        
3017
3018    Returns:
3019        Graph: A graph node producing a Float.
3020    """
3021    vector_parsed = parse_graph(vector)
3022    return vector3f_x_internal(vector_parsed)

Vector 3D Float X

Gets the value in the x component for the provided vector

Args: vector: Graph of Vector3f

Returns: Graph: A graph node producing a Float.

def vector3f_y(vector) -> Graph:
3024def vector3f_y(vector) -> Graph:
3025    """Vector 3D Y Float
3026
3027    Gets the value in the y component for the provided vector
3028
3029    Args:
3030        vector: Graph of Vector3f
3031        
3032
3033    Returns:
3034        Graph: A graph node producing a Float.
3035    """
3036    vector_parsed = parse_graph(vector)
3037    return vector3f_y_internal(vector_parsed)

Vector 3D Y Float

Gets the value in the y component for the provided vector

Args: vector: Graph of Vector3f

Returns: Graph: A graph node producing a Float.

def vector3f_z(vector) -> Graph:
3039def vector3f_z(vector) -> Graph:
3040    """Vector 3D Float Z
3041
3042    Gets the value in the z component for the provided vector
3043
3044    Args:
3045        vector: Graph of Vector3f
3046        
3047
3048    Returns:
3049        Graph: A graph node producing a Float.
3050    """
3051    vector_parsed = parse_graph(vector)
3052    return vector3f_z_internal(vector_parsed)

Vector 3D Float Z

Gets the value in the z component for the provided vector

Args: vector: Graph of Vector3f

Returns: Graph: A graph node producing a Float.

def xor(bool1, bool2) -> Graph:
3054def xor(bool1, bool2) -> Graph:
3055    """Exclusive Or
3056
3057    Returns true if either the inputs are true. But false if both are true.
3058
3059    Args:
3060        the first bool: Graph of Bool
3061        The second bool: Graph of Bool
3062        
3063
3064    Returns:
3065        Graph: A graph node producing a Bool.
3066    """
3067    bool1_parsed = parse_bool_graph(bool1)
3068    bool2_parsed = parse_bool_graph(bool2)
3069    return xor_internal(bool1_parsed, bool2_parsed)

Exclusive Or

Returns true if either the inputs are true. But false if both are true.

Args: the first bool: Graph of Bool The second bool: Graph of Bool

Returns: Graph: A graph node producing a Bool.