Create scrolling airline

Good afternoon everyone,
Could someone give me an idea of how to create a moving line to simulate a plane traveling from Barcelona (Spain) to Lisbon (Portugal)? I don’t know if I have explained myself clearly. I send you an example of my idea. Thank you very much. Anie

@Namna shows how to do this here:

I did something to enable this some time ago, see here for an example of multiple paths, with different objects,

https://elusien.co.uk/shotcut/resources/Tour_of_Cyprus.html

but this requires you to use an SVG, see:

1 Like

Something like this?

Here’s a summary of how I did it: To get the source files, I pulled free clip-art of an airplane from the internet, and used GIMP to put a shadow under it; saved as a .png with transparent background. I used Inkscape to generate a dashed white line on a transparent background and saved that as a .png. Finally, I went into Google maps, set the Zoom and location appropriately, and saved a screenshot; I then cropped it to get just the part I wanted as the background.

I created three video tracks. The bottom track has the map clip; the second track has the dashed-line clip; the top track has the airplane clip.

To animate the dashed line: I turned off the airplane track so that it would not be in the way. I selected the dashed-line clip and applied a crop:rectangle filter. I used keyframes and set the filter to have position=1920, size=0 through the first .5 seconds, then grow to position=0, size=1920 over the next 4 seconds. This will make the line show up from right to left over a span of 4 seconds. With the playhead set to show the full line, I added an SPR filter AFTER the crop filter (the order is important!), and sized and rotated the dashed line so that it stretches between Barcelona and Lisbon on the underlying map.

To animate the plane, I applied an SPR filter, sized the airplane to what I wanted, and rotated it to match the angle of the line. I positioned the airplane with its nose at Barcelona. I positioned the playhead at .5 seconds and put in a keyframe. With keyframes still showing, I moved the playhead to the 4.5 second mark and moved the airplane over to where its nose is at Lisbon - moving the plane (e.g., moving the center point of the SPR filter) will automatically create a new keyframe at the current playhead location.

Here is the .mlt project and the image files that I used to produce this. Note that the dashed-line file is a white line on a transparent background, so it will just look like a blank space until you pass your mouse over it:

airline.mlt (10.7 KB)



6 Likes

Good afternoon, I have been trying, but I don’t know how to do it. I appreciate your help @Elusien

This is exactly what I am looking for! It’s great!!! Thank you!!! @despert
I will try again to follow the steps you mark!!!

Good to hear. Let us know if you run into any problems!

Incidentally, I just learned that “despert” is the Catalan word for the English word “awake.” (My user name is actually my first initial, a, and the first four letters of my last name, wake - but of course, put together it looks like I am claiming to be “awake” … which is only true after several cups of coffee!)

1 Like

Bonjour,

*@awake , Merci pour ce tutoriel. *
J’ai essayé de reproduire cette séquence, mais sans l’aide de logiciels externes. Shotcut a de formidables possibilités sans avoir besoin d’utiliser des ressources externes.
J’ai donc utilisé 4 pistes:
- V1 identique, la carte copie d’écran de Google Maps
- V2 Un clip de couleur rouge avec un filtre Mask: Simple Shape. Deux images-clés pour tracer la ligne Barcelone Lisbonne
- V4 Un clip transparent avec un filtre Text: Simple pour dessiner l’avion. Certaines polices disposent de symboles à la place des lettres. Dans ce cas, j’utilise la police Zapf Dingbats caractère U+2708 qui représente un avion. Un filtre SPR pour l’orienter parallèle au trajet et 2 images-clés pour le déplacer.
- V3 Un clip transparent sur lequel je copie les filtres de V4 pour créer l’ombre de l’avion. J’ai appliqué la méthode expliquée dans le tutoriel de @Musicalbox , merci à lui.
https://forum.shotcut.org/t/quick-tutorial-text-drop-shadows/28607

Voici le résultat.

Hello.

