Wolfram Function Repository
Instantuse addon functions for the Wolfram Language
Function Repository Resource:
Compute the apparent visual shape of an object or region traveling with constant velocity
ResourceFunction["RelativisticInertialDeformedRegion"][region,speed,tObs,accuracyGoal] gives the deformed visual shape of region, intially positioned at the origin, traveling at speed along the positive x axis, at time tObs and with an accuracy of accuracyGoal. 

ResourceFunction["RelativisticInertialDeformedRegion"][region,speed,θ,ϕ,tObs,accuracyGoal] gives the deformed visual shape when region is traveling in the direction defined by spherical coordinates θ and ϕ. 

ResourceFunction["RelativisticInertialDeformedRegion"][region,vec,speed,θ,ϕ,tObs,accuracyGoal] gives the deformed visual shape when region is intially positioned at vec. 
Compute the apparent shape of a sphere with radius 2 moving with speed 0.9 in the positive x direction, as observed at different times:
In[1]:= 

Out[1]= 

If we use Graphics3D with visible axes, we can see that the sphere is only stretched or contracted in the x direction:
In[2]:= 

Move the sphere diagonally up and to the right, with a speed of 0.7:
In[3]:= 

Out[3]= 

Compute the shape of a sphere centered at (2,2,2) in the moving reference system and moving with a speed of 0.5 in the positive x direction:
In[4]:= 

Out[4]= 

Show the observed shape of a cone initially positioned at (1,1,1), moving at a speed of 0.9 in the positive x direction:
In[5]:= 

Out[5]= 

Simulate the visual appearance of different objects when traveling downwards with a speed of 0.95:
In[6]:= 

The shape of a vertical line at different times when moving in the x direction is a hyperbola, which degenerates to its asymptotes at time 0:
In[7]:= 

Show an icosahedron traveling with different speeds, observed at time 0:
In[8]:= 

In[9]:= 

We can also find the apparent shape of an implicit region:
In[10]:= 

Show the shape of this region traveling upwards with a velocity of 0.8 at different times:
In[11]:= 

Out[11]= 

Show a torus moving at different speeds. Note that the centroid approaches the left edge of the torus as the speed increases:
In[12]:= 

Out[12]= 

Plot the apparent length of a horizontal line versus time, when moving with a speed of 0.9 along the positive x axis:
In[13]:= 

Out[13]= 

Use a vertical line:
In[14]:= 

Out[14]= 

For some objects a higher accuracy goal may not work. For example, setting an accuracyGoal above 400 for the Wolfram Spikey leads to Mathematica running the code forever.
This work is licensed under a Creative Commons Attribution 4.0 International License