Pontos equidistantes em um cubo

Eu preciso inicializar alguns pontos tridimensionais, e eu quero que eles sejam igualmente espaçados ao longo de um cubo. Existe alguma maneira criativa de fazer isso?

Estou usando um algoritmo iterativo de maximização de expectativa e quero que meus vetores iniciais "expandam" o espaço uniformemente.

Por exemplo, suponha que eu tenha oito pontos que eu queira espaçar igualmente em um cubo de 1x1x1. Eu quero os pontos nos cantos de um cubo com um comprimento de lado de 0,333, centrados no cubo maior.

Um exemplo 2D está abaixo. Observe que os pontos vermelhos são equidistantes entre si e as bordas. Eu quero o mesmo para o 3D.

Nos casos em que o número de pontos não tem uma raiz cúbica inteira, estou bem em deixar algumas "lacunas" no arranjo.

Atualmente estou tomando a raiz cúbica do número de pontos e usando isso para calcular o número de pontos e a distância desejada entre eles. Então eu percorro os pontos e incremento as coordenadas X, Y e Z (escalonadas de forma que Y não aumente até que X volte para 0, o mesmo para Z em relação a Y).

Se há uma maneira fácil de fazer isso no MATLAB, eu gostaria de usá-lo.

questionAnswers(5)

yourAnswerToTheQuestion