<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ca">
	<id>https://wiki.cadt.com/index.php?action=history&amp;feed=atom&amp;title=Drf-reader%2Fca</id>
	<title>Drf-reader/ca - Historial de revisió</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.cadt.com/index.php?action=history&amp;feed=atom&amp;title=Drf-reader%2Fca"/>
	<link rel="alternate" type="text/html" href="https://wiki.cadt.com/index.php?title=Drf-reader/ca&amp;action=history"/>
	<updated>2026-04-13T12:20:31Z</updated>
	<subtitle>Historial de revisió per a aquesta pàgina del wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://wiki.cadt.com/index.php?title=Drf-reader/ca&amp;diff=2987&amp;oldid=prev</id>
		<title>FuzzyBot: Important una nova versió des d&#039;una font externa</title>
		<link rel="alternate" type="text/html" href="https://wiki.cadt.com/index.php?title=Drf-reader/ca&amp;diff=2987&amp;oldid=prev"/>
		<updated>2016-10-05T13:30:58Z</updated>

		<summary type="html">&lt;p&gt;Important una nova versió des d&amp;#039;una font externa&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pàgina nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
[[Category:SAPO]]&lt;br /&gt;
[[Category:Devel]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== DLL_EXPORTS ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void drf_clear_errors()&lt;br /&gt;
Descr:Borra todos los mensajes de error del almacenamiento interno de la librería dinámica.&lt;br /&gt;
&lt;br /&gt;
int drf_get_num_errors();&lt;br /&gt;
Descr:Obtiene el número de mensajes de error almacenados por la librería dinámica.&lt;br /&gt;
Return:número de mensajes almacenados.&lt;br /&gt;
&lt;br /&gt;
const char* drf_get_error(int idx)&lt;br /&gt;
Descr:Obtiene el mensaje de error indicado por idx (referenciado a 0).&lt;br /&gt;
p:idx: Número de mensaje a obtener. Rango entre: 0 y (drf_get_num_errors()-1) ambos incluidos.&lt;br /&gt;
Return: Éxito: Puntero a una cadena de caracteres ASCII terminada por el byte NUL (&amp;#039;\0&amp;#039;)&lt;br /&gt;
        Error: NULL en caso que el valor de idx esté fuera de rango.&lt;br /&gt;
&lt;br /&gt;
int drf_to_json(char *path,FILE *json,int options)&lt;br /&gt;
Descr:Serializa a JSON un archivo DRF.&lt;br /&gt;
p:path: Ruta al fichero DRF a serializar en formato Windows ANSI.&lt;br /&gt;
p:json: puntero FILE ya abierto y con la escritura habilitada.&lt;br /&gt;
p:options: Selecciona que información se serializará. Valores possibles:&lt;br /&gt;
   DRF_GET_GENERIC_INFO&lt;br /&gt;
   DRF_GET_MACHINE_INFO&lt;br /&gt;
   DRF_GET_DRAFT_INFO&lt;br /&gt;
   DRF_GET_ALL_INFO&lt;br /&gt;
o una combinación de los valores anteriores via or bit a bit&lt;br /&gt;
&lt;br /&gt;
Return: Éxito : retorna valor igual a 0&lt;br /&gt;
        Error : retorna valor diferente de 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TAGS ===&lt;br /&gt;
&lt;br /&gt;
Codificación a JSON de los datos:&lt;br /&gt;
&lt;br /&gt;
Internamente el DRF guarda la información como una lista de tags. Cada tag puede contener uno o varios elementos del mismo tipo.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
En caso que el tag pueda contener más de un valor, la librería serializa el contenido como un vector.&lt;br /&gt;
&lt;br /&gt;
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 &lt;br /&gt;
tipo del JSON se convierte cada tipo del DRF &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    DRF  | JSON   &lt;br /&gt;
  -------+--------&lt;br /&gt;
  byte   | &lt;br /&gt;
  int16  | int&lt;br /&gt;
  int32  |&lt;br /&gt;
  -------+-------&lt;br /&gt;
  float  | float&lt;br /&gt;
  -------+-------&lt;br /&gt;
  string | string*&lt;br /&gt;
&lt;br /&gt;
*) Todos los strings contienen solo caracteres ASCII (encoding:ASCII-7)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== TAGS GENERIC INFO ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Software string&lt;br /&gt;
Nombre del programa que ha generado el fichero .DRF&lt;br /&gt;
&lt;br /&gt;
*DrawName string&lt;br /&gt;
Referencia del dibujo (max. 256 carac).&lt;br /&gt;
&lt;br /&gt;
*Company string&lt;br /&gt;
Compañía que ha creado el dibujo (max. 30 carac).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== TAGS MACHINE INFO ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Machine string&lt;br /&gt;
Referencia de la máquina. (max. 30 carac) &lt;br /&gt;
&lt;br /&gt;
*MachineType string&lt;br /&gt;
Modelo de la máquina. Sólo es válido un modelo definido en el sistema de diseño. (p.e. LEAVERS)&lt;br /&gt;
&lt;br /&gt;
*Description string&lt;br /&gt;
Descripción o información adicional de la máquina.&lt;br /&gt;
&lt;br /&gt;
*Serial string&lt;br /&gt;
Num. serie de la máquina. (max. 30 carac) . Puede contener carácteres no numéricos.&lt;br /&gt;
&lt;br /&gt;
*Version int32 [RASCHEL SU]&lt;br /&gt;
Versión de la máquina raschel SU (versión 1 .. 4).&lt;br /&gt;
   versión 1 . Sin ahorrador de memoria&lt;br /&gt;
   versión 2 . Con ahorrador de memoria (repeticiones)&lt;br /&gt;
   versión 3 . Sin ahorrador de memoria + información empresa.&lt;br /&gt;
   versión 4 . Con ahorrador de memoria (repeciciones) + información empresa.&lt;br /&gt;
&lt;br /&gt;
*Jacquard int32&lt;br /&gt;
Número de barras de Jacquard independientes. Valores posibles: &lt;br /&gt;
   0 : No jacquard&lt;br /&gt;
   1 : 1 jacquard o fina barra simple&lt;br /&gt;
   2 : 2 jacquard raschel o fina barra doble.&lt;br /&gt;
&lt;br /&gt;
*Fronture int32 [RASCHEL DOUBLE NEEDLE BAR]&lt;br /&gt;
Número de fonturas de la máquina&lt;br /&gt;
   1 : 1 fontura&lt;br /&gt;
   2 : 2 fontures (delante / detrás)&lt;br /&gt;
&lt;br /&gt;
*BarsRepeat int32&lt;br /&gt;
Altura del diseño.&lt;br /&gt;
&lt;br /&gt;
*NumRepeats int32&lt;br /&gt;
Num de repeticiones en el diseño.&lt;br /&gt;
&lt;br /&gt;
*NumBars int32&lt;br /&gt;
Numero de barras que tiene el telar.&lt;br /&gt;
&lt;br /&gt;
*Plate int32&lt;br /&gt;
En máquinas raschel (textronic), indica la posición de la plancha.&lt;br /&gt;
En máquinas leavers indica donde empiezan los brodeurs.&lt;br /&gt;
&lt;br /&gt;
*JacqNeedles int32&lt;br /&gt;
Numero de agujas de Jacquard del telar.&lt;br /&gt;
&lt;br /&gt;
*MachNeedles int32&lt;br /&gt;
Numero total de agujas del telar.&lt;br /&gt;
&lt;br /&gt;
*BarsOffset int32&lt;br /&gt;
Desplazamiento de barras (orillos=zona perdida)&lt;br /&gt;
&lt;br /&gt;
*JacqOffset int32&lt;br /&gt;
Deplazamiento de las agujas de jacquard en el telar.&lt;br /&gt;
&lt;br /&gt;
*MaxDisp int32 [RASCHEL SU]&lt;br /&gt;
Deplazamiento máximo general de las barras para máquinas raschel SU.&lt;br /&gt;
&lt;br /&gt;
*Proximity int32&lt;br /&gt;
Para máquinas raschel, distáncia máxima a la que se pueden acercar dos barras del mismo grupo.&lt;br /&gt;
&lt;br /&gt;
*ProximityCollindant int32&lt;br /&gt;
Para máquinas raschel, distáncia máxima a la que se pueden acercar dos barras del mismo grupo colindantes.&lt;br /&gt;
&lt;br /&gt;
*JacqRt int32&lt;br /&gt;
Deplazamiento Rt del jacquard:&lt;br /&gt;
&lt;br /&gt;
para máquinas raschel:&lt;br /&gt;
   no jacquard: rt = 0&lt;br /&gt;
   jacquard simple o doble: rt = 1&lt;br /&gt;
Indica cuántas agujas se desplaza la lectura del jacaquard en las pasadas alternadas.&lt;br /&gt;
&lt;br /&gt;
para máquinas leavers&lt;br /&gt;
   no fina barra:      0&lt;br /&gt;
   fina barra simple: -1&lt;br /&gt;
   fina barra doble:   0&lt;br /&gt;
Indica cuántas agujas se desplaza la lectura del jacquard (desde la posición derecha de la máquina en las pasadas alternadas).&lt;br /&gt;
&lt;br /&gt;
*JacqRtCourse int32&lt;br /&gt;
Indica que pasadas se aplica el valor JacqRt.&lt;br /&gt;
   0:pasadas pares&lt;br /&gt;
   1: pasadas impares&lt;br /&gt;
&lt;br /&gt;
*FinalGauge float&lt;br /&gt;
Galga de producto tejido aplicando encongimiento (medida en agujas/pulgada)&lt;br /&gt;
&lt;br /&gt;
*FinalQuality float&lt;br /&gt;
Calidad de producto tejido aplicando elasticidad (medida en pasadas/centímetro).&lt;br /&gt;
&lt;br /&gt;
*RealGauge float&lt;br /&gt;
Galga de máquina (medida en agujas/pulgada)-&lt;br /&gt;
&lt;br /&gt;
*RealQuality float&lt;br /&gt;
Calidad de máquina (medida en pasadas/centímetro).&lt;br /&gt;
&lt;br /&gt;
*Shrinkage float&lt;br /&gt;
Porcentage de encongimiento en agujas (0-100%)&lt;br /&gt;
&lt;br /&gt;
*Elasticity float&lt;br /&gt;
Porcentage de elasticidad en pasadas (0-100%)&lt;br /&gt;
&lt;br /&gt;
*BarNumBar int32(NumBars)&lt;br /&gt;
Numero de cada una de las barras del telar (valor numérico consecutivo)&lt;br /&gt;
&lt;br /&gt;
*BarName string(NumBars)&lt;br /&gt;
Nombre o identificador de cada una de las barras del telar&lt;br /&gt;
&lt;br /&gt;
*BarGroup int32(NumBars)&lt;br /&gt;
En máquinas raschel el número de grupo de la barra.&lt;br /&gt;
&lt;br /&gt;
*BarStop int32(NumBars)&lt;br /&gt;
Posición 0 de la barra.&lt;br /&gt;
&lt;br /&gt;
*BarUtil int32(NumBars)&lt;br /&gt;
Visibilidad de la barra en el sistema de diseño.&lt;br /&gt;
&lt;br /&gt;
*BarType int32(NumBars)&lt;br /&gt;
Tipo de hilo por defecto de la barra.&lt;br /&gt;
&lt;br /&gt;
*BarMaxGimp int32&lt;br /&gt;
Guimpada máxima en agujas de la barra.&lt;br /&gt;
&lt;br /&gt;
*BarDrive int32&lt;br /&gt;
En máquinas raschel SU, el número de getribe de la barra.&lt;br /&gt;
&lt;br /&gt;
*BarFactor int32&lt;br /&gt;
En máquinas raschel SU, multiplicador de la barra.&lt;br /&gt;
1: factor de 1 agulla&lt;br /&gt;
2: factor de 2 agulles,&lt;br /&gt;
4: factor de 4 agulles.&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*BarInvert int32&lt;br /&gt;
En máquinas raschel SU, les barres invertides. &lt;br /&gt;
1: barra invertida.&lt;br /&gt;
0: barra no invertida.&lt;br /&gt;
&lt;br /&gt;
*BarWork int32&lt;br /&gt;
Trabajo de la barra en el sistema de diseño.&lt;br /&gt;
&lt;br /&gt;
   0: Chainette&lt;br /&gt;
   1: Jacquard     [1]&lt;br /&gt;
   2: Brodeur&lt;br /&gt;
   3: Gros&lt;br /&gt;
   4: Fin&lt;br /&gt;
   5: Brillant&lt;br /&gt;
   6: Picot&lt;br /&gt;
   7: Corde&lt;br /&gt;
   8: Lycra&lt;br /&gt;
   9: Fond&lt;br /&gt;
  10: Bloc&lt;br /&gt;
  11: Cord&lt;br /&gt;
  12: Guimp&lt;br /&gt;
  13: Nul&lt;br /&gt;
  14: Jacq 0/2,6/4 [1]&lt;br /&gt;
  15: Jacq 0/2,8/6 [1]&lt;br /&gt;
  16: Fine Bar.  [sup]&lt;br /&gt;
  17: Braquette&amp;quot;&lt;br /&gt;
  18: Jacquard     [2]&lt;br /&gt;
  19: Jacq 0/2,6/4 [2]&lt;br /&gt;
  20: Jacq 0/2,8/6 [2]&lt;br /&gt;
  21: Fine Bar.  [inf]&lt;br /&gt;
  22: Jacquard&lt;br /&gt;
  23: Fine Barre&lt;br /&gt;
  24: Fallplate&lt;br /&gt;
  25: Embrodery&lt;br /&gt;
  26: EFS&lt;br /&gt;
  27: Reservé 1&lt;br /&gt;
  28: Reservé 2&lt;br /&gt;
  29: Jacq 0/2,6/4&lt;br /&gt;
  30: Jacq 0/2,8/6&lt;br /&gt;
  31: Bord&lt;br /&gt;
  32: Lisieres&lt;br /&gt;
  33: Romaines&lt;br /&gt;
  34: Sonnette&lt;br /&gt;
  35: Guimp devant&lt;br /&gt;
  36: Petite Corde&lt;br /&gt;
  37: Fileur&lt;br /&gt;
  38: Separation&lt;br /&gt;
  39: Corde Termo&lt;br /&gt;
  40: Solv rom&lt;br /&gt;
  41: Vis&lt;br /&gt;
  42: Jacquard     [3]&lt;br /&gt;
  43: Jacquard     [4]&lt;br /&gt;
  44: Space Fabric&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*BarKnit&lt;br /&gt;
En máquines raschel textronic tipous de lligada:&lt;br /&gt;
  0 : no planxa&lt;br /&gt;
  1 : lligada 1 (mecanica)&lt;br /&gt;
  2 : lligada 2 (binaria)&lt;br /&gt;
  3 : lligada 3 (mecánica (2))&lt;br /&gt;
  4 : lligada 4 (binària (2))&lt;br /&gt;
&lt;br /&gt;
*BarTimes&lt;br /&gt;
En máquines raschel textonic temps de la lligada&lt;br /&gt;
  0 : no planxa&lt;br /&gt;
  2 : temps 2 (p.e) 0202 0202 0202&lt;br /&gt;
  4 : temps 4 (p.e) 0220 0220 0220&lt;br /&gt;
&lt;br /&gt;
*BarMode&lt;br /&gt;
En máquines raschel textronic el mode la la barra:&lt;br /&gt;
  0 : mode A (p.e 0220)&lt;br /&gt;
  1 : mode B (p.e 2002)&lt;br /&gt;
&lt;br /&gt;
*BarModif int32&lt;br /&gt;
En máquines raschel textronic indica que la barra no es pot deslligar&lt;br /&gt;
  0 : no es pot deslligar&lt;br /&gt;
  1 : si es pot deslligar&lt;br /&gt;
&lt;br /&gt;
*BarTension int32&lt;br /&gt;
Tensió de la barra a les simulacions.&lt;br /&gt;
&lt;br /&gt;
*BarNumFingers int32(NumBars)&lt;br /&gt;
Número de pasadors de la barra&lt;br /&gt;
&lt;br /&gt;
*BarModeDrop int32(NumBars)&lt;br /&gt;
Ponderación de cada uno de los 7 bits que se usan para indicar el desplazamiento de la barra. Valores:&lt;br /&gt;
&lt;br /&gt;
 Valor | B7 | B6 | B5 | B4 | B3 | B2 | B1&lt;br /&gt;
 ------+----+----+----+----+----+----+----&lt;br /&gt;
    0  |  8 |  8 |  8 |  4 |  2 |  1 |1/2&lt;br /&gt;
 ------+----+----+----+----+----+----+----&lt;br /&gt;
    1  | 16 |  8 |  8 |  4 |  2 |  1 |1/2&lt;br /&gt;
 ------+----+----+----+----+----+----+----&lt;br /&gt;
    2  | 16 | 16 |  8 |  4 |  2 |  1 |1/2&lt;br /&gt;
 ------+----+----+----+----+----+----+----&lt;br /&gt;
    3  | 32 | 16 |  8 |  4 |  2 |  1 |1/2&lt;br /&gt;
 ------+----+----+----+----+----+----+----&lt;br /&gt;
    4  |  8 |  8 |  8 |  8 |  4 |  2 | 1&lt;br /&gt;
 ------+----+----+----+----+----+----+----&lt;br /&gt;
    5  | 16 |  8 |  8 |  8 |  4 |  2 | 1&lt;br /&gt;
 ------+----+----+----+----+----+----+----&lt;br /&gt;
    6  |  4 |  4 |  4 |  4 |  2 |  1 | 1&lt;br /&gt;
 ------+----+----+----+----+----+----+----&lt;br /&gt;
    7  |  0 |  0 |  0 |  1 |  2 |  1 |1/2&lt;br /&gt;
 ------+----+----+----+----+----+----+----&lt;br /&gt;
    8  |  4 |  4 |  4 |  4 |  2 |  1 |1/2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*BarMaxDesp int32(NumBars)&lt;br /&gt;
Desplazamiento máximo de la barra en agujas&lt;br /&gt;
&lt;br /&gt;
*BarActive byte(NumBars)&lt;br /&gt;
Sólo para maquinas EL. Indica si la barra esta en uso o no.&lt;br /&gt;
&lt;br /&gt;
*BarHalvesUp byte(NumBars)&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
*BarHalvesDn byte(NumBars)&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
*BarString int32(NumBars)&lt;br /&gt;
Valors:&lt;br /&gt;
0:&lt;br /&gt;
1:ple&lt;br /&gt;
2:1f 1x&lt;br /&gt;
3:1x 1f&lt;br /&gt;
4:buit&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*BarFronture int32(NumBars)&lt;br /&gt;
Solo se usa en las máquinas de doble frontura. Da la frontura en la que empieza a trabajar la barra.Valores:&lt;br /&gt;
0: primera forntura&lt;br /&gt;
1: segunda frontura&lt;br /&gt;
&lt;br /&gt;
*BarDropsUtil int32(7*NumBars)&lt;br /&gt;
indica como se deben perforar los 7 posiciones correspondientes a la barra:&lt;br /&gt;
&lt;br /&gt;
Valor:&lt;br /&gt;
0: Usado. Siempre a 1. Es decir: no perforar nunca&lt;br /&gt;
1: Usado, Se perforara o no en funcion del desplazamiento de la barra&lt;br /&gt;
2: Usado. Siemre a 0. Es decir, se perfora siempre&lt;br /&gt;
3: No usado. No se perfora&lt;br /&gt;
&lt;br /&gt;
*FingerStop int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)&lt;br /&gt;
Stop del pasador relativo al stop de la barra.&lt;br /&gt;
&lt;br /&gt;
*FingerType int32(num_fingers) num_fingers=BarNumFingers(0) + ... + BarNumFingers(NumBars-1)&lt;br /&gt;
Tipo de pasador.&lt;br /&gt;
&lt;br /&gt;
*CGF1Card int32&lt;br /&gt;
ha de estar a 0.&lt;br /&gt;
&lt;br /&gt;
*CGF1Type int32&lt;br /&gt;
Número de columnas útiles en el cartón.&lt;br /&gt;
&lt;br /&gt;
*CGF1Taille int32&lt;br /&gt;
Número de columnas totales que caben del cartón.&lt;br /&gt;
&lt;br /&gt;
*CGF1Numlines int32&lt;br /&gt;
numero de entradas de las que consta la especificación del cartón.&lt;br /&gt;
&lt;br /&gt;
*CGF1Script string(CGF1Numlines)&lt;br /&gt;
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.&lt;br /&gt;
Cada cadena de caracteres tiene el formato: &amp;lt;codigo de tipo&amp;gt; &amp;lt;espacio&amp;gt; &amp;lt;numero de repeticiones&amp;gt;. Ex: &amp;quot;LC 1&amp;quot;.&lt;br /&gt;
Los codigos de tipo validos son:&lt;br /&gt;
   LC: Laçage&lt;br /&gt;
   TC: Trou de centrage&lt;br /&gt;
   TS: Trou de centrage simple&lt;br /&gt;
   EL: Element vide&lt;br /&gt;
   GF: Gros fil&lt;br /&gt;
   VB: Value&lt;br /&gt;
