| v tweet timeUnanswered diameter silenceCircle dummyData impactData avatars profiles edge | tweet := Tweet new. tweet scrapDataFromUrl: 'https://twitter.com/offrayLC/status/599196718152949760'. timeUnanswered := (Date today - tweet date) days. "Create profiles collecting information for all users mentioned in the tweet" profiles := OrderedCollection new. tweet mentions do: [:eachMention | profiles add: (TwitterProfile new scrapDataFromProfile: eachMention)]. "Use the profiles to create a collection of avatar images which are draggable elements on a view" avatars := OrderedCollection new. profiles do: [:eachProfile | avatars add: (RTBitmap new form: eachProfile avatar) element @ RTDraggable ]. "Creation of dummy data" dummyData := Dictionary new. dummyData at: 'retweeters' put: '5'; at: 'reach' put: '10k'. impactData := dummyData. "Creating the view and adding elements to it" v := RTView new. diameter := 75. silenceCircle := Tweet new labeledCircleSized: diameter upperLabel: (impactData at: 'retweeters') bottomLabel: (impactData at: 'reach') inView: v. silenceCircle @ RTDraggable. avatars do: [:avatar | v add: avatar]. silenceCircle translateBy: (timeUnanswered*10)@0. "Add the gradient line between elements" edge := RTEdge from:(avatars at: 1) to: silenceCircle. v add: (edge + (RTGradientColoredLine new colors: (Array with: (Color blue alpha:0.3) with: (Color red alpha:0.9)); precision: 100; gradientColorShape)). v view canvas focusOnCenterScaled.