Pascual (discussió | contribucions)
Pascual (discussió | contribucions)
Cap resum de modificació
 
(28 revisions intermèdies per 2 usuaris que no es mostren)
Línia 1: Línia 1:
<languages/>
[[Category:SAPO]]
[[Category:SAPO]]
[[Category:Devel]]
[[Category:Devel]]
<translate>


=== DLL_EXPORTS ===


<pre>


void drf_clear_errors()
=== DLL_EXPORTS ===
Descr:Borra todos los mensajes de error del almacenamiento interno de la librería dinámica.
 
 
 
<code>void drf_clear_errors()</code>
 
Descr:
 
<!--T:1-->
Borra todos los mensajes de error producidos por la librería.
 
 
<code>int drf_get_num_errors()</code>
 
Descr:
 
<!--T:2-->
Obtiene el número de mensajes de error producidos por la librería.
 
Return:
 
<!--T:3-->
Número de mensajes almacenados.
 
 
<code>const char* drf_get_error(int idx)</code>
 
Descr:
 
<!--T:4-->
Obtiene el mensaje de error indicado por idx (referenciado a 0).
 
Params:
 
idx:
<!--T:5-->
Número de mensaje a obtener. Rango entre: 0 y (drf_get_num_errors()-1) ambos incluidos.
 
<!--T:6-->
Return:
 
Éxito: Puntero a una cadena de caracteres ASCII terminada por el byte NUL ('\0')
 
Error: NULL en caso que el valor de idx esté fuera de rango.
 
 
<code>int drf_to_json(char *path,FILE *json,int options)</code>
 
Descr:
 
<!--T:7-->
Serializa a JSON un archivo en formato DRF.
 
Params:
 
path:
Ruta al fichero DRF a serializar en formato Windows ANSI.


int drf_get_num_errors();
json:
Descr:Obtiene el número de mensajes de error almacenados por la librería dinámica.
puntero FILE ya abierto y con la escritura habilitada.
Return:número de mensajes almacenados.


const char* drf_get_error(int idx)
options:
Descr:Obtiene el mensaje de error indicado por idx (referenciado a 0).
<!--T:8-->
p:idx: Número de mensaje a obtener. Rango entre: 0 y (drf_get_num_errors()-1) ambos incluidos.
Selecciona que información se serializará. Valores possibles:
Return: Éxito: Puntero a una cadena de caracteres ASCII terminada por el byte NUL ('\0')
        Error: NULL en caso que el valor de idx esté fuera de rango.


int drf_to_json(char *path,FILE *json,int options)
Descr:Serializa a JSON un archivo 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á. Valores possibles:
   DRF_GET_GENERIC_INFO
   DRF_GET_GENERIC_INFO
   DRF_GET_MACHINE_INFO
   DRF_GET_MACHINE_INFO
Línia 29: Línia 76:
   DRF_GET_ALL_INFO
   DRF_GET_ALL_INFO


Return: Éxito : retorna valor igual a 0
o una combinación de los valores anteriores (OR)
        Error : retorna valor diference de 0


</pre>
<!--T:9-->
Return:
 
Éxito : retorna valor igual a 0
 
Error : retorna valor diferente de 0


=== TAGS ===
=== TAGS ===


<!--T:11-->
Codificación a JSON de los datos:
Codificación a JSON de los datos:


Internamente el DRF guarda la información como una lista de tags. cada tag puede contener uno o varios elementos del mismo tipo.
<!--T:12-->
Internamente el DRF guarda la información como una lista de tags. Cada tag puede contener uno o varios elementos del mismo tipo.


Al codificar un DRF a JSON se codifica como un objeto. Donde se usa el nombre del tag como clave y el contenido de esta como valor.
<!--T:13-->
En caso que el tag pueda contener mas de un valor, se serializa como vector.
Al codificar un DRF a JSON se codifica como un objeto donde se usa el nombre del tag como clave y el contenido de éste como valor.
En caso que el tag pueda contener más de un valor, la librería serializa el contenido como un vector.


Como el DRF tiene mas tipos que el JSON estos se han de convertir a un tipo soportado por el JSON. La siguiente tabla muestra a que  
<!--T:14-->
Como el formato DRF soporta más tipos que el JSON, la librería los convertirá a un tipo soportado por el JSON. La siguiente tabla muestra a que  
tipo del JSON se convierte cada tipo del DRF  
tipo del JSON se convierte cada tipo del DRF  


Línia 55: Línia 110:
   float  | float
   float  | float
   -------+-------
   -------+-------
   string | string*
   string | string *
 
<!--T:16-->
*) Todos los strings contienen sólo caracteres ASCII (encoding:ASCII-7)


*) Todos los strings contienen solo caracteres ASCII (encoding:ASCII-7)
</pre>
</pre>


==== TAGS GENERIC INFO ====
 
==== TAGS GENERIC INFO ==== <!--T:17-->
 
<!--T:18-->
<pre>
<pre>


<!--T:19-->
*Software string
*Software string
Nombre del programa que ha generado el fichero .DRF
Nombre del programa que ha generado el fichero .DRF


<!--T:20-->
*DrawName string
*DrawName string
Referencia del dibujo (max. 256 carac).
Referencia del dibujo (max. 256 carac).


<!--T:21-->
*Company string
*Company string
Compañía que ha creado el dibujo (max. 30 carac).
Compañía que ha creado el dibujo (max. 30 carac).


<!--T:22-->
</pre>
</pre>


==== TAGS MACHINE INFO ====
==== TAGS MACHINE INFO ==== <!--T:23-->
<pre>


<!--T:25-->
*Machine string
*Machine string
Referencia de la máquina. (max. 30 carac)  
Referencia de la máquina. (max. 30 carac)  


<!--T:26-->
*MachineType string
*MachineType string
Modelo de la máquina. Sólo es válido un modelo definido en el sistema de diseño. (p.e. LEAVERS)
Modelo de la máquina. Sólo es válido un modelo definido en el sistema de diseño. (p.e. LEAVERS)


<!--T:27-->
*Description string
*Description string
Descripción o información adicional de la máquina.
Descripción o información adicional de la máquina.


<!--T:28-->
*Serial string
*Serial string
Num. serie de la máquina. (max. 30 carac) . Puede contener carácteres no numéricos.
Num. serie de la máquina. (max. 30 carac) . Puede contener carácteres no numéricos.


*Version int32
<!--T:29-->
*Version int32 [RASCHEL SU]
Versión de la máquina raschel SU (versión 1 .. 4).
Versión de la máquina raschel SU (versión 1 .. 4).
   versión 1 . Sin ahorrador de memoria
   versión 1 . Sin ahorrador de memoria
Línia 96: Línia 164:
   versión 4 . Con ahorrador de memoria (repeciciones) + información empresa.
   versión 4 . Con ahorrador de memoria (repeciciones) + información empresa.


<!--T:30-->
*Jacquard int32
*Jacquard int32
Número de barras de Jacquard independientes. Valores posibles:  
Número de barras de Jacquard independientes. Valores posibles:  
Línia 102: Línia 171:
   2 : 2 jacquard raschel o fina barra doble.
   2 : 2 jacquard raschel o fina barra doble.


*Fronture int32
<!--T:31-->
*Fronture int32 [RASCHEL DOUBLE NEEDLE BAR]
Número de fonturas de la máquina
Número de fonturas de la máquina
   1 : 1 fontura
   1 : 1 fontura
   2 : 2 fontures (delante / detrás)
   2 : 2 fontures (delante / detrás)


<!--T:32-->
*BarsRepeat int32
*BarsRepeat int32
Altura del diseño.
Altura del diseño.


<!--T:33-->
*NumRepeats int32
*NumRepeats int32
Num de repeticiones en el diseño.
Num de repeticiones en el diseño.


