## How to create a dotted circle

• Author
• Message

nova-era

• Posts: 1
• Joined: Wed Sep 30, 2020 2:10 pm
• Real Name: Seon Jae, Jeon
Hello?
I am following the tutorial of After Effects using Da Vinci Resolve.
Is there any way to create a dotted circle for a picture? I can't find a tutorial on YouTube.
Thank you.
Attachments
ring2.png (784.62 KiB) Viewed 235 times
ring.png (161.92 KiB) Viewed 235 times

GonshiRamushiyo

• Posts: 34
• Joined: Sun Feb 03, 2019 12:49 pm
• Location: 日本
• Real Name: 吉村真悟
Hi,

There are several ways to draw a dotted or dashed line, and you can find the following post on this forum as well.
https://forum.blackmagicdesign.com/viewtopic.php?f=22&t=61633

But looking at your reference, in this case it might be more appropriate to think of it as "cutting out part of a circle" as shown below.
Code: Select all
`{   Tools = ordered() {      Transform1 = Transform {         CtrlWZoom = false,         NameSet = true,         Inputs = {            Angle = Input { Value = 180, },            Input = Input {               SourceOp = "Paint1",               Source = "Output",            },         },         ViewInfo = OperatorInfo { Pos = { 465.538, 180.231 } },      },      Merge1 = Merge {         CtrlWZoom = false,         NameSet = true,         Inputs = {            Background = Input {               SourceOp = "Duplicate1",               Source = "Output",            },            Foreground = Input {               SourceOp = "Background1",               Source = "Output",            },            Operator = Input { Value = FuID { "Held Out" }, },            PerformDepthMerge = Input { Value = 0, },         },         ViewInfo = OperatorInfo { Pos = { 245.538, 180.231 } },      },      Paint1 = Paint {         NameSet = true,         Inputs = {            Input = Input {               SourceOp = "Merge1",               Source = "Output",            },            Paint = Input {               SourceOp = "Circle1_1",               Source = "Out",            },         },         ViewInfo = OperatorInfo { Pos = { 355.538, 180.231 } },      },      Circle1_1 = Circle {         IsThreaded = false,         Brushes = {         },         ApplyModes = { "PaintApplyColor" },         CtrlWZoom = false,         Inputs = {            Radius = Input { Value = 0.12189828103598, },            ["PaintApplyColor.Red"] = Input { Value = 0.470588237047195, },            ["PaintApplyColor.Green"] = Input { Value = 0.815686285495758, },            ["PaintApplyColor.Blue"] = Input { Value = 0.843137264251709, },         },      },      Background1 = Background {         NameSet = true,         Inputs = {            GlobalOut = Input { Value = 240, },            Width = Input { Value = 1080, },            Height = Input {               Value = 1080,               Expression = "Width",            },            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },            TopLeftRed = Input { Value = 0.47208, },            TopLeftGreen = Input { Value = 0.81629376, },            TopLeftBlue = Input { Value = 0.843, },            EffectMask = Input {               SourceOp = "Ellipse1",               Source = "Mask",            }         },         ViewInfo = OperatorInfo {            Pos = { 25.5385, 180.231 },            Flags = {               ShowPic = true            }         },      },      Ellipse1 = EllipseMask {         Inputs = {            BorderWidth = Input { Value = 0.15, },            Solid = Input { Value = 0, },            MaskWidth = Input { Value = 1920, },            MaskHeight = Input { Value = 1080, },            PixelAspect = Input { Value = { 1, 1 }, },            ClippingMode = Input { Value = FuID { "None" }, },            Width = Input { Value = 0.819, },            Height = Input {               Value = 0.819,               Expression = "Width",            },         },         ViewInfo = OperatorInfo { Pos = { -84.4615, 180.231 } },      },      Duplicate1 = Fuse.Duplicate {         NameSet = true,         Inputs = {            Copies = Input { Value = 5, },            Angle = Input { Value = 72, },            RandomSeed = Input { Value = 26024, },            Background = Input {               SourceOp = "Instance_Background1",               Source = "Output",            },         },         ViewInfo = OperatorInfo { Pos = { 135.538, 114.231 } },      },      Instance_Background1 = Background {         NameSet = true,         SourceOp = "Background1",         Inputs = {            ImageNest = Input { },            FrameRenderScriptNest = Input { },            EndRenderScripts = Input { },            SettingsNest = Input { },            StartRenderScripts = Input { },            BackgroundNest = Input { },            CommentsNest = Input { },            Height = Input {               Value = 1080,               Expression = "Width"            },            ["Gamut.ColorSpaceNest"] = Input { },            ["Gamut.GammaSpaceNest"] = Input { },            EffectMask = Input {               SourceOp = "Polygon1",               Source = "Mask",            }         },         ViewInfo = OperatorInfo { Pos = { 25.5385, 114.231 } },      },      Polygon1 = PolylineMask {         DrawMode = "InsertAndModify",         DrawMode2 = "InsertAndModify",         NameSet = true,         Inputs = {            MaskWidth = Input { Value = 1920, },            MaskHeight = Input { Value = 1080, },            PixelAspect = Input { Value = { 1, 1 }, },            ClippingMode = Input { Value = FuID { "None" }, },            Polyline = Input {               Value = Polyline {                  Closed = true,                  Points = {                     { Linear = true, X = -0.1, Y = 0.575385, LX = 0.0666666666666667, LY = 0, RX = 0.0333333333333333, RY = -0.191795, PublishID = "Point0" },                     { Linear = true, X = 0, Y = 0, LX = -0.0333333333333333, LY = 0.191795, RX = 0, RY = 0, PublishID = "Point1" },                     { Linear = true, X = 0, Y = 0, LX = 0, LY = 0, RX = 0.0333333333333333, RY = 0.191795, PublishID = "Point2" },                     { Linear = true, X = 0.1, Y = 0.575385, LX = -0.0333333333333333, LY = -0.191795, RX = -0.0666666666666667, RY = 0, PublishID = "Point3" }                  }               },            },            Polyline2 = Input {               Value = Polyline {               },               Disabled = true,            },            Point0 = Input { Value = { 0.4, 1.075385 }, },            Point1 = Input { Value = { 0.5, 0.5 }, },            Point2 = Input { Value = { 0.5, 0.5 }, },            Point3 = Input { Value = { 0.6, 1.075385 }, },         },         ViewInfo = OperatorInfo { Pos = { -84.4615, 114.231 } },      }   }}`