&lt;br /&gt;
*CGF1Descrip string(CGF1Numlines)&lt;br /&gt;
Descripción de cada entada del cartón.&lt;br /&gt;
&lt;br /&gt;
Ex:&lt;br /&gt;
&lt;br /&gt;
  CGF1Script | CGF1Descrip&lt;br /&gt;
 ------------+--------------&lt;br /&gt;
   &amp;quot;LC 1&amp;quot;    |  &amp;quot;Laçage&amp;quot;&lt;br /&gt;
   &amp;quot;TC 1&amp;quot;    |  &amp;quot;Trou de centrage&amp;quot;&lt;br /&gt;
   &amp;quot;GF 6&amp;quot;    |  &amp;quot;braquettes&amp;quot;  &lt;br /&gt;
   &amp;quot;GF 4&amp;quot;    |  &amp;quot;stum&amp;quot;                                                                                                      &lt;br /&gt;
   &amp;quot;GF 30&amp;quot;   |  &amp;quot;guimpes&amp;quot;                                                                                                    &lt;br /&gt;
   &amp;quot;TC 1&amp;quot;    |  &amp;quot;Trou de centrage&amp;quot;                                                                                            &lt;br /&gt;
   &amp;quot;LC 1&amp;quot;    |  &amp;quot;Laçage&amp;quot;                                                                                                       &lt;br /&gt;
   &amp;quot;GF 26&amp;quot;   |  &amp;quot;guimpes&amp;quot;                                                                                                &lt;br /&gt;
   &amp;quot;GF 4&amp;quot;    |  &amp;quot;stum&amp;quot;                                                                                                   &lt;br /&gt;
   &amp;quot;GF 6&amp;quot;    |  &amp;quot;braquettes&amp;quot;                                                                                               &lt;br /&gt;
   &amp;quot;GF 3&amp;quot;    |  &amp;quot;brodeus&amp;quot;                                                                                                  &lt;br /&gt;
   &amp;quot;TC 1&amp;quot;    |  &amp;quot;Trou de centrage&amp;quot;                                                                                         &lt;br /&gt;
   &amp;quot;LC 1&amp;quot;    |  &amp;quot;Laçage&amp;quot;                                                                                                      &lt;br /&gt;
   &amp;quot;GF 39&amp;quot;   |  &amp;quot;brodeus&amp;quot;                                                                                                 &lt;br /&gt;
   &amp;quot;TC 1&amp;quot;    |  &amp;quot;Trou de centrage&amp;quot;                                                                                           &lt;br /&gt;
   &amp;quot;LC 1&amp;quot;    |  &amp;quot;Laçage&amp;quot;                                                                                                    &lt;br /&gt;
                                                                                                                           &lt;br /&gt;
                                                                                                                          &lt;br /&gt;
  L T                GF39                   L T G   GF6  GF4          GF26            L T               GF30           GF4  GF6  T L&lt;br /&gt;
  C C _____________________________________ C C F  ____  __  ________________________ C C ____________________________  __  ____ C C&lt;br /&gt;
  1 1/                                     \1 1/3\/    \/  \/                        \1 1/                            \/  \/    \1 1&lt;br /&gt;
