Jump to: Board index » General » Fusion

Connect Text path to polyline/B-Spline

Learn about 3D compositing, animation, broadcast design and VFX workflows.
  • Author
  • Message
Offline

appletini

  • Posts: 12
  • Joined: Wed Oct 12, 2022 6:52 pm
  • Real Name: Nadine Albertini

Connect Text path to polyline/B-Spline

PostTue Apr 02, 2024 7:59 am

Is there a possibility to connect the path of the text node to a polyline / B-Spline or paint node?
I couldn't figure it out myself.

The goal is to make the text move along a thick line without the line moving.
I attached a picture for your reference.

Thanks for your help!
Attachments
text along path.png
text along path.png (458.56 KiB) Viewed 466 times
Offline

Sander de Regt

  • Posts: 3604
  • Joined: Thu Nov 13, 2014 10:09 pm

Re: Connect Text path to polyline/B-Spline

PostTue Apr 02, 2024 8:22 am

Yes, you must publish the polyline first, then you can connect the path of the text node to the published polyline.

Like this:

Code: Select all
{
   Tools = ordered() {
      Text1 = TextPlus {
         CtrlWZoom = false,
         Inputs = {
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            LayoutType = Input { Value = 3, },
            PositionOnPath = Input { Value = -0.63, },
            LayoutRotation = Input { Value = 1, },
            TransformRotation = Input { Value = 1, },
            Softness1 = Input { Value = 1, },
            StyledText = Input { Value = "VERY LONG TEXT THAT MOVES ALONG THE PUBLISHED PATH", },
            Font = Input { Value = "Open Sans", },
            Style = Input { Value = "Bold", },
            Size = Input { Value = 0.03, },
            VerticalJustificationNew = Input { Value = 3, },
            HorizontalJustificationNew = Input { Value = 3, },
            Path = Input {
               SourceOp = "Publish1",
               Source = "Value",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 440, -16.5 } },
      },
      Publish1 = PublishPolyLine {
         CtrlWZoom = false,
         Inputs = {
            Value = Input {
               Value = Polyline {
                  Closed = true,
                  Points = {
                     { X = -0.275520833333333, Y = 0.167592592592593, LX = -0.0474178295350613, LY = -0.0773379482732907, RX = 0.0603851255983044, RY = 0.0984874627495281 },
                     { X = -0.0302083333333334, Y = 0.196296296296296, LX = -0.067583012943063, LY = 0.082393256280555, RX = 0.0584238728443767, RY = -0.0712269684132718 },
                     { X = 0.00624999999999998, Y = -0.175925925925926, LX = 0.0522014740985171, LY = 0.0851400189170514, RX = -0.0647327922487495, RY = -0.10557845830581 },
                     { X = -0.257291666666667, Y = -0.174074074074074, LX = 0.0689080252064287, LY = -0.0968675055315991, RX = -0.0504762559952644, RY = 0.0709570328301837 }
                  }
               },
            },
         },
      },
      Polygon1 = PolylineMask {
         DrawMode = "InsertAndModify",
         DrawMode2 = "InsertAndModify",
         Inputs = {
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            BorderWidth = Input { Value = 0.025, },
            Solid = Input { Value = 0, },
            MaskWidth = Input { Value = 1920, },
            MaskHeight = Input { Value = 1080, },
            PixelAspect = Input { Value = { 1, 1 }, },
            ClippingMode = Input { Value = FuID { "None" }, },
            Polyline = Input {
               SourceOp = "Publish1",
               Source = "Value",
            },
            Polyline2 = Input {
               Value = Polyline {
               },
               Disabled = true,
            },
         },
         ViewInfo = OperatorInfo { Pos = { 275, 16.5 } },
      },
      Merge1 = Merge {
         Inputs = {
            Background = Input {
               SourceOp = "Background1",
               Source = "Output",
            },
            Foreground = Input {
               SourceOp = "Text1",
               Source = "Output",
            },
            PerformDepthMerge = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { 495, 82.5 } },
      },
      Background1 = Background {
         Inputs = {
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            TopLeftRed = Input { Value = 1, },
            EffectMask = Input {
               SourceOp = "Polygon1",
               Source = "Mask",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 275, 82.5 } },
      }
   }
}
Sander de Regt

ShadowMaker SdR
The Netherlands

Return to Fusion

Who is online

Users browsing this forum: No registered users and 13 guests