How to procedurally generate levels/expand them using geolocation data for assets?

Hey,
I have heightmap data and geolocation data for railroads and signals for the whole of Germany.
The goal is to populate my level with assets depending on that location data.

I want to write a simulation of an object moving along that tracks. Something like a train simulator but way simpler. No brakes, no physics, just the object moving through all of Germany.

The concept is simple, but I need help starting this.

How do I procedurally load chunks of my heightmap and populate them with assets? The location of splines or assets is there. I just need a way to get them into the world so that I don’t have to built all of the world by hand.

Is there a way?