Arquivos do Tipo SKEL representam coleções de pontos e linhas poligonais, com
vértices compartilhados.
O sufixo convencional para arquivos SKEL é .skel.
Sintaxe:
[C][4][n]SKEL
[NDim] # Dimensão dos vértices, presente somente
# se nSKEL também estiver presente
NVértices NLinhaspoligonais
x[0] y[0] z[0] # Vértices
# se 4SKEL, cada vértice terá 4 componentes
# se nSKEL, each vértice terá NDim componentes
# se C[4][n]SKEL coordenadas de
# vértice são seguidas por uma
# especificação de cor RGBA
...
x[NVértices-1] y[NVértices-1] z[NVértices-1]
# linhas poligonais
# Nv = vértices sobre essa linha poligonal
# (1 = ponto)
# v[0] ... v[Nv-1]: índices de vértice
# no intervalo 0..NVértices-1
Nv v[0] v[1] ... v[Nv-1] [colorspec]
...
# colorspec continua adiante de v[Nv-1]
# atém encontrar um fim de linha; pode ser
# vazia, ou 3 ou 4 números.
# vazia: cor padrão
# 3 ou 4 números em ponto flutuante: valores RGB[A] no intervalo 0..1
A sintaxe é semelhante à sintaxe dos arquivos OFF, com uma tabela de vértices
seguidos de uma sequência de descrições de linhas poligonais, cada descrição referindo-se a vértices
através de índices na tabela. Cada linha poligonal tem uma cor opcional.
Para objetos nSKEL, cada vértice tem NDim componentes.
Para objetos 4nSKEL, cada vértice tem NDim+1 componentes;
a componente final é o divisor homogêneo.
Um formato [4][n]SKEL BINARY é aceito; veja Formato binario. Esse formato assemelha-se ao formato ASCII na maioria das formas que você pode esperar, com inteiros de 32-bit para todos os contadores e índices de vértice e números em ponto flutuante de 32-bit para posições de vértice.
Exceção: cada índice do vértice de linhas poligonais é seguido de um inteiro indicando quantas componentes de cor o acompanham. Componentes de cor de linhas poligonais devem ser inteiros em ponto flutuante, não valores inteiros. Dessa forma uma pouco colorida linha poligonal com 3 vértices pode ser representada como
int int int int int
3 17 5 9 0
enquanto a mesma linha poligonal colorida em vermelho pode ser
int int int int int float float float float
3 17 5 9 4 1.0 0.0 0.0 1.0