<!--T:34-->
*NumBars int32
*NumBars int32
Numero de barras que tiene el telar.
Numero de barras que tiene el telar.


<!--T:35-->
*Plate int32
*Plate int32
En máquinas raschel (textronic), indica la posición de la plancha.
En máquinas raschel (textronic), indica la posición de la plancha.
En máquinas leavers indica donde empiezan los brodeurs.
En máquinas leavers indica donde empiezan los brodeurs.


<!--T:36-->
*JacqNeedles int32
*JacqNeedles int32
Numero de agujas de Jacquard del telar.
Numero de agujas de Jacquard del telar.


<!--T:37-->
*MachNeedles int32
*MachNeedles int32
Numero total de agujas del telar.
Numero total de agujas del telar.


<!--T:38-->
*BarsOffset int32
*BarsOffset int32
Desplazamiento de barras (orillos=zona perdida)
Desplazamiento de barras (orillos=zona perdida)


<!--T:39-->
*JacqOffset int32
*JacqOffset int32
Deplazamiento de las agujas de jacquard en el telar.
Deplazamiento de las agujas de jacquard en el telar.


*MaxDisp int32
<!--T:40-->
*MaxDisp int32 [RASCHEL SU]
Deplazamiento máximo general de las barras para máquinas raschel SU.
Deplazamiento máximo general de las barras para máquinas raschel SU.


<!--T:41-->
*Proximity int32
*Proximity int32
Para máquinas raschel, distáncia máxima a la que se pueden acercar dos barras del mismo grupo.
Para máquinas raschel, distáncia máxima a la que se pueden acercar dos barras del mismo grupo.


<!--T:42-->
*ProximityCollindant int32
*ProximityCollindant int32
Para máquinas raschel, distáncia máxima a la que se pueden acercar dos barras del mismo grupo colindantes.
Para máquinas raschel, distáncia máxima a la que se pueden acercar dos barras del mismo grupo colindantes.


<!--T:43-->
*JacqRt int32
*JacqRt int32
Deplazamiento Rt del jacquard:
Deplazamiento Rt del jacquard:


<!--T:44-->
para máquinas raschel:
para máquinas raschel:
   no jacquard: rt = 0
   no jacquard: rt = 0
Línia 149: Línia 233:
Indica cuántas agujas se desplaza la lectura del jacaquard en las pasadas alternadas.
Indica cuántas agujas se desplaza la lectura del jacaquard en las pasadas alternadas.


<!--T:45-->
para máquinas leavers
para máquinas leavers
   no fina barra:      0
   no fina barra:      0
Línia 155: Línia 240:
Indica cuántas agujas se desplaza la lectura del jacquard (desde la posición derecha de la máquina en las pasadas alternadas).
Indica cuántas agujas se desplaza la lectura del jacquard (desde la posición derecha de la máquina en las pasadas alternadas).


<!--T:46-->
*JacqRtCourse int32
*JacqRtCourse int32
Indica que pasadas se aplica el valor JacqRt.
Indica que pasadas se aplica el valor JacqRt.
Línia 160: Línia 246:
   1: pasadas impares
   1: pasadas impares


<!--T:47-->
*FinalGauge float
*FinalGauge float
Galga de producto tejido aplicando encongimiento (medida en agujas/pulgada)
Galga de producto tejido aplicando encongimiento (medida en agujas/pulgada)


<!--T:48-->
*FinalQuality float
*FinalQuality float
Calidad de producto tejido aplicando elasticidad (medida en pasadas/centímetro).
Calidad de producto tejido aplicando elasticidad (medida en pasadas/centímetro).


<!--T:49-->
*RealGauge float
*RealGauge float
Galga de máquina (medida en agujas/pulgada)-
Galga de máquina (medida en agujas/pulgada)-


<!--T:50-->
*RealQuality float
*RealQuality float
Calidad de máquina (medida en pasadas/centímetro).
Calidad de máquina (medida en pasadas/centímetro).


<!--T:51-->
*Shrinkage float
*Shrinkage float
Porcentage de encongimiento en agujas (0-100%)
Porcentage de encongimiento en agujas (0-100%)


<!--T:52-->
*Elasticity float
*Elasticity float
Porcentage de elasticidad en pasadas (0-100%)
Porcentage de elasticidad en pasadas (0-100%)


<!--T:53-->
*BarNumBar int32(NumBars)
*BarNumBar int32(NumBars)
Numero de cada una de las barras del telar (valor numérico consecutivo)
Numero de cada una de las barras del telar (valor numérico consecutivo)


<!--T:54-->
*BarName string(NumBars)
*BarName string(NumBars)
Nombre o identificador de cada una de las barras del telar
Nombre o identificador de cada una de las barras del telar


<!--T:55-->
*BarGroup int32(NumBars)
*BarGroup int32(NumBars)
En máquinas raschel el número de grupo de la barra.
En máquinas raschel el número de grupo de la barra.


<!--T:56-->
*BarStop int32(NumBars)
*BarStop int32(NumBars)
Posición 0 de la barra.
Posición 0 de la barra.


<!--T:57-->
*BarUtil int32(NumBars)
*BarUtil int32(NumBars)
Visibilidad de la barra en el sistema de diseño.
Visibilidad de la barra en el sistema de diseño.


<!--T:58-->
*BarType int32(NumBars)
*BarType int32(NumBars)
Tipo de hilo por defecto de la barra.
Tipo de hilo por defecto de la barra.


<!--T:59-->
*BarMaxGimp int32
*BarMaxGimp int32
Guimpada máxima en agujas de la barra.
Guimpada máxima en agujas de la barra.


<!--T:60-->
*BarDrive int32
*BarDrive int32
En máquinas raschel SU, el número de getribe de la barra.
En máquinas raschel SU, el número de getribe de la barra.


<!--T:61-->
*BarFactor int32
*BarFactor int32
En máquinas raschel SU, multiplicador de la barra.
En máquinas raschel SU, multiplicador de la barra.
Línia 210: Línia 311:




<!--T:62-->
*BarInvert int32
*BarInvert int32
En máquinas raschel SU, les barres invertides.  
En máquinas raschel SU, les barres invertides.  
Línia 215: Línia 317:
0: barra no invertida.
0: barra no invertida.


<!--T:63-->
*BarWork int32
*BarWork int32
Trabajo de la barra en el sistema de diseño.
Trabajo de la barra en el sistema de diseño.


   0: Chainette
   <!--T:64-->
0: Chainette
   1: Jacquard    [1]
   1: Jacquard    [1]
   2: Brodeur
   2: Brodeur
Línia 265: Línia 369:




<!--T:65-->
*BarKnit
*BarKnit
En máquines raschel textronic tipous de lligada:
En máquines raschel textronic tipous de lligada:
Línia 273: Línia 378:
   4 : lligada 4 (binària (2))
   4 : lligada 4 (binària (2))


<!--T:66-->
*BarTimes
*BarTimes
En máquines raschel textonic temps de la lligada
En máquines raschel textonic temps de la lligada
Línia 279: Línia 385:
   4 : temps 4 (p.e) 0220 0220 0220
   4 : temps 4 (p.e) 0220 0220 0220


<!--T:67-->
*BarMode
*BarMode
En máquines raschel textronic el mode la la barra:
En máquines raschel textronic el mode la la barra:
Línia 284: Línia 391:
   1 : mode B (p.e 2002)
   1 : mode B (p.e 2002)


<!--T:68-->
*BarModif int32
*BarModif int32
En máquines raschel textronic indica que la barra no es pot deslligar
En máquines raschel textronic indica que la barra no es pot deslligar
Línia 289: Línia 397:
   1 : si es pot deslligar
   1 : si es pot deslligar


<!--T:69-->
*BarTension int32
*BarTension int32
Tensió de la barra a les simulacions.
Tensió de la barra a les simulacions.