/------------------------------------------------------------------------------------------------------------------------------------\&lt;br /&gt;
|    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.  OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.  OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    |&lt;br /&gt;
| 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 |&lt;br /&gt;
|    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...    |&lt;br /&gt;
|  ().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()  |&lt;br /&gt;
|    ........................................  ...............OO..OO..O.......O........  ...........O...O...O.O...O...O..........    |&lt;br /&gt;
| O  .O....OO.O.O....O.O.OOO..O.O.OO.O..OOO.O  ..O...........OOO.OOO.OOOOOOO.OOO.OOO.OO  OOOOOOOOOOOOOOOOOOOO.OOOOOOOOO..........  O |&lt;br /&gt;
|    O.OOOOOOO.O.OOOO.O.OOOOOO.O.OOOO.OO.OOO.  OOO..........OOOOOOOOOOOOOOOOOOOOOOOOOO.  OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..........    |&lt;br /&gt;
\------------------------------------------------------------------------------------------------------------------------------------/    &lt;br /&gt;
&lt;br /&gt;
*CGF2Card int32&lt;br /&gt;
ha de estar a 0.&lt;br /&gt;
&lt;br /&gt;
*CGF2Type int32&lt;br /&gt;
Número de columnas útiles en el cartón.&lt;br /&gt;
&lt;br /&gt;
*CGF2Taille int32&lt;br /&gt;
Número de columnas totales que caben del cartón.&lt;br /&gt;
&lt;br /&gt;
*CGF2Numlines int32&lt;br /&gt;
numero de entradas de las que consta la especificación del cartón.&lt;br /&gt;
&lt;br /&gt;
*CGF2Script string(CGF2Numlines)&lt;br /&gt;
Especificación del cartón. Formateado igual que CGF1Script.&lt;br /&gt;
&lt;br /&gt;
*CGF2Descrip string(CGF2Numlines)&lt;br /&gt;
Descripción de cada entada del cartón.&lt;br /&gt;
&lt;br /&gt;
*CFBCard int32&lt;br /&gt;
ha de estar a 1.&lt;br /&gt;
&lt;br /&gt;
*CFBType int32&lt;br /&gt;
Número de columnas útiles en el cartón.&lt;br /&gt;
&lt;br /&gt;
*CFBTaille int32&lt;br /&gt;
Número de columnas totales que caben del cartón multiplicadas por 8.Ex:&lt;br /&gt;
si el cartón tiene 75 columnas CFBTaille=75*8=600&lt;br /&gt;
&lt;br /&gt;
*CFBNumlines int32&lt;br /&gt;
numero de entradas de las que consta la especificación del cartón.&lt;br /&gt;
&lt;br /&gt;
*CFBScript string(CFBNumlines)&lt;br /&gt;
Especificación del cartón. Formateado igual que CGF1Script. Excepto que los tipos aceptados&lt;br /&gt;
son:&lt;br /&gt;
   LC: Laçage&lt;br /&gt;
   TC: Trou de centrage&lt;br /&gt;
   TS: Trou de centrage simple&lt;br /&gt;
   EL: Element vide&lt;br /&gt;
   FB: Fine barre&lt;br /&gt;
   VB: Value&lt;br /&gt;
