| Línia 273: | Línia 273: | ||
Supongamos el dibujo: | Supongamos el dibujo: | ||
/-------------------------------------------------------------------------------------\ | |||
| ..............OOOOOOOOOOO.OOOOOOOOOOO ..OOOOOOOOOOO.OOOOOOOOOOO............. | | |||
| O ..............OOOOO.OOOOO.OOOOO.OOOOO O.OOOOO.OOOOO.OOOOO.OOOOO............. O | | |||
| ..............OOOOO.OOOOO.OOOOO.OOOOO ..OOOOO.OOOOO.OOOOO.OOOOO............. | | |||
| ()..............OOOOO.OOOOO.OOOOO.OOOOO()..OOOOO.OOOOO.OOOOO.OOOOO.............() | | |||
| ..............OOOOO.OOOOO.OOOOO.OOOOO ..OOOOO.OOOOO.OOOOO.OOOOO............. | | |||
| ..............OOOOO.OOOOO.OOOOO.OOOOO ..OOOOO.OOOOO.OOOOO.OOOOO............. | | |||
| O ..............OOOOO.OOOOO.OOOOO.OOOOO O.OOOOO.OOOOO.OOOOO.OOOOO............. O | | |||
| ..............OOOOO.OOOOO.OOOOO.OOOOO ..OOOOO.OOOOO.OOOOO.OOOOO............. | | |||
\-------------------------------------------------------------------------------------/ | |||
Revisió del 09:50, 3 oct 2016
DLL_EXPORTS
void drf_clear_errors()
Descr:Borra todos los mensajes de error del almacenamiento interno de la librería dinámica.
int drf_get_num_errors();
Descr:Obtiene el numero de mensajes de error del almacenados por la librería dinámica.
Return:numero de mensajes almacenados.
const char* drf_get_error(int idx)
Descr:obtiene el mensajes de error indicado por idx.
p:idx: Numero de mensaje a obtener.Comprendido ente 0 y (drf_get_num_messages()-1) ambos incluidos.
Return: un puntero a una cadena de caracteres ASCII terminada por el byte NUL ('\0'), o NULL en caso que
el valor de idx este fuera de rango.
int drf_to_json(char *path,FILE *json,int options)
Descr:Serializa a JSON un dibujo DRF.
p:path: Ruta al fichero DRF a serializar en formato Windows ANSI.
p:json: puntero FILE ya abierto y con la escritura habilitada.
p:options: Selecciona que información se serializará. 0 para serializar toda la información disponible.
Return: 0 para indicar que la operación se ha completado correctamente. Diferente de 0 para indicar error.
TAGS
Codificación a JSON de los datos:
La información se codifica como un objeto. Donde el nombre del tag es la clave y el contenido de este el valor. Todos los tags se codifican como
TAGS GENERIC INFO
*Software string Nombre del programa que ha generado el fichero .DRF *DrawName string Referencia del dibujo (max. 256 carac). *Company string Compañía que ha creado el dibujo (max. 30 carac).
TAGS MACHINE INFO
*Machine string Campo editable por el diseñador que contiene el nombre, descripción o referencia de la maquina. *MachineType string Nombre del modelo de la maquina. Solo puede contener un nombre de maquina de los que tiene definidos el carta. *Description string Descripción del dibujo introducida por el diseñador. *Serial string Código de serie del dibujo asignado por el diseñador. Puede contener cualquier secuencia de caracteres imprimibles ASCII. *Version int32 Versión del formato de DRF con el que se ha guardado el archivo. *Jacquard int32 Número de barras de Jacquard independientes. Solo se soporta hasta un máximo de 2 barras. *BarsRepeat int32 *NumRepeats int32 *NumBars int32 Numero de barras que tiene el telar *Plate int32 N:1 *JacqNeedles int32 Numero de agujas de Jacquard del telar *MachNeedles int32 Numero total de agujas del telar *BarsOffset int32 Desplazamiento respecto a la primera aguja *JacqOffset int32 *MaxDisp int32 *Proximity int32 *JacqRt int32 *FinalGauge Type:float N:1 *FinalQuality Type:float N:1 *RealGauge Type:float N:1 *RealQuality Type:float N:1 *Shrinkage Type:float N:1 *Elasticity Type:float N:1 *BarName string(NumBars) Nombre de cada una de las barras del telar *BarNumBar int32(NumBars) Numero de cada una de las barras del telar *BarGroup int32(NumBars) *BarStop int32(NumBars) *BarUtil int32(NumBars) *BarType int32(NumBars) *BarMaxGimp *BarDrive *BarFactor *BarInvert *BarWork *BarKnit *BarTimes *BarMode *BarModif *BarRepeat *BarTension *BarNumFingers int32(NumBars) numero de pasadores de la barra *BarModeDrop *BarMaxDesp *BarActive *BarHalvesUp *BarHalvesDn *BarString *BarFronture NumBars *BarDropsUtil int32(7*NumBars) *FingerStop int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1) Stop del pasador relativo al stop de la barra. *FingerType int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1) Tipo de pasador. *CGF1Card *CGF1Type *CGF1Taille *CGF1Numlines *CGF1Script *CGF1Descrip *CGF2Card *CGF2Type *CGF2Taille *CGF2Numlines *CGF2Script *CGF2Descrip *CFBNGaits *CFBCard *CFBType *CFBTaille *CFBNumlines *CFBScript *CFBGaitNBar *CFBGaitNGait *CFBDescrip *CFBGaitNRepeat *JacqRtCourse *Fronture
TAGS DRAFT DATA
*NumCourses int32 Numero de pasadas guardadas del dibujo. *BarHalves int32(NumCourses) *BarNeedle int32(NumCourses) *BarKnitting int32(NumCourses) *BarNeedleB int32(NumCourses) *BarKnittingB int32(NumCourses) *Layout_FrontureData *Layout_WBData *Layout_JacqData bit(NumCourses*JacqNeedles*Jacquard) Bits de Jacquard. *LayoutCourNRepeats int32 Numero de repeticiones *LayoutCourNLayouts int32 Numero de bloques a repetir *LayoutCourRepeat int32(LayoutCourNLayouts) Numero de pasadas de cada bloque a repetir *LayoutCourWhich int32(LayoutCourNRepeats) indice del bloque que a repetir *LayoutCourTimes int32(LayoutCourNRepeats) numero de veces que se ha de repetir el bloque. Ejemplo: Supongamos el dibujo: /-------------------------------------------------------------------------------------\ | ..............OOOOOOOOOOO.OOOOOOOOOOO ..OOOOOOOOOOO.OOOOOOOOOOO............. | | O ..............OOOOO.OOOOO.OOOOO.OOOOO O.OOOOO.OOOOO.OOOOO.OOOOO............. O | | ..............OOOOO.OOOOO.OOOOO.OOOOO ..OOOOO.OOOOO.OOOOO.OOOOO............. | | ()..............OOOOO.OOOOO.OOOOO.OOOOO()..OOOOO.OOOOO.OOOOO.OOOOO.............() | | ..............OOOOO.OOOOO.OOOOO.OOOOO ..OOOOO.OOOOO.OOOOO.OOOOO............. | | ..............OOOOO.OOOOO.OOOOO.OOOOO ..OOOOO.OOOOO.OOOOO.OOOOO............. | | O ..............OOOOO.OOOOO.OOOOO.OOOOO O.OOOOO.OOOOO.OOOOO.OOOOO............. O | | ..............OOOOO.OOOOO.OOOOO.OOOOO ..OOOOO.OOOOO.OOOOO.OOOOO............. | \-------------------------------------------------------------------------------------/ *LayoutJacqNRepeats int32 *LayoutJacqNLayouts int32 *LayoutJacqRepeat int32(LayoutJacqNLayouts) *LayoutJacqWhich int32(LayoutJacqNRepeats) *LayoutJacqTimes int32(LayoutJacqNRepeats)