<!--T:70-->
*BarNumFingers int32(NumBars)
*BarNumFingers int32(NumBars)
Número de pasadors de la barra
Número de pasadors de la barra


<!--T:71-->
*BarModeDrop int32(NumBars)
*BarModeDrop int32(NumBars)
Ponderación de cada uno de los 7 bits que se usan para indicar el desplazamiento de la barra. Valores:
Ponderación de cada uno de los 7 bits que se usan para indicar el desplazamiento de la barra. Valores:


  Valor | B7 | B6 | B5 | B4 | B3 | B2 | B1
  <!--T:72-->
Valor | B7 | B6 | B5 | B4 | B3 | B2 | B1
  ------+----+----+----+----+----+----+----
  ------+----+----+----+----+----+----+----
     0  |  8 |  8 |  8 |  4 |  2 |  1 |1/2
     0  |  8 |  8 |  8 |  4 |  2 |  1 |1/2
Línia 319: Línia 431:




<!--T:73-->
*BarMaxDesp int32(NumBars)
*BarMaxDesp int32(NumBars)
Desplazamiento máximo de la barra en agujas
Desplazamiento máximo de la barra en agujas


<!--T:74-->
*BarActive byte(NumBars)
*BarActive byte(NumBars)
Sólo para maquinas EL. Indica si la barra esta en uso o no.
Sólo para maquinas EL. Indica si la barra esta en uso o no.


<!--T:75-->
*BarHalvesUp byte(NumBars)
*BarHalvesUp byte(NumBars)
Si en la pasada se incrementa la posición de la barra en BarHalvesUp agujas o más, entonces , se añade media aguja a la posición final.
Si en la pasada se incrementa la posición de la barra en BarHalvesUp agujas o más, entonces , se añade media aguja a la posición final.


<!--T:76-->
*BarHalvesDn byte(NumBars)
*BarHalvesDn byte(NumBars)
Si en la pasada se decrementa la posición de la barra en BarHalvesDwn agujas o más, entonces , se le resta media aguja a la posición final.
Si en la pasada se decrementa la posición de la barra en BarHalvesDwn agujas o más, entonces , se le resta media aguja a la posición final.


<!--T:77-->
*BarString int32(NumBars)
*BarString int32(NumBars)
Valors:
Valors:
Línia 340: Línia 457:




<!--T:78-->
*BarFronture int32(NumBars)
*BarFronture int32(NumBars)
Solo se usa en las máquinas de doble frontura. Da la frontura en la que empieza a trabajar la barra.Valores:
Solo se usa en las máquinas de doble frontura. Da la frontura en la que empieza a trabajar la barra.Valores:
Línia 345: Línia 463:
1: segunda frontura
1: segunda frontura


<!--T:79-->
*BarDropsUtil int32(7*NumBars)
*BarDropsUtil int32(7*NumBars)
indica como se deben perforar los 7 posiciones correspondientes a la barra:
indica como se deben perforar los 7 posiciones correspondientes a la barra:


<!--T:80-->
Valor:
Valor:
0: Usado. Siempre a 1. Es decir: no perforar nunca
0: Usado. Siempre a 1. Es decir: no perforar nunca
Línia 354: Línia 474:
3: No usado. No se perfora
3: No usado. No se perfora


<!--T:81-->
*FingerStop int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)
*FingerStop int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)
Stop del pasador relativo al stop de la barra.
Stop del pasador relativo al stop de la barra.


<!--T:82-->
*FingerType int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)
*FingerType int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)
Tipo de pasador.
Tipo de pasador.


<!--T:83-->
*CGF1Card int32
*CGF1Card int32
ha de estar a 0.
ha de estar a 0.


<!--T:84-->
*CGF1Type int32
*CGF1Type int32
Número de columnas útiles en el cartón.
Número de columnas útiles en el cartón.


<!--T:85-->
*CGF1Taille int32
*CGF1Taille int32
Número de columnas totales que caben del cartón.
Número de columnas totales que caben del cartón.


<!--T:86-->
*CGF1Numlines int32
*CGF1Numlines int32
numero de entradas de las que consta la especificación del cartón.
numero de entradas de las que consta la especificación del cartón.


<!--T:87-->
*CGF1Script string(CGF1Numlines)
*CGF1Script string(CGF1Numlines)
Lista de cadenas de caracteres que detallan como se ha de perforar  cada columna del cartón empezando por la columna de mas a la derecha.
Lista de cadenas de caracteres que detallan como se ha de perforar  cada columna del cartón empezando por la columna de mas a la derecha.
Línia 383: Línia 510:
   VB: Value
   VB: Value


<!--T:88-->
*CGF1Descrip string(CGF1Numlines)
*CGF1Descrip string(CGF1Numlines)
Descripción de cada entada del cartón.
Descripción de cada entada del cartón.


<!--T:89-->
Ex:
Ex:


   CGF1Script | CGF1Descrip
   <!--T:90-->
CGF1Script | CGF1Descrip
  ------------+--------------
  ------------+--------------
   "LC 1"    |  "Laçage"
   "LC 1"    |  "Laçage"
Línia 407: Línia 537:
   "LC 1"    |  "Laçage"                                                                                                     
   "LC 1"    |  "Laçage"                                                                                                     
                                                                                                                            
                                                                                                                            
                                                                                                                         
<div style="font-size:7pt;color:blue;">
<pre>                                                                                                                         
   L T                GF39                  L T G  GF6  GF4          GF26            L T              GF30          GF4  GF6  T L
   L T                GF39                  L T G  GF6  GF4          GF26            L T              GF30          GF4  GF6  T L
   C C _____________________________________ C C F  ____  __  ________________________ C C ____________________________  __  ____ C C
   C C _____________________________________ C C F  ____  __  ________________________ C C ____________________________  __  ____ C C
Línia 420: Línia 551:
|    O.OOOOOOO.O.OOOO.O.OOOOOO.O.OOOO.OO.OOO.  OOO..........OOOOOOOOOOOOOOOOOOOOOOOOOO.  OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..........    |
|    O.OOOOOOO.O.OOOO.O.OOOOOO.O.OOOO.OO.OOO.  OOO..........OOOOOOOOOOOOOOOOOOOOOOOOOO.  OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..........    |
\------------------------------------------------------------------------------------------------------------------------------------/     
\------------------------------------------------------------------------------------------------------------------------------------/     
</pre>
</div>


<!--T:91-->
*CGF2Card int32
*CGF2Card int32
ha de estar a 0.
ha de estar a 0.


<!--T:92-->
*CGF2Type int32
*CGF2Type int32
Número de columnas útiles en el cartón.
Número de columnas útiles en el cartón.


<!--T:93-->
*CGF2Taille int32
*CGF2Taille int32
Número de columnas totales que caben del cartón.
Número de columnas totales que caben del cartón.


<!--T:94-->
*CGF2Numlines int32
*CGF2Numlines int32
numero de entradas de las que consta la especificación del cartón.
numero de entradas de las que consta la especificación del cartón.


<!--T:95-->
*CGF2Script string(CGF2Numlines)
*CGF2Script string(CGF2Numlines)
Especificación del cartón. Formateado igual que CGF1Script.
Especificación del cartón. Formateado igual que CGF1Script.


<!--T:96-->
*CGF2Descrip string(CGF2Numlines)
*CGF2Descrip string(CGF2Numlines)
Descripción de cada entada del cartón.
Descripción de cada entada del cartón.


<!--T:97-->
*CFBCard int32
*CFBCard int32
ha de estar a 1.
ha de estar a 1.


<!--T:98-->
*CFBType int32
*CFBType int32
Número de columnas útiles en el cartón.
Número de columnas útiles en el cartón.