&lt;br /&gt;
Es decir el tipo &amp;quot;GF&amp;quot; no existe para este tag y en su lugar hay el tipo &amp;quot;FB&amp;quot;&lt;br /&gt;
&lt;br /&gt;
*CFBDescrip string(CFBNumlines)&lt;br /&gt;
Descripción de cada entada del cartón.&lt;br /&gt;
&lt;br /&gt;
*CFBNGaits int32&lt;br /&gt;
Número de entradas para mapear las repeticiones de agujas de Fine Barre a los cartones en función de la repetición.&lt;br /&gt;
&lt;br /&gt;
*CFBGaitNRepeat int32(CFBNGaits)&lt;br /&gt;
Número de repetición a mapear&lt;br /&gt;
&lt;br /&gt;
*CFBGaitNBar int32(CFBNGaits)&lt;br /&gt;
Número de aguja a mapear&lt;br /&gt;
&lt;br /&gt;
*CFBGaitNGait int32(CFBNGaits)&lt;br /&gt;
Indice de agujero en el cartón&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== TAGS DRAFT DATA ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*NumCourses int32&lt;br /&gt;
Numero de pasadas del dibujo sin tener en cuenta las repeticiones.&lt;br /&gt;
&lt;br /&gt;
*BarNeedle int16(NumCourses*NumBars)&lt;br /&gt;
Despazamientos medidos en agujas de las barras en cada pasada. Ordenados de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
   BarNeedle(0)              Desplazamiento barra 1 en la primera pasada.&lt;br /&gt;
   BarNeedle(1)              Desplazamiento barra 1 en la segunda pasada.&lt;br /&gt;
   .&lt;br /&gt;
   .&lt;br /&gt;
   BarNeedle(NumCourses-1)   Desplazamiento barra 1 en la última pasada.&lt;br /&gt;
   BarNeedle(NumCourses)     Desplazamiento barra 2 en la primera pasada.&lt;br /&gt;
   .&lt;br /&gt;
   .&lt;br /&gt;
   BarNeedel(NumCourses*2-1) Desplazamiento barra 2 en la última pasada.&lt;br /&gt;
   BarNeedle(NumCourses)     Desplazamiento barra 3 en la primera pasada.&lt;br /&gt;
   .&lt;br /&gt;
