81,84c81,84
< //Funciones añadidas
< //sp_pen_context_set_mode Sobrecarga la función "sp_pen_context_set_polilyne_mode" con el fin de poner
< //Valor a la nueva propiedad de "SPPenContext" pc->spiro. Esta función se podrá usar 
< //si se añaden nuebos modos en el futuro, como el previsto BSpline
---
> //Added functions
> //sp_pen_context_set_mode overloads the function "sp_pen_context_set_polilyne_mode" to assign
> //a value to the new property in "SPPenContext" pc->spiro. This function can be used if 
> //new nodes are added in the future, as planned in BSpline.
86c86
< //Esta función prepara "SPPenContext" para realizar la función spiro
---
> //This function separates "SPPenContext" to perform the spiro function
88,89c88,89
< //Esta función es llamada por "spiro_symm_node_make_ready" y se usa para
< //preparar la curva en el caso de que empieze en un "Anchor" de otra curva
---
> //This function is called by "spiro_symm_node_make_ready" and it's used to
> //preparate the curve in case it starts in another's curve anchor.
91,92c91,92
< //Esta función es llamada por "spiro_symm_node_make_ready" y se usa para
< //preparar el cierre de la curva en el caso que cierre la curva final
---
> //This function is called by "spiro_symm_node_make_ready" and it's used to
> //preparate the closing of the curve in case it closes the last curve. 
95c95
< //prepara las distintas curvas para transformarlas en una curva spiro.
---
> //preparates the curves for its trasformation into spiro curves.
97c97
< //Spiro funcion clonada de lpe-spiro.cpp
---
> //function spiro cloned from lpe-spiro.cpp
236c236
<     //llamamos a la fución que define los modos Spiro y en el futuro B-Spline
---
> 	//we call the function which defines the Spiro modes and the B-spline in the future
464c464
<     //Con esto evitamos crear un nuevo punto encima de uno ya existente
---
> 	//with this we avoid creating a new point over the existing one
528,529c528,529
<                             //Esto es una recreación de lo anterior para spiro. No se si es imprescidible
<                             //o se puede borrar. Crea un punto.
---
>                             //This is a recreation of the last lines for spiro. I don't know
>                             //if is indispensable or it can be erased. Creates a point.
596c596
<                         //TODO: ¿Es necesario?
---
>                         //TODO: Is this necessary ?
662c662
<     //Sacamos de la función la const "tolerance" porque la necesitamos después
---
> 	//we take out the function the const "tolerance" because we need it later
684,685c684,685
<         // Si el color no está definido como transparente,por ejemplo al cambiar 
<         //de modo de dibujo a spiro o al selecionar la herrameienta pen
---
> 		//If the colour is not defined as trasparent, por example when changing
> 		//from drawing to spiro mode or when selecting the pen tool
687,688c687,688
<             //Cambiamos el color a verde y rojo a transparente ya que estas lineas no son necesarias
<             //para el dibiujo con spiro
---
> 			//We change the green and red colours to transparent, so this lines are not necessary
> 			//to the drawing with spiro
691,692c691,692
<             //Borramos todas los "green_bpaths" para recrearlos despues con el color
<             // transparente recién modificado
---
> 			//We erase all the "green_bpaths" to recreate them after with the colour
> 			//transparency recently modified
706,710c706,710
<         //Aqui redibujamos la curva Spiro cuando se mueve el cursor 
<         //cada vez que la distancia de tolerancia sea sobrepasada.
<         //Se puede mutiplicar el valor de tolerance mejorar el rendimiento
<         //auque perderia fluidez.
<         //También se redibuja la curva Spiro si el cursor se para.
---
>         //Here we redraw the Spiro curve when the cursor is moved
>         //and the tolerance distance is exceeded.
>         //the tolerance value can be multiplied to improve the performance
>         //but it would lost fluency.
>         //If the cursor stops the curve is also redrawed.
712c712
<             //Si no se presiona SHIFT preparamos el nodo para la curva spiro
---
> 			//If SHIFT is not pressed we preparate the spiro curve mode.
714c714
<             //y redibujamos la curva spiro
---
>             //and we redraw the spiro curve
716c716
<             //actualizamos la distancia a la tolerancia
---
>             //we update the distance and the tolerance
720,721c720
<         //Si venimo de trabajar con curva spiro y cambiamos de modo el color de la "green_curve"
<         //es transparente -0x00ff000-
---
> 		//If we come from working with the spiro curve and change the mode the "green_curve" colour is transparent -0x00ff000-
723,724c722,723
<             //como ya no estamos en modo spiro, asignamos los colores originales 
<             //a la curva roja y verde, quitándoles la transparencia
---
> 			//since we are not im spiro mode, we assign the original colours
> 			//to the red and the green curve, removing their transparency 
727c726
<             //borramos los "green_bpaths" para reasignarlos con el nuevo "green_color"
---
> 			//we erase the "green_bpaths" tu reasign them with the new "green_color"
741c740
<         //ocultamos los restos de spiro
---
>         //we hide the spiro rests
878c877
<             //Si no se presiona SHIFT preparamos el nodo para la curva spiro
---
> 			//If SHIFT is not pressed we preparate the spiro curve mode
880c879
<             //lanzamos spiro y chequeamos que devuelve TRUE
---
>             //we launch spiro mode and check if it returns TRUE
882c881
<             //Si intentamos crear un nodo en el mismo sitio que el origen, paramos.
---
> 			//if we try to create a node in the same place than the origin, we stop.
886,887c885,886
<             //marcamos el punto de control del tirador en el punto de origen de la curva roja, 
<             //esto nos sirve como guia de donrde hemos creado el último punto.
---
>             //we mark the holder control point in the origin point of the red curve,
>             //this marks where the last point has been created.
890c889
<             //Ocultamos los tiradores que no nos aportan         
---
> 			//We hide the holders that doesn't contribute anything.    
1378c1377
< //Preparamosla curva Spiro para el siguiente nodo
---
> //We preparate the spiro curve for the next node
1382,1384c1381,1383
<     //Si empezamos la curva sin arrastrar, modificamos la "red_curve" en el punto pc->p[1]
<     // para que la curva no empieze recta
<     //Esto nos vendrá bien para cerrar la curva después
---
> 	//If we start the curve without grabbing, we modify the "red_curve" in pc->p[1] point
> 	//so the curve doesn't start straight
> 	//This will help closing the curve later
1389c1388
<     //Si empezamos la curva en otra curva
---
>     //If we begin a curve in another curve
1391c1390
<         //Preparamos inicio sobre anchor
---
>         //We preparate the start over anchor
1394a1394
>     //If a "red_curve" is already started
1396c1396
<         //MOdificamos los pc->p de "SPPenContext" para sobrescribir la curva a nuestro interés
---
> 		//We modify the "SPPenContext" pc->p to overwrite the curve to follow our intention 
1403,1405c1403,1405
<         //Si estamos sobre un anchor con posibilidad de cerrar la curva preparamos la curva para el cierre
<         if(pc->anchor_statusbar && !pc->red_curve->is_empty()){
<             //Si el cierre es sobre la misma curva
---
> 		//If we are over an anchor with possibility to close the curve, we preparate it for the closing
>          if(pc->anchor_statusbar && !pc->red_curve->is_empty()){
>             //If the closing is over itself
1409c1409
<             //El cierre es sobre otra curva
---
> 			//The closing is over another curve
1413c1413
<         //modificamos la curva a los valores que hemos modificado
---
>         //we add the curve to the modified values
1417c1417
<         //borramos el punto de control si cerramos la curva
---
> 		//we erase the control point if we are closing the curve.
1423c1423
< //Crea una nueva curva reseteando la original
---
> //Creates a new curve resetting the original
1429,1430c1429,1430
< //Continua una curva existente modificado esta para que el nodo de unión
< //sea SYMM en vez de CUSP, si no tenemos la tecla SHIFT pulsada
---
> //Continues an existing curve modifying it so the union mode is SYMM instead
> //of CUSP, if SHIFT key is not pressed.
1436c1436
<     //Damos la vuelta a la curva, si continuamos la curva por el principio de otra curva 
---
>     //We turn around the curve, if we continue the curve by the another's curve start
1441c1441
<     //Obtenemos los 4 puntos de el último segmento de la curva previa
---
>     //We obtain the last segment 4 points in the previous curve 
1446c1446
<         //Creamos un punto matematicamente para poderlo asignar a el punto 2 del último segmento
---
> 		//We create a point mathematically so we can assign it to the second point of the last segment
1448c1448
<         //movemos ligeramente el punto para que no coincida
---
> 		//we move slightly the point so it doesn't coincide
1450c1450
<         //Recreamos el ultimo segmento pero con el punto 3 modificado
---
> 		//We recreate the last segment but with the 3rd point modified
1454c1454
<         //eliminalos el último segmento
---
> 		//we eliminate the last segment
1456c1456
<         //y lo volvemoa a añadir con la recreación
---
> 		//and we add it again with the recreation
1458c1458
<         //Si le habíanmos dado la vuelta...
---
> 		//If we had turned around...
1462c1462
<         //marcamos en la posición opuesta el punto 1 de la curva actual
---
> 		//mark in the oposite direction the 1st point in the actual curve
1467,1470c1467,1470
< //Cierra la curva actual modificado esta para que el nodo de unión
< //sea SYMM en vez de CUSP, si no tenemos la tecla SHIFT pulsada
< //simplemente toma el valor del segmento donde se quiere cerrar la curva
< //y se asigna el opuesto a la curva en curso en el punto 2
---
> //Close the actual curve, modifying this so the union mode
> //is SYMM instead of CUSP, if we don't have the SHIFT key pressed
> //simply it takes the segment value where the curve wants to be closed
> //and assigns the oposite to the curve in the 2nd point
1493c1493
< //prepara las distintas curvas para transformarlas en una curva spiro
---
> //prepares the curves to trasformate them in a spiro curve
1495c1495
<     //Creamos la curva base
---
> 	//We create the base curve
1497c1497
<     //Si es continuamos una curva existente la añadimos al principio
---
> 	//If we continuate the existing curve we add it at the start
1504c1504
<     //Añadimos también la curva verde
---
>     //We add also the green curve
1508c1508
<     //y la roja
---
>     //and the red one
1512c1512
<     //Si estamos sobre un "anchor" que cierra la curva, cerramos la curva
---
>     //If we stay over an "anchor" which closes a curve, we close it
1529c1529
<         //Si la curva está vacía
---
> 		//if the curve is empty
1533c1533
< //Spiro funcion clonada de lpe-spiro.cpp
---
> //Spiro function cloned from lpe-spiro.cpp