<!--T:99-->
*CFBTaille int32
*CFBTaille int32
Número de columnas totales que caben del cartón multiplicadas por 8.Ex:
Número de columnas totales que caben del cartón multiplicadas por 8.Ex:
si el cartón tiene 75 columnas CFBTaille=75*8=600
si el cartón tiene 75 columnas CFBTaille=75*8=600


<!--T:100-->
*CFBNumlines int32
*CFBNumlines int32
numero de entradas de las que consta la especificación del cartón.
numero de entradas de las que consta la especificación del cartón.


<!--T:101-->
*CFBScript string(CFBNumlines)
*CFBScript string(CFBNumlines)
Especificación del cartón. Formateado igual que CGF1Script. Excepto que los tipos aceptados
Especificación del cartón. Formateado igual que CGF1Script. Excepto que los tipos aceptados
Línia 462: Línia 606:
   VB: Value
   VB: Value


<!--T:102-->
Es decir el tipo "GF" no existe para este tag y en su lugar hay el tipo "FB"
Es decir el tipo "GF" no existe para este tag y en su lugar hay el tipo "FB"


<!--T:103-->
*CFBDescrip string(CFBNumlines)
*CFBDescrip string(CFBNumlines)
Descripción de cada entada del cartón.
Descripción de cada entada del cartón.


<!--T:104-->
*CFBNGaits int32
*CFBNGaits int32
Número de entradas para mapear las repeticiones de agujas de Fine Barre a los cartones en función de la repetición.
Número de entradas para mapear las repeticiones de agujas de Fine Barre a los cartones en función de la repetición.


<!--T:105-->
*CFBGaitNRepeat int32(CFBNGaits)
*CFBGaitNRepeat int32(CFBNGaits)
Número de repetición a mapear
Número de repetición a mapear


<!--T:106-->
*CFBGaitNBar int32(CFBNGaits)
*CFBGaitNBar int32(CFBNGaits)
Número de aguja a mapear
Número de aguja a mapear


<!--T:107-->
*CFBGaitNGait int32(CFBNGaits)
*CFBGaitNGait int32(CFBNGaits)
Indice de agujero en el cartón
Indice de agujero en el cartón


==== TAGS DRAFT DATA ==== <!--T:109-->


 
<!--T:110-->
 
</pre>
 
==== TAGS DRAFT DATA ====
<pre>
<pre>


<!--T:111-->
*NumCourses int32
*NumCourses int32
Numero de pasadas del dibujo sin tener en cuenta las repeticiones.
Numero de pasadas del dibujo sin tener en cuenta las repeticiones.


<!--T:112-->
*BarNeedle int16(NumCourses*NumBars)
*BarNeedle int16(NumCourses*NumBars)
Despazamientos medidos en agujas de las barras en cada pasada. Ordenados de la siguiente manera:
Despazamientos medidos en agujas de las barras en cada pasada. Ordenados de la siguiente manera:


   BarNeedle(0)              Desplazamiento barra 1 en la primera pasada.
   <!--T:113-->
BarNeedle(0)              Desplazamiento barra 1 en la primera pasada.
   BarNeedle(1)              Desplazamiento barra 1 en la segunda pasada.
   BarNeedle(1)              Desplazamiento barra 1 en la segunda pasada.
   .
   .
Línia 505: Línia 655:
   .
   .


<!--T:114-->
*BarNeedleB int16(NumCourses*NumBars)
*BarNeedleB int16(NumCourses*NumBars)
Solo se utiliza en maquinas de doble frontura. Es equivalente a BarNeedle pero contiene la información
Solo se utiliza en maquinas de doble frontura. Es equivalente a BarNeedle pero contiene la información
para la segunda frontura.
para la segunda frontura.


*BarHalves int8(NumCourses*NumBars)
<!--T:115-->
 
*BarHalves byte(NumCourses*NumBars)
Incremento de 1/2 aguja en el movimiento de la barra introducido manualmente por el diseñador desde el menú de Bareme




*BarKnitting int8(NumCourses*NumBars)
<!--T:116-->
*BarKnitting byte(NumCourses*NumBars)
Indica en las maquinas que hacen 2 movimientos por pasada que movimiento se realiza
Valores:
Valores:
  0 :
  0 : Movimiento 0 0 . No liga
  1 :
  1 : Movimeinto 0 1 . Liga
  2 :
  2 : Movimeinto 1 0 . Liga
  3 :
  3 : Movimeinto 1 1 . No liga




*BarKnittingB int8(NumCourses*NumBars)
<!--T:117-->
*BarKnittingB byte(NumCourses*NumBars)
Solo se utiliza en maquinas de doble frontura. Es equivalente a BarKnitting pero contiene la información
Solo se utiliza en maquinas de doble frontura. Es equivalente a BarKnitting pero contiene la información
para la segunda frontura.
para la segunda frontura.


<!--T:118-->
*Layout_JacqData byte(NumCourses*JacqNeedles*Jacquard)
*Layout_JacqData byte(NumCourses*JacqNeedles*Jacquard)
Bits de Jacquard.Valores:
Cada byte guarda un bit de Jacquard. Valores:
0: T
0: T
1: H
1: H


<!--T:119-->
*Layout_FrontureData byte(NumCourses*JacqNeedles*Jacquard)
*Layout_FrontureData byte(NumCourses*JacqNeedles*Jacquard)
Solo se utiliza en maquinas de doble frontura. Es equivalente a Layout_JacqData pero contiene la información
Solo se utiliza en maquinas de doble frontura. Es equivalente a Layout_JacqData pero contiene la información
para la segunda frontura.
para la segunda frontura.


<!--T:120-->
*Layout_WBData byte(NumCourses*JacqNeedles*Jacquard)
*Layout_WBData byte(NumCourses*JacqNeedles*Jacquard)
Solo se utiliza en maquinas CLIPTRONIC . Contiene los datos para la barra de Embrodery(WB) en el mismo formato que
Solo se utiliza en maquinas CLIPTRONIC . Contiene los datos para la barra de Embrodery(WB) en el mismo formato que
Layout_JacqData.
Layout_JacqData.


<!--T:121-->
*LayoutCourNRepeats int32
*LayoutCourNRepeats int32
Numero de repeticiones de pasadas. Las repeticiones de pasadas afectan por igual las barras de dibujo y el jacquard.
Numero de repeticiones de pasadas. Las repeticiones de pasadas afectan por igual las barras de dibujo y el jacquard.


<!--T:122-->
*LayoutCourNLayouts int32
*LayoutCourNLayouts int32
Numero de bloques de pasadas a repetir
Numero de bloques de pasadas a repetir


<!--T:123-->
*LayoutCourRepeat int32(LayoutCourNLayouts)
*LayoutCourRepeat int32(LayoutCourNLayouts)
Numero de pasadas que contiene cada bloque a repetir
Numero de pasadas que contiene cada bloque a repetir


<!--T:124-->
*LayoutCourWhich int32(LayoutCourNRepeats)
*LayoutCourWhich int32(LayoutCourNRepeats)
indice del bloque que a repetir
indice del bloque que a repetir


<!--T:125-->
*LayoutCourTimes int32(LayoutCourNRepeats)
*LayoutCourTimes int32(LayoutCourNRepeats)
numero de veces que se ha de repetir el bloque. Ejemplo:
numero de veces que se ha de repetir el bloque. Ejemplo:


<!--T:126-->
Normalmente como los dibujos suelen ser bastante repetitivos, para ahorrar trabajo y memoria no se guardan todas las pasadas
Normalmente como los dibujos suelen ser bastante repetitivos, para ahorrar trabajo y memoria no se guardan todas las pasadas
del dibujo. En un dibujo como el siguiente :
del dibujo. En un dibujo como el siguiente :


     +------------------------------------------------------------------------------------------+
     <!--T:127-->