@awake , Thanks for this tutorial.
I tried to reproduce this sequence, but without the help of external software. Shotcut has great possibilities without the need to use external resources.
So I used 4 tracks:

  • V1 identical, screen shot map from Google Maps
  • V2 A red color clip with a Mask: Simple Shape filter. Two keyframes to draw the Barcelona-Lisbon line
  • V4 A transparent clip with a Text: Simple filter to draw the plane. Some fonts have symbols instead of letters. In this case, I use the font Zapf Dingbats character U+2708 which represents a plane. An SPR filter to orient it parallel to the path and 2 keyframes to move it.
  • V3 A transparent clip on which I copy the filters of V4 to create the shadow of the plane. I applied the method explained in @Musicalbox’s tutorial, thanks to him.
    Quick Tutorial - Text drop shadows

Here is the result.

Translated with www.DeepL.com/Translator (free version)

7 Likes

The shadow adds a nice touch @Namna

Very nice, @Namna! I did think about making the line in Shotcut rather than using Inkscape; the main reason I didn’t go that route was wanting it to be a dashed line. The only way I could think of to create a dashed line in Shotcut was with a multitude of filters, one for each gap (or conversely, one for each line segment). But maybe there is a simpler way to get a dashed line entirely within Shotcut?

I never thought about a unicode airplane - very clever!! And your shadow was excellent - making it move further away and then back closer to represent taking off and landing was a very nice touch.

1 Like

Effectivement, c’est pour cela que j’ai simplifié avec une ligne continue. Si vraiment on veut une ligne en pointillés, votre solution est meilleure. :wink:

Indeed, that’s why I simplified with a continuous line. If you really want a dotted line, your solution is better. :wink:

2 Likes

This leads me to think that a “line:simple” filter would be a very useful addition to Shotcut - similar to the text:simple filter, it could be generated as a clip or applied to a clip; parameters could include type of line (e.g., solid, dashed, dotted), color, starting point, length, thickness, rotation. I would think this might not be too hard to do … ??? (I really, really want to start digging into the code and see if I can contribute something like this … but this little thing called a full-time job seems to get in the way!)

1 Like

Look for a rather cool, new, open source 2D animation program called glaxnimate and see if you can improve its ffmpeg integration to export a video with alpha channel. Unfortunately, WebP animation does not load in FFmpeg currently.

2 Likes

I made this dashed red line in Shotcut!!
Method:

7 tracks:
V1 red colour clip. Size: 50 x 20
V2 copied V1, offset left = 70
V3 copied V2, offset left = 140

continue, offsetting in multiples of 70…

After V7, this gets you one quarter of the way across. Export as a frame,
re-import, copy, offset by 490. This takes you half way.

Export as a frame, import, then copy, offset by 980.
DONE!
Screenshot:


MLT:
Dashed red line.mlt (21.9 KB)
Final graphic:

4 Likes

@jonray , @awake , @Namna : A much easier way to create a dashed line is to use the Text: Simple filter and create a line of minus signs (e.g. ------------). Then use the Size, Position, Rotate, filter to zoom in as desired.

You can do a “dash-dot” line by using the sequence: -·-·-· etc. The dot character is actually the unicode Middle Dot" character ( U+00B7), not the full-stop/period. Use underscores for a continuous line (________).

4 Likes

You can also apply a Lens Correction filter to produce an arc instead of a straight line:

5 Likes

Oui, c’est une bonne solution.
Reste le problème de régler les espaces.

Yes, this is a good solution.
There is still the problem of adjusting the spaces.

Diapo105

2 Likes

There are a variety of unicode space characters, ranging from a zero-width space to a 1em space (the width of the letter M), as well as dashes. You could use different dashes with different spaces. See Unicode spaces and Dashes and hyphens

I realise this is fiddly and possibly clutching at straws, but it should work.

1 Like

Ahhh! So darn simple. Great solution!!

1 Like

Also 360: Transform using just the Yaw function with keyframes.

2021-09-30_20-56-55

And adjust other settings for more options like this:
2021-09-30_20-59-12

Source line image

3 Likes

That’s interesting. I haven’t tried the 360-degree filters. I’ll have to have a look at them.