Home > OS >  Find the coordinates of the vertices of a cube with given central coordinates and length in python
Find the coordinates of the vertices of a cube with given central coordinates and length in python

Time:09-20

I want to find the coordinates of the vertices of a cube with given central coordinates (Xc,Yc,Zc) and length (SL)

def vertices(Xc,Yc,Zc,SL):
    f1 = [(0.5*SL)  Xc,Yc,Zc]  
    f2 = [(0.5*SL)- Xc,Yc,Zc]
  
    
    x1 = [f1[0],(f1[1])-(0.5*SL), (f1[2]) (0.5*SL)]
    x2 = [f1[0],(f1[1]) (0.5*SL), (f1[2]) (0.5*SL)]
    x3 = [f1[0],(f1[1])-(0.5*SL), (f1[2])-(0.5*SL)]
    x4 = [f1[0],(f1[1]) (0.5*SL), (f1[2])-(0.5*SL)]
    x5 = [f2[0],(f2[1])-(0.5*SL), (f2[2]) (0.5*SL)]
    x6 = [f2[0],(f2[1]) (0.5*SL), (f2[2]) (0.5*SL)]
    x7 = [f2[0],(f2[1])-(0.5*SL), (f2[2])-(0.5*SL)]
    x8 = [f2[0],(f2[1]) (0.5*SL), (f2[2])-(0.5*SL)]
    
    return x1,x2,x3,x4,x5,x6,x7,x8
x1,x2,x3,x4,x5,x6,x7,x8 = vertices(5,5,5,8)

CodePudding user response:

It's best if you return a list with 8 points (sublists) than 8 different variables.

From the caller perspective it will be the same, you can still unpack it as 8 different variables.

def vertices(Xc,Yc,Zc,SL):
    return [[Xc   SL/2, Yc   SL/2, Zc   SL/2],
            [Xc   SL/2, Yc   SL/2, Zc - SL/2],
            [Xc   SL/2, Yc - SL/2, Zc   SL/2],
            [Xc   SL/2, Yc - SL/2, Zc - SL/2],
            [Xc - SL/2, Yc   SL/2, Zc   SL/2],
            [Xc - SL/2, Yc   SL/2, Zc - SL/2],
            [Xc - SL/2, Yc - SL/2, Zc   SL/2],
            [Xc - SL/2, Yc - SL/2, Zc - SL/2]]
  • Related