+------------------------------------------------------------------------------------------+
     |  ,~.~._,~.~._,~.~._,~.~._,~.~._,~.~._,~.~.    ,~.~._,~.~._,~.~._,~.~._,~.~._,~.~._,~.~.  |  
     |  ,~.~._,~.~._,~.~._,~.~._,~.~._,~.~._,~.~.    ,~.~._,~.~._,~.~._,~.~._,~.~._,~.~._,~.~.  |  
     | / O.O  O.O  O.O  O.O  O.O  O.O  O.O \  / O.O  O.O  O.O  O.O  O.O  O.O  O.O \ |  
     | / O.O  O.O  O.O  O.O  O.O  O.O  O.O \  / O.O  O.O  O.O  O.O  O.O  O.O  O.O \ |  
Línia 571: Línia 736:
     Pasadas >
     Pasadas >


<!--T:128-->
Si se mira lo que hay guardado en el archivo se encontraría algo similar a :
Si se mira lo que hay guardado en el archivo se encontraría algo similar a :
                      
                      
Línia 589: Línia 755:




<!--T:129-->
Esto pasa por que se ha guardado solo una vez cada bloque que se repite. En este caso los bloques que se han usado:
Esto pasa por que se ha guardado solo una vez cada bloque que se repite. En este caso los bloques que se han usado:


     A      B        C
     <!--T:130-->
A      B        C
   +----+ +------+ +-----+
   +----+ +------+ +-----+
   |  ,~| |.~._,~| |.~.  |  
   |  ,~| |.~._,~| |.~.  |  
Línia 606: Línia 774:
   +----+ +------+ +-----+
   +----+ +------+ +-----+


<!--T:131-->
Se puede ver con facilidad que la sequencia de bloques para obtener el dibujo es: A B B B B B B C A B B B B B B C
Se puede ver con facilidad que la sequencia de bloques para obtener el dibujo es: A B B B B B B C A B B B B B B C


<!--T:132-->
LayoutCourNLayouts=3 pues hay tres bloques distintos ( A , B , C )
LayoutCourNLayouts=3 pues hay tres bloques distintos ( A , B , C )


<!--T:133-->
LayoutCourRepeat=Array(
LayoutCourRepeat=Array(
   numero de pasadas de A,
   numero de pasadas de A,
Línia 616: Línia 787:
)
)


<!--T:134-->
NOTA: El número total de pasadas ha de ser igual a la suma de pasadas de los bloques de repeticiones. Es decir:
NOTA: El número total de pasadas ha de ser igual a la suma de pasadas de los bloques de repeticiones. Es decir:
NumCourses=LayoutCourRepeat(0)+...+LayoutCourRepeat(LayoutCourNLayouts-1)
NumCourses=LayoutCourRepeat(0)+...+LayoutCourRepeat(LayoutCourNLayouts-1)


<!--T:135-->
Luego para codificar que se desea 1 repetición de A, 6 repeticiones de B y una repeticion de C se haria de la siguiente manera:
Luego para codificar que se desea 1 repetición de A, 6 repeticiones de B y una repeticion de C se haria de la siguiente manera:


                         idx  |  LayoutCourWhich | LayoutCourTimes | Significado
                         <!--T:136-->
idx  |  LayoutCourWhich | LayoutCourTimes | Significado
                       --------+------------------+-----------------+------------------
                       --------+------------------+-----------------+------------------
                         _    |                  |                |
                         _    |                  |                |
Línia 640: Línia 814:




<!--T:137-->
*LayoutJacqNRepeats int32
*LayoutJacqNRepeats int32
Numero de repeticiones de agujas. Solo afecta el jacquard. Sigue el mismo sistema que las repeticiones de pasadas.
Numero de repeticiones de agujas. Solo afecta el jacquard. Sigue el mismo sistema que las repeticiones de pasadas.


<!--T:138-->
*LayoutJacqNLayouts int32
*LayoutJacqNLayouts int32
Numero de bloques de agujas a repetir
Numero de bloques de agujas a repetir


<!--T:139-->
*LayoutJacqRepeat int32(LayoutJacqNLayouts)
*LayoutJacqRepeat int32(LayoutJacqNLayouts)
Numero de agujas que contiene cada bloque a repetir
Numero de agujas que contiene cada bloque a repetir


<!--T:140-->
*LayoutJacqWhich int32(LayoutJacqNRepeats)
*LayoutJacqWhich int32(LayoutJacqNRepeats)
indice del bloque que a repetir
indice del bloque que a repetir


<!--T:141-->
*LayoutJacqTimes int32(LayoutJacqNRepeats)
*LayoutJacqTimes int32(LayoutJacqNRepeats)
numero de veces que se ha de repetir el bloque.
numero de veces que se ha de repetir el bloque.


<!--T:142-->
</pre>
</pre>
</translate>

Revisió de 17:21, 5 oct 2016

<languages/> <translate>


DLL_EXPORTS

void drf_clear_errors()

Descr:

Borra todos los mensajes de error producidos por la librería.


int drf_get_num_errors()

Descr:

Obtiene el número de mensajes de error producidos por la librería.

Return:

Número de mensajes almacenados.


const char* drf_get_error(int idx)

Descr:

Obtiene el mensaje de error indicado por idx (referenciado a 0).

Params:

idx: Número de mensaje a obtener. Rango entre: 0 y (drf_get_num_errors()-1) ambos incluidos.

Return:

Éxito: Puntero a una cadena de caracteres ASCII terminada por el byte NUL ('\0')

Error: NULL en caso que el valor de idx esté fuera de rango.


int drf_to_json(char *path,FILE *json,int options)

Descr:

Serializa a JSON un archivo en formato DRF.

Params:

path: Ruta al fichero DRF a serializar en formato Windows ANSI.

json: puntero FILE ya abierto y con la escritura habilitada.

options: Selecciona que información se serializará. Valores possibles:

  DRF_GET_GENERIC_INFO
  DRF_GET_MACHINE_INFO
  DRF_GET_DRAFT_INFO
  DRF_GET_ALL_INFO

o una combinación de los valores anteriores (OR)

Return:

Éxito : retorna valor igual a 0

Error : retorna valor diferente de 0

TAGS

Codificación a JSON de los datos:

Internamente el DRF guarda la información como una lista de tags. Cada tag puede contener uno o varios elementos del mismo tipo.

Al codificar un DRF a JSON se codifica como un objeto donde se usa el nombre del tag como clave y el contenido de éste como valor. En caso que el tag pueda contener más de un valor, la librería serializa el contenido como un vector.

Como el formato DRF soporta más tipos que el JSON, la librería los convertirá a un tipo soportado por el JSON. La siguiente tabla muestra a que tipo del JSON se convierte cada tipo del DRF

    DRF  | JSON   
  -------+--------
  byte   | 
  int16  | int
  int32  |
  -------+-------
  float  | float
  -------+-------
  string | string *

<!--T:16-->
*) Todos los strings contienen sólo caracteres ASCII (encoding:ASCII-7)


TAGS GENERIC INFO


<!--T:19-->
*Software string
Nombre del programa que ha generado el fichero .DRF

<!--T:20-->
*DrawName string
Referencia del dibujo (max. 256 carac).

<!--T:21-->
*Company string
Compañía que ha creado el dibujo (max. 30 carac).

<!--T:22-->

TAGS MACHINE INFO

  • Machine string

Referencia de la máquina. (max. 30 carac)

  • MachineType string

Modelo de la máquina. Sólo es válido un modelo definido en el sistema de diseño. (p.e. LEAVERS)

  • Description string

Descripción o información adicional de la máquina.

  • Serial string

Num. serie de la máquina. (max. 30 carac) . Puede contener carácteres no numéricos.

  • Version int32 [RASCHEL SU]