&lt;br /&gt;
*BarNeedleB int16(NumCourses*NumBars)&lt;br /&gt;
Solo se utiliza en maquinas de doble frontura. Es equivalente a BarNeedle pero contiene la información&lt;br /&gt;
para la segunda frontura.&lt;br /&gt;
&lt;br /&gt;
*BarHalves byte(NumCourses*NumBars)&lt;br /&gt;
Incremento de 1/2 aguja en el movimiento de la barra introducido manualmente por el diseñador desde el menú de Bareme&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*BarKnitting byte(NumCourses*NumBars)&lt;br /&gt;
Indica en las maquinas que hacen 2 movimientos por pasada que movimiento se realiza&lt;br /&gt;
Valores:&lt;br /&gt;
 0 : Movimiento 0 0 . No liga&lt;br /&gt;
 1 : Movimeinto 0 1 . Liga&lt;br /&gt;
 2 : Movimeinto 1 0 . Liga&lt;br /&gt;
 3 : Movimeinto 1 1 . No liga&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*BarKnittingB byte(NumCourses*NumBars)&lt;br /&gt;
Solo se utiliza en maquinas de doble frontura. Es equivalente a BarKnitting pero contiene la información&lt;br /&gt;
para la segunda frontura.&lt;br /&gt;
&lt;br /&gt;
*Layout_JacqData byte(NumCourses*JacqNeedles*Jacquard)&lt;br /&gt;
Cada byte guarda un bit de Jacquard. Valores:&lt;br /&gt;
0: T&lt;br /&gt;
1: H&lt;br /&gt;
&lt;br /&gt;
*Layout_FrontureData byte(NumCourses*JacqNeedles*Jacquard)&lt;br /&gt;
Solo se utiliza en maquinas de doble frontura. Es equivalente a Layout_JacqData pero contiene la información&lt;br /&gt;
para la segunda frontura.&lt;br /&gt;
&lt;br /&gt;
*Layout_WBData byte(NumCourses*JacqNeedles*Jacquard)&lt;br /&gt;
Solo se utiliza en maquinas CLIPTRONIC . Contiene los datos para la barra de Embrodery(WB) en el mismo formato que&lt;br /&gt;
Layout_JacqData.&lt;br /&gt;
&lt;br /&gt;
*LayoutCourNRepeats int32&lt;br /&gt;
Numero de repeticiones de pasadas. Las repeticiones de pasadas afectan por igual las barras de dibujo y el jacquard.&lt;br /&gt;
&lt;br /&gt;
*LayoutCourNLayouts int32&lt;br /&gt;
Numero de bloques de pasadas a repetir&lt;br /&gt;
&lt;br /&gt;
*LayoutCourRepeat int32(LayoutCourNLayouts)&lt;br /&gt;
Numero de pasadas que contiene cada bloque a repetir&lt;br /&gt;
&lt;br /&gt;
*LayoutCourWhich int32(LayoutCourNRepeats)&lt;br /&gt;
indice del bloque que a repetir&lt;br /&gt;
&lt;br /&gt;
*LayoutCourTimes int32(LayoutCourNRepeats)&lt;br /&gt;
numero de veces que se ha de repetir el bloque. Ejemplo:&lt;br /&gt;
&lt;br /&gt;
Normalmente como los dibujos suelen ser bastante repetitivos, para ahorrar trabajo y memoria no se guardan todas las pasadas&lt;br /&gt;
del dibujo. En un dibujo como el siguiente :&lt;br /&gt;
&lt;br /&gt;
    +------------------------------------------------------------------------------------------+&lt;br /&gt;
    |  ,~.~._,~.~._,~.~._,~.~._,~.~._,~.~._,~.~.    ,~.~._,~.~._,~.~._,~.~._,~.~._,~.~._,~.~.  | &lt;br /&gt;
    | / 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 \ | &lt;br /&gt;
    |( 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 )| &lt;br /&gt;
    | \ O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O /  \ O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O / | &lt;br /&gt;
    |  )   . ,   . ,   . ,   . ,   . ,   . ,   (    )   . ,   . ,   . ,   . ,   . ,   . ,   (  | &lt;br /&gt;
/\  | (  * -@- * -@- * -@- * -@- * -@- * -@- *  )  (  * -@- * -@- * -@- * -@- * -@- * -@- *  ) | &lt;br /&gt;
 A  |  )   &amp;#039; `   &amp;#039; `   &amp;#039; `   &amp;#039; `   &amp;#039; `   &amp;#039; `   (    )   &amp;#039; `   &amp;#039; `   &amp;#039; `   &amp;#039; `   &amp;#039; `   &amp;#039; `   (  | &lt;br /&gt;
 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 \ | &lt;br /&gt;
 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 )| &lt;br /&gt;
 j  | \ O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O /  \ O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O   O&amp;#039;O / | &lt;br /&gt;
 a  |  ·~·~·^·~·~·^·~·~·^·~·~·^·~·~·^·~·~·^·~·~·    ·~·~·^·~·~·^·~·~·^·~·~·^·~·~·^·~·~·^·~·~·  | &lt;br /&gt;
 s  +------------------------------------------------------------------------------------------+&lt;br /&gt;
     Pasadas &amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si se mira lo que hay guardado en el archivo se encontraría algo similar a :&lt;br /&gt;
                     &lt;br /&gt;
    +---------------+&lt;br /&gt;
    |  ,~.~._,~.~.  |&lt;br /&gt;
    | / O.O   O.O \ |&lt;br /&gt;
    |( O:@:O O:@:O )|&lt;br /&gt;
    | \ O&amp;#039;O   O&amp;#039;O / |&lt;br /&gt;
    |  )   . ,   (  |&lt;br /&gt;
/\  | (  * -@- *  ) | &lt;br /&gt;
 A  |  )   &amp;#039; `   (  |&lt;br /&gt;
 g  | / O.O   O.O \ |&lt;br /&gt;
 u  |( O:@:O O:@:O )|&lt;br /&gt;
 j  | \ O&amp;#039;O   O&amp;#039;O / |&lt;br /&gt;
 a  |  ·~·~·^·~·~·  |&lt;br /&gt;
 s  +---------------+&lt;br /&gt;
     Pasadas &amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Esto pasa por que se ha guardado solo una vez cada bloque que se repite. En este caso los bloques que se han usado:&lt;br /&gt;
