# VDA-FS

VDA-FS es un formato CAD de intercambio del datos para la transferencia de modelos de superficie de un sistema CAD a otro. Su nombre es una abreviatura de "Verband der Automobilindustrie - Flächenschnittstelle", el cual se traduce al español como "asociación de la industria automotriz (alemana) - interfaz de datos de superficies".
VDA-FS fue definido originalmente en el estándar DIN 66301 de 1986. Actualmente ha caído en desuso y ha sido reemplazado por STEP, ISO 10303.

## Elementos del lenguaje

Un archivo VDA-FS es un archivo de texto ASCII (de 7 bits) con columnas de 80 caracteres que contiene información geométrica, de estructura y comentarios; los caracteres de la columna 73 a la 80 de cada línea contienen números de sucesión no necesariamente consecutivos (parecidos a los números de un programa en BASIC) y alineados a la derecha.
El nombre del proyecto, los nombres de grupos y los nombres de los elementos geométricos deben estar en mayúsculas, no deben exceder 8 caracteres y pueden incluir dígitos del 0 al 9 excepto por el primer carácter.
Los elementos tienen la siguiente sintaxis (parecida a la del lenguaje APT):
o bien
donde la lista de parámetros es una colección de números de tipo entero (INTEGER) o flotante (REAL) separados por comas.

## Elementos de estructura

El archivo inicia con un encabezado de la forma
donde n es el número de líneas que seguirán en el encabezado (sin incluir la primera línea del encabezado). El mismo nombre se emplea para indicar el fin de archivo en la forma
Se pueden escribir comentarios en la forma
donde los símbolos $$ deben forzosamente estar en las primeras dos columnas de la línea. También es posible agrupar elementos geométricos entre pares

## Elementos geométricos

Se pueden definir los siguientes elementos geométricos:
| Tipo | Instrucción |
| Punto | POINT |
| Sucesión de puntos | PSET |
| Sucesión de pares punto-vector (Master dimension) | MDI |
| Curva | CURVE |
| Superficie | SURF |

### Punto

Sintaxis:
donde x, y, z son números que cooresponden a las coordenadas del punto. Por ejemplo:
P01 = POINT / 11.25, -105., +.38E15

### Sucesión de puntos

Sintaxis:
donde n es el número (entero) de puntos y xk, yk, zk son las coordenadas del k-ésimo punto. Este elemento geométrico está pensado para describir polígonos (o curvas descritas por medio de muchos puntos).

### Sucesión de pares punto-vector

Sintaxis:
donde n es el número (entero) de puntos, xk, yk, zk son las coordenadas del k-ésimo punto y vxk, vyk, y vzk son las componentes del k-ésimo vector.

### Curva

Sintaxis:
donde n es el número de segmentos de la curva, los $t_{k}$ son los n + 1 puntos que delimitan a las n curvas y [datos_de_curva_k] contiene el número de coeficientes (el grado + 1) necesarios para describir a la k-ésima curva seguido de los coeficientes para cada una de las tres coordenadas, es decir, es de la forma
donde $n_{k}$ es el orden (es decir, el grado + 1) de los tres polinomios ${\begin{array}{rcl}x(u)&=&a_{0}+a_{1}u+a_{2}u^{2}+\cdots +a_{n_{k}-1}u^{n_{k}-1},\\y(u)&=&b_{0}+b_{1}u+b_{2}u^{2}+\cdots +b_{n_{k}-1}u^{n_{k}-1},\\z(u)&=&c_{0}+c_{1}u+c_{2}u^{2}+\cdots +c_{n_{k}-1}u^{n_{k}-1}\\\end{array}}$ para $u={\frac {x-t_{k}}{t_{k+1}-t_{k}}}$ en el intervalo $[t_{k},t_{k+1}]$.

### Superficie

Las superficies se describen de manera similar a las curvas pero con dos variables $u$ y $v$.