Versión de la máquina raschel SU (versión 1 .. 4).

  versión 1 . Sin ahorrador de memoria
  versión 2 . Con ahorrador de memoria (repeticiones)
  versión 3 . Sin ahorrador de memoria + información empresa.
  versión 4 . Con ahorrador de memoria (repeciciones) + información empresa.
  • Jacquard int32

Número de barras de Jacquard independientes. Valores posibles:

  0 : No jacquard
  1 : 1 jacquard o fina barra simple
  2 : 2 jacquard raschel o fina barra doble.
  • Fronture int32 [RASCHEL DOUBLE NEEDLE BAR]

Número de fonturas de la máquina

  1 : 1 fontura
  2 : 2 fontures (delante / detrás)
  • BarsRepeat int32

Altura del diseño.

  • NumRepeats int32

Num de repeticiones en el diseño.

  • NumBars int32

Numero de barras que tiene el telar.

  • Plate int32

En máquinas raschel (textronic), indica la posición de la plancha.

En máquinas leavers indica donde empiezan los brodeurs.

  • JacqNeedles int32

Numero de agujas de Jacquard del telar.

  • MachNeedles int32

Numero total de agujas del telar.

  • BarsOffset int32

Desplazamiento de barras (orillos=zona perdida)

  • JacqOffset int32

Deplazamiento de las agujas de jacquard en el telar.

  • MaxDisp int32 [RASCHEL SU]

Deplazamiento máximo general de las barras para máquinas raschel SU.

  • Proximity int32

Para máquinas raschel, distáncia máxima a la que se pueden acercar dos barras del mismo grupo.

  • ProximityCollindant int32

Para máquinas raschel, distáncia máxima a la que se pueden acercar dos barras del mismo grupo colindantes.

  • JacqRt int32

Deplazamiento Rt del jacquard:

para máquinas raschel:

  no jacquard: rt = 0
  jacquard simple o doble: rt = 1

Indica cuántas agujas se desplaza la lectura del jacaquard en las pasadas alternadas.

para máquinas leavers

  no fina barra:      0
  fina barra simple: -1
  fina barra doble:   0

Indica cuántas agujas se desplaza la lectura del jacquard (desde la posición derecha de la máquina en las pasadas alternadas).

  • JacqRtCourse int32

Indica que pasadas se aplica el valor JacqRt.

  0:pasadas pares
  1: pasadas impares
  • FinalGauge float

Galga de producto tejido aplicando encongimiento (medida en agujas/pulgada)

  • FinalQuality float

Calidad de producto tejido aplicando elasticidad (medida en pasadas/centímetro).

  • RealGauge float

Galga de máquina (medida en agujas/pulgada)-

  • RealQuality float

Calidad de máquina (medida en pasadas/centímetro).

  • Shrinkage float

Porcentage de encongimiento en agujas (0-100%)

  • Elasticity float

Porcentage de elasticidad en pasadas (0-100%)

  • BarNumBar int32(NumBars)

Numero de cada una de las barras del telar (valor numérico consecutivo)

  • BarName string(NumBars)

Nombre o identificador de cada una de las barras del telar

  • BarGroup int32(NumBars)

En máquinas raschel el número de grupo de la barra.

  • BarStop int32(NumBars)

Posición 0 de la barra.

  • BarUtil int32(NumBars)

Visibilidad de la barra en el sistema de diseño.

  • BarType int32(NumBars)

Tipo de hilo por defecto de la barra.

  • BarMaxGimp int32

Guimpada máxima en agujas de la barra.

  • BarDrive int32

En máquinas raschel SU, el número de getribe de la barra.

  • BarFactor int32

En máquinas raschel SU, multiplicador de la barra. 1: factor de 1 agulla 2: factor de 2 agulles, 4: factor de 4 agulles. ...


  • BarInvert int32

En máquinas raschel SU, les barres invertides. 1: barra invertida. 0: barra no invertida.

  • BarWork int32

Trabajo de la barra en el sistema de diseño.

0: Chainette

  1: Jacquard     [1]
  2: Brodeur
  3: Gros
  4: Fin
  5: Brillant
  6: Picot
  7: Corde
  8: Lycra
  9: Fond
 10: Bloc
 11: Cord
 12: Guimp
 13: Nul
 14: Jacq 0/2,6/4 [1]
 15: Jacq 0/2,8/6 [1]
 16: Fine Bar.  [sup]
 17: Braquette"
 18: Jacquard     [2]
 19: Jacq 0/2,6/4 [2]
 20: Jacq 0/2,8/6 [2]
 21: Fine Bar.  [inf]
 22: Jacquard
 23: Fine Barre
 24: Fallplate
 25: Embrodery
 26: EFS
 27: Reservé 1
 28: Reservé 2
 29: Jacq 0/2,6/4
 30: Jacq 0/2,8/6
 31: Bord
 32: Lisieres
 33: Romaines
 34: Sonnette
 35: Guimp devant
 36: Petite Corde
 37: Fileur
 38: Separation
 39: Corde Termo
 40: Solv rom
 41: Vis
 42: Jacquard     [3]
 43: Jacquard     [4]
 44: Space Fabric


  • BarKnit

En máquines raschel textronic tipous de lligada:

 0 : no planxa
 1 : lligada 1 (mecanica)
 2 : lligada 2 (binaria)
 3 : lligada 3 (mecánica (2))
 4 : lligada 4 (binària (2))
  • BarTimes

En máquines raschel textonic temps de la lligada

 0 : no planxa
 2 : temps 2 (p.e) 0202 0202 0202
 4 : temps 4 (p.e) 0220 0220 0220
  • BarMode

En máquines raschel textronic el mode la la barra:

 0 : mode A (p.e 0220)
 1 : mode B (p.e 2002)
  • BarModif int32

En máquines raschel textronic indica que la barra no es pot deslligar

 0 : no es pot deslligar
 1 : si es pot deslligar
  • BarTension int32

Tensió de la barra a les simulacions.

  • BarNumFingers int32(NumBars)

Número de pasadors de la barra

  • BarModeDrop int32(NumBars)

Ponderación de cada uno de los 7 bits que se usan para indicar el desplazamiento de la barra. Valores:

Valor | B7 | B6 | B5 | B4 | B3 | B2 | B1

------+----+----+----+----+----+----+----
   0  |  8 |  8 |  8 |  4 |  2 |  1 |1/2
------+----+----+----+----+----+----+----
   1  | 16 |  8 |  8 |  4 |  2 |  1 |1/2
------+----+----+----+----+----+----+----
   2  | 16 | 16 |  8 |  4 |  2 |  1 |1/2
------+----+----+----+----+----+----+----
   3  | 32 | 16 |  8 |  4 |  2 |  1 |1/2
------+----+----+----+----+----+----+----
   4  |  8 |  8 |  8 |  8 |  4 |  2 | 1
------+----+----+----+----+----+----+----
   5  | 16 |  8 |  8 |  8 |  4 |  2 | 1
------+----+----+----+----+----+----+----
   6  |  4 |  4 |  4 |  4 |  2 |  1 | 1
------+----+----+----+----+----+----+----
   7  |  0 |  0 |  0 |  1 |  2 |  1 |1/2
------+----+----+----+----+----+----+----
   8  |  4 |  4 |  4 |  4 |  2 |  1 |1/2


  • BarMaxDesp int32(NumBars)

Desplazamiento máximo de la barra en agujas

  • BarActive byte(NumBars)

Sólo para maquinas EL. Indica si la barra esta en uso o no.

  • BarHalvesUp byte(NumBars)

Si en la pasada se incrementa la posición de la barra en BarHalvesUp agujas o más, entonces , se añade media aguja a la posición final.

  • BarHalvesDn byte(NumBars)

Si en la pasada se decrementa la posición de la barra en BarHalvesDwn agujas o más, entonces , se le resta media aguja a la posición final.

  • BarString int32(NumBars)