&lt;br /&gt;
     A      B        C&lt;br /&gt;
  +----+ +------+ +-----+&lt;br /&gt;
  |  ,~| |.~._,~| |.~.  | &lt;br /&gt;
  | / O| |.O   O| |.O \ | &lt;br /&gt;
  |( O:| |@:O O:| |@:O )| &lt;br /&gt;
  | \ O| |&amp;#039;O   O| |&amp;#039;O / | &lt;br /&gt;
  |  ) | |  . , | |  (  | &lt;br /&gt;
  | (  | |* -@- | |*  ) |&lt;br /&gt;
  |  ) | |  &amp;#039; ` | |  (  | &lt;br /&gt;
  | / O| |.O   O| |.O \ | &lt;br /&gt;
  |( O:| |@:O O:| |@:O )|&lt;br /&gt;
  | \ O| |&amp;#039;O   O| |&amp;#039;O / |  &lt;br /&gt;
  |  ·~| |·~·^·~| |·~·  | &lt;br /&gt;
  +----+ +------+ +-----+&lt;br /&gt;
&lt;br /&gt;
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&lt;br /&gt;
&lt;br /&gt;
LayoutCourNLayouts=3 pues hay tres bloques distintos ( A , B , C )&lt;br /&gt;
&lt;br /&gt;
LayoutCourRepeat=Array(&lt;br /&gt;
   numero de pasadas de A,&lt;br /&gt;
   numero de pasadas de B,&lt;br /&gt;
   numero de pasadas de C&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
NOTA: El número total de pasadas ha de ser igual a la suma de pasadas de los bloques de repeticiones. Es decir:&lt;br /&gt;
NumCourses=LayoutCourRepeat(0)+...+LayoutCourRepeat(LayoutCourNLayouts-1)&lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&lt;br /&gt;
                         idx  |  LayoutCourWhich | LayoutCourTimes | Significado&lt;br /&gt;
                      --------+------------------+-----------------+------------------&lt;br /&gt;
                        _     |                  |                 |&lt;br /&gt;
                       /  0   |         1        |       1         | Bloque 1 (A) repetir una vez&lt;br /&gt;
                       |      |                  |                 |&lt;br /&gt;
                       |  1   |         2        |       6         | Bloque 2 (B) repetir 6 veces&lt;br /&gt;
                       |      |                  |                 |&lt;br /&gt;
                       |  2   |         3        |       1         | Bloque 3 (C) repetir una vez&lt;br /&gt;
LayoutCourNRepeats=6  &amp;lt;       |                  |                 |&lt;br /&gt;
                       |  3   |         1        |       1         | Bloque 1 (A) repetir una vez&lt;br /&gt;
                       |      |                  |                 |&lt;br /&gt;
                       |  4   |         2        |       6         | Bloque 2 (B) repetir 6 veces&lt;br /&gt;
                       |      |                  |                 |&lt;br /&gt;
                       \_ 5   |         3        |       1         | Bloque 3 (C) repetir una vez&lt;br /&gt;
                              |                  |                 |&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*LayoutJacqNRepeats int32&lt;br /&gt;
Numero de repeticiones de agujas. Solo afecta el jacquard. Sigue el mismo sistema que las repeticiones de pasadas.&lt;br /&gt;
&lt;br /&gt;
*LayoutJacqNLayouts int32&lt;br /&gt;
Numero de bloques de agujas a repetir&lt;br /&gt;
&lt;br /&gt;
*LayoutJacqRepeat int32(LayoutJacqNLayouts)&lt;br /&gt;
Numero de agujas que contiene cada bloque a repetir&lt;br /&gt;
&lt;br /&gt;
*LayoutJacqWhich int32(LayoutJacqNRepeats)&lt;br /&gt;
indice del bloque que a repetir&lt;br /&gt;
&lt;br /&gt;
*LayoutJacqTimes int32(LayoutJacqNRepeats)&lt;br /&gt;
numero de veces que se ha de repetir el bloque.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>FuzzyBot</name></author>
	</entry>
</feed>