Sam Steti

• Posts: 1566
• Joined: Tue Jun 17, 2014 7:29 am
• Location: France
Barça vs Juventus ?
Legacy MacPro 8core Xeons, 32 Go ram, 2 x gtx 980 ti, 1SSD for system, 2 SSDs raid0 for footage and caches, OSX ElCap and High Sierra, Resolve 15.3 Studio

digitallysane

• Posts: 15
• Joined: Wed Sep 30, 2020 8:51 am
• Location: Romania
• Real Name: Dragos Stefan
Here's one way.
Use the "Last" field in the Duplicate3D "Copies" parameter to set the number of segments.
use the "Length" parameter in the Ellipse tool to set the gap size / length of a segment.

Code: Select all
`{   Tools = ordered() {      MediaOut1 = MediaOut {         Inputs = {            Index = Input { Value = "0", },            Input = Input {               SourceOp = "Renderer3D1",               Source = "Output",            },         },         ViewInfo = OperatorInfo { Pos = { 772, 126.47 } },      },      Renderer3D1 = Renderer3D {         CustomData = {            ToolVersion = 2,         },         Inputs = {            GlobalOut = Input { Value = 119, },            Width = Input { Value = 1920, },            Height = Input { Value = 1080, },            UseFrameFormatSettings = Input { Value = 1, },            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },            SceneInput = Input {               SourceOp = "Duplicate3D1",               Source = "Data3D",            },         },         ViewInfo = OperatorInfo { Pos = { 574.667, 127.273 } },      },      Duplicate3D1 = Duplicate3D {         CtrlWZoom = false,         Inputs = {            LastCopy = Input {               SourceOp = "Publish1",               Source = "Value",            },            ["Rotate.Z"] = Input {               SourceOp = "Angle_from_copies",               Source = "Result",            },            SceneInput = Input {               SourceOp = "ImagePlane3D1",               Source = "Output",            },         },         ViewInfo = OperatorInfo { Pos = { 464.667, 127.273 } },      },      Publish1 = PublishNumber {         Inputs = {            Value = Input { Value = 6, },         },      },      Angle_from_copies = Calculation {         CtrlWZoom = false,         NameSet = true,         Inputs = {            FirstOperand = Input { Value = 360, },            Operator = Input { Value = 3, },            SecondOperand = Input {               SourceOp = "Publish1",               Source = "Value",            },         },      },      ImagePlane3D1 = ImagePlane3D {         Inputs = {            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },            MaterialInput = Input {               SourceOp = "Background1",               Source = "Output",            },            ["MtlStdInputs.MaterialID"] = Input { Value = 1, },         },         ViewInfo = OperatorInfo { Pos = { 326.667, 127.879 } },      },      Background1 = Background {         Inputs = {            GlobalOut = Input { Value = 119, },            Width = Input { Value = 1000, },            Height = Input { Value = 1000, },            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },            TopLeftRed = Input { Value = 1, },            TopLeftGreen = Input { Value = 1, },            TopLeftBlue = Input { Value = 1, },            EffectMask = Input {               SourceOp = "Ellipse1",               Source = "Mask",            }         },         ViewInfo = OperatorInfo { Pos = { 216.667, 127.879 } },      },      Ellipse1 = EllipseMask {         Inputs = {            Filter = Input { Value = FuID { "Fast Gaussian" }, },            BorderWidth = Input { Value = 0.07, },            Solid = Input { Value = 0, },            CapStyle = Input { Value = 0, },            WriteLength = Input { Value = 0.134, },            MaskWidth = Input { Value = 1920, },            MaskHeight = Input { Value = 1080, },            PixelAspect = Input { Value = { 1, 1 }, },            UseFrameFormatSettings = Input { Value = 1, },            ClippingMode = Input { Value = FuID { "None" }, },         },         ViewInfo = OperatorInfo { Pos = { 216.667, 95.4848 } },      }   }}`