Valors: 0: 1:ple 2:1f 1x 3:1x 1f 4:buit


  • BarFronture int32(NumBars)

Solo se usa en las máquinas de doble frontura. Da la frontura en la que empieza a trabajar la barra.Valores: 0: primera forntura 1: segunda frontura

  • BarDropsUtil int32(7*NumBars)

indica como se deben perforar los 7 posiciones correspondientes a la barra:

Valor: 0: Usado. Siempre a 1. Es decir: no perforar nunca 1: Usado, Se perforara o no en funcion del desplazamiento de la barra 2: Usado. Siemre a 0. Es decir, se perfora siempre 3: No usado. No se perfora

  • 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 int32

ha de estar a 0.

  • CGF1Type int32

Número de columnas útiles en el cartón.

  • CGF1Taille int32

Número de columnas totales que caben del cartón.

  • CGF1Numlines int32

numero de entradas de las que consta la especificación del cartón.

  • CGF1Script string(CGF1Numlines)

Lista de cadenas de caracteres que detallan como se ha de perforar cada columna del cartón empezando por la columna de mas a la derecha. Cada cadena de caracteres tiene el formato: <codigo de tipo> <espacio> <numero de repeticiones>. Ex: "LC 1". Los codigos de tipo validos son:

  LC: Laçage
  TC: Trou de centrage
  TS: Trou de centrage simple
  EL: Element vide
  GF: Gros fil
  VB: Value
  • CGF1Descrip string(CGF1Numlines)

Descripción de cada entada del cartón.

Ex:

CGF1Script | CGF1Descrip

------------+--------------
  "LC 1"    |  "Laçage"
  "TC 1"    |  "Trou de centrage"
  "GF 6"    |  "braquettes"  
  "GF 4"    |  "stum"                                                                                                      
  "GF 30"   |  "guimpes"                                                                                                    
  "TC 1"    |  "Trou de centrage"                                                                                            
  "LC 1"    |  "Laçage"                                                                                                       
  "GF 26"   |  "guimpes"                                                                                                
  "GF 4"    |  "stum"                                                                                                   
  "GF 6"    |  "braquettes"                                                                                               
  "GF 3"    |  "brodeus"                                                                                                  
  "TC 1"    |  "Trou de centrage"                                                                                         
  "LC 1"    |  "Laçage"                                                                                                      
  "GF 39"   |  "brodeus"                                                                                                 
  "TC 1"    |  "Trou de centrage"                                                                                           
  "LC 1"    |  "Laçage"                                                                                                    
                                                                                                                          
                                                                                                                          
  L T                GF39                   L T G   GF6  GF4          GF26            L T               GF30           GF4  GF6  T L
  C C _____________________________________ C C F  ____  __  ________________________ C C ____________________________  __  ____ C C
  1 1/                                     \1 1/3\/    \/  \/                        \1 1/                            \/  \/    \1 1
/------------------------------------------------------------------------------------------------------------------------------------\
|    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.  OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.  OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    |
| O  .O.O.O.OOOOOOO.OOO.OOOOOO.O.O.OOOOOOOOOO  OOOOOOOOOOO..O..OO...O.OO.....O..O..OOOO  OO...O...OOO.OOOOO...O.....O..OO..OOOOOO  O |
|    OOOOO.OO.O...OOO..O..OO.OO.OOOO.O..OO.O.  OOOOOO...OOOO.O.OOOO..O.OO.OOO..O.O.O...  ..OOO.OO..O.OO....O.O..O.OOOOOOOOOOOO...    |
|  ().OO.OO...OOOOOOOO.OO...O.OOOO..OO....O..()O..OOOOOOOOOOO.O....OO..O..OOO..OO.O.O..()OO.....OOO...OO..OO.O.OOO.OO.OOOOOOOOOOO()  |
|    ........................................  ...............OO..OO..O.......O........  ...........O...O...O.O...O...O..........    |
| O  .O....OO.O.O....O.O.OOO..O.O.OO.O..OOO.O  ..O...........OOO.OOO.OOOOOOO.OOO.OOO.OO  OOOOOOOOOOOOOOOOOOOO.OOOOOOOOO..........  O |
|    O.OOOOOOO.O.OOOO.O.OOOOOO.O.OOOO.OO.OOO.  OOO..........OOOOOOOOOOOOOOOOOOOOOOOOOO.  OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..........    |
\------------------------------------------------------------------------------------------------------------------------------------/    
  • CGF2Card int32

ha de estar a 0.

  • CGF2Type int32

Número de columnas útiles en el cartón.

  • CGF2Taille int32

Número de columnas totales que caben del cartón.

  • CGF2Numlines int32

numero de entradas de las que consta la especificación del cartón.

  • CGF2Script string(CGF2Numlines)

Especificación del cartón. Formateado igual que CGF1Script.

  • CGF2Descrip string(CGF2Numlines)

Descripción de cada entada del cartón.

  • CFBCard int32

ha de estar a 1.

  • CFBType int32

Número de columnas útiles en el cartón.

  • CFBTaille int32

Número de columnas totales que caben del cartón multiplicadas por 8.Ex: si el cartón tiene 75 columnas CFBTaille=75*8=600

  • CFBNumlines int32

numero de entradas de las que consta la especificación del cartón.

  • CFBScript string(CFBNumlines)

Especificación del cartón. Formateado igual que CGF1Script. Excepto que los tipos aceptados son:

  LC: Laçage
  TC: Trou de centrage
  TS: Trou de centrage simple
  EL: Element vide
  FB: Fine barre
  VB: Value

Es decir el tipo "GF" no existe para este tag y en su lugar hay el tipo "FB"

  • CFBDescrip string(CFBNumlines)

Descripción de cada entada del cartón.

  • CFBNGaits int32

Número de entradas para mapear las repeticiones de agujas de Fine Barre a los cartones en función de la repetición.

  • CFBGaitNRepeat int32(CFBNGaits)

Número de repetición a mapear

  • CFBGaitNBar int32(CFBNGaits)

Número de aguja a mapear

  • CFBGaitNGait int32(CFBNGaits)

Indice de agujero en el cartón

TAGS DRAFT DATA


<!--T:111-->
*NumCourses int32
Numero de pasadas del dibujo sin tener en cuenta las repeticiones.

<!--T:112-->
*BarNeedle int16(NumCourses*NumBars)
Despazamientos medidos en agujas de las barras en cada pasada. Ordenados de la siguiente manera:

   <!--T:113-->
BarNeedle(0)              Desplazamiento barra 1 en la primera pasada.
   BarNeedle(1)              Desplazamiento barra 1 en la segunda pasada.
   .
   .
   BarNeedle(NumCourses-1)   Desplazamiento barra 1 en la última pasada.
   BarNeedle(NumCourses)     Desplazamiento barra 2 en la primera pasada.
   .
   .
   BarNeedel(NumCourses*2-1) Desplazamiento barra 2 en la última pasada.
   BarNeedle(NumCourses)     Desplazamiento barra 3 en la primera pasada.
   .

<!--T:114-->
*BarNeedleB int16(NumCourses*NumBars)
Solo se utiliza en maquinas de doble frontura. Es equivalente a BarNeedle pero contiene la información
para la segunda frontura.

<!--T:115-->
*BarHalves byte(NumCourses*NumBars)
Incremento de 1/2 aguja en el movimiento de la barra introducido manualmente por el diseñador desde el menú de Bareme


<!--T:116-->
*BarKnitting byte(NumCourses*NumBars)
Indica en las maquinas que hacen 2 movimientos por pasada que movimiento se realiza
Valores:
 0 : Movimiento 0 0 . No liga
 1 : Movimeinto 0 1 . Liga
 2 : Movimeinto 1 0 . Liga
 3 : Movimeinto 1 1 . No liga


