Create a Python script to automatically shift the points from a shapefile using a line (.shp)

Job ID: 31494804

Budget: $30 – $250 USD

Using a point shapefile (.shp) which contains ID, the coordinates of the points and the offset (that will be used to shift the points) and a line shapefile as the road (which helps to generate a buffer), you have to create a script that shift all the points on the right or on the left side of the road using the offset column (distance in meters), towards the exterior lines of the buffer (to the outside of the unit in which the point is framed)

I will provide you a line as .shp which represents the centroid line / the road. When we have a 2 set of points on the left side along this line, the points must be moved towards the exterior buffer's line (in this case, on the left how we look) with a defined distance mentioned on the shapefile. (eg. one point will be moved with 5 m, another one with 7 m towards the exterior lines of the buffer's lines).

I want to create a script in order to:
1. create a buffer from a line feature (using the centroid line/road as input) that cover a given distance and extract the marginal/exterior lines of this polygon buffer.
2. move all point features towards the extracted (exterior) lines with a given distance (offset) stored in a column of the shapefile (from the centroid line to the outside of the dial in which the point is framed). If the points are situated on the right side of the centroid line, then these ones will be moved to the right side towards the right exterior line resulted from the buffer
3. export a shapefile as deliverable with 3 columns to the .shp file:
- ID
- lat (geographic, degrees minutes seconds)
- long (geographic, degrees minutes seconds)

4. As deliverables, the script must export the .csv file which contains geographic coordinates (EPSG: 4326), the shapefile using EPSG 3844.


I only accept Python scripts or ArcMap models (created with the model builder)