<!--T:117-->
*BarKnittingB byte(NumCourses*NumBars)
Solo se utiliza en maquinas de doble frontura. Es equivalente a BarKnitting pero contiene la información
para la segunda frontura.

<!--T:118-->
*Layout_JacqData byte(NumCourses*JacqNeedles*Jacquard)
Cada byte guarda un bit de Jacquard. Valores:
0: T
1: H

<!--T:119-->
*Layout_FrontureData byte(NumCourses*JacqNeedles*Jacquard)
Solo se utiliza en maquinas de doble frontura. Es equivalente a Layout_JacqData pero contiene la información
para la segunda frontura.

<!--T:120-->
*Layout_WBData byte(NumCourses*JacqNeedles*Jacquard)
Solo se utiliza en maquinas CLIPTRONIC . Contiene los datos para la barra de Embrodery(WB) en el mismo formato que
Layout_JacqData.

<!--T:121-->
*LayoutCourNRepeats int32
Numero de repeticiones de pasadas. Las repeticiones de pasadas afectan por igual las barras de dibujo y el jacquard.

<!--T:122-->
*LayoutCourNLayouts int32
Numero de bloques de pasadas a repetir

<!--T:123-->
*LayoutCourRepeat int32(LayoutCourNLayouts)
Numero de pasadas que contiene cada bloque a repetir

<!--T:124-->
*LayoutCourWhich int32(LayoutCourNRepeats)
indice del bloque que a repetir

<!--T:125-->
*LayoutCourTimes int32(LayoutCourNRepeats)
numero de veces que se ha de repetir el bloque. Ejemplo:

<!--T:126-->
Normalmente como los dibujos suelen ser bastante repetitivos, para ahorrar trabajo y memoria no se guardan todas las pasadas
del dibujo. En un dibujo como el siguiente :

    <!--T:127-->
+------------------------------------------------------------------------------------------+
    |  ,~.~._,~.~._,~.~._,~.~._,~.~._,~.~._,~.~.    ,~.~._,~.~._,~.~._,~.~._,~.~._,~.~._,~.~.  | 
    | / O.O   O.O   O.O   O.O   O.O   O.O   O.O \  / O.O   O.O   O.O   O.O   O.O   O.O   O.O \ | 
    |( O:@:O O:@:O O:@:O O:@:O O:@:O O:@:O O:@:O )( O:@:O O:@:O O:@:O O:@:O O:@:O O:@:O O:@:O )| 
    | \ O'O   O'O   O'O   O'O   O'O   O'O   O'O /  \ O'O   O'O   O'O   O'O   O'O   O'O   O'O / | 
    |  )   . ,   . ,   . ,   . ,   . ,   . ,   (    )   . ,   . ,   . ,   . ,   . ,   . ,   (  | 
/\  | (  * -@- * -@- * -@- * -@- * -@- * -@- *  )  (  * -@- * -@- * -@- * -@- * -@- * -@- *  ) | 
 A  |  )   ' `   ' `   ' `   ' `   ' `   ' `   (    )   ' `   ' `   ' `   ' `   ' `   ' `   (  | 
 g  | / O.O   O.O   O.O   O.O   O.O   O.O   O.O \  / O.O   O.O   O.O   O.O   O.O   O.O   O.O \ | 
 u  |( O:@:O O:@:O O:@:O O:@:O O:@:O O:@:O O:@:O )( O:@:O O:@:O O:@:O O:@:O O:@:O O:@:O O:@:O )| 
 j  | \ O'O   O'O   O'O   O'O   O'O   O'O   O'O /  \ O'O   O'O   O'O   O'O   O'O   O'O   O'O / | 
 a  |  ·~·~·^·~·~·^·~·~·^·~·~·^·~·~·^·~·~·^·~·~·    ·~·~·^·~·~·^·~·~·^·~·~·^·~·~·^·~·~·^·~·~·  | 
 s  +------------------------------------------------------------------------------------------+
     Pasadas >

<!--T:128-->
Si se mira lo que hay guardado en el archivo se encontraría algo similar a :
                     
    +---------------+
    |  ,~.~._,~.~.  |
    | / O.O   O.O \ |
    |( O:@:O O:@:O )|
    | \ O'O   O'O / |
    |  )   . ,   (  |
/\  | (  * -@- *  ) | 
 A  |  )   ' `   (  |
 g  | / O.O   O.O \ |
 u  |( O:@:O O:@:O )|
 j  | \ O'O   O'O / |
 a  |  ·~·~·^·~·~·  |
 s  +---------------+
     Pasadas >


<!--T:129-->
Esto pasa por que se ha guardado solo una vez cada bloque que se repite. En este caso los bloques que se han usado:

     <!--T:130-->
A      B        C
  +----+ +------+ +-----+
  |  ,~| |.~._,~| |.~.  | 
  | / O| |.O   O| |.O \ | 
  |( O:| |@:O O:| |@:O )| 
  | \ O| |'O   O| |'O / | 
  |  ) | |  . , | |  (  | 
  | (  | |* -@- | |*  ) |
  |  ) | |  ' ` | |  (  | 
  | / O| |.O   O| |.O \ | 
  |( O:| |@:O O:| |@:O )|
  | \ O| |'O   O| |'O / |  
  |  ·~| |·~·^·~| |·~·  | 
  +----+ +------+ +-----+

<!--T:131-->
Se puede ver con facilidad que la sequencia de bloques para obtener el dibujo es: A B B B B B B C A B B B B B B C

<!--T:132-->
LayoutCourNLayouts=3 pues hay tres bloques distintos ( A , B , C )

<!--T:133-->
LayoutCourRepeat=Array(
   numero de pasadas de A,
   numero de pasadas de B,
   numero de pasadas de C
)

<!--T:134-->
NOTA: El número total de pasadas ha de ser igual a la suma de pasadas de los bloques de repeticiones. Es decir:
NumCourses=LayoutCourRepeat(0)+...+LayoutCourRepeat(LayoutCourNLayouts-1)

<!--T:135-->
Luego para codificar que se desea 1 repetición de A, 6 repeticiones de B y una repeticion de C se haria de la siguiente manera:

                         <!--T:136-->
idx  |  LayoutCourWhich | LayoutCourTimes | Significado
                      --------+------------------+-----------------+------------------
                        _     |                  |                 |
                       /  0   |         1        |       1         | Bloque 1 (A) repetir una vez
                       |      |                  |                 |
                       |  1   |         2        |       6         | Bloque 2 (B) repetir 6 veces
                       |      |                  |                 |
                       |  2   |         3        |       1         | Bloque 3 (C) repetir una vez
LayoutCourNRepeats=6  <       |                  |                 |
                       |  3   |         1        |       1         | Bloque 1 (A) repetir una vez
                       |      |                  |                 |
                       |  4   |         2        |       6         | Bloque 2 (B) repetir 6 veces
                       |      |                  |                 |
                       \_ 5   |         3        |       1         | Bloque 3 (C) repetir una vez
                              |                  |                 |




<!--T:137-->
*LayoutJacqNRepeats int32
Numero de repeticiones de agujas. Solo afecta el jacquard. Sigue el mismo sistema que las repeticiones de pasadas.

<!--T:138-->
*LayoutJacqNLayouts int32
Numero de bloques de agujas a repetir

<!--T:139-->
*LayoutJacqRepeat int32(LayoutJacqNLayouts)
Numero de agujas que contiene cada bloque a repetir

<!--T:140-->
*LayoutJacqWhich int32(LayoutJacqNRepeats)
indice del bloque que a repetir

<!--T:141-->
*LayoutJacqTimes int32(LayoutJacqNRepeats)
numero de veces que se ha de repetir el bloque.

<!--T:142-->

</translate>