
/*
	Manuel Cornes
	Dessin de lignes horizontales et verticales - basé sur jquery et plugin 'dimensions'
*/

function lignes( nblocs, blocprefix, divcible ) {

	// création dynamique des segments
	
	$('div#inner_rel').append("<div class='vline' id='vl'></div>");
	
	for(i=0;i<nblocs;i++)
		$('div#inner_rel').append("<div class='hline' id='hl"+i+"'></div>");

	// init
	
	widths = new Array();
	heights = new Array();
	
	for(i=0; i<nblocs; i++) {
	
		bloc = "div#" + blocprefix + i;
		
		widths.push( $(bloc).width() );
		heights.push( $(bloc).height() );
	}
	
	// placer les blocs ------------------------------------------------------------------------------------------------------------
	
	/* en abscisse
	 */

	for(i=0; i<nblocs; i++) {
		$("div#" + blocprefix + i ).css("left", (i%2) ? absd : absg);
	}
	
	/* en ordonnée
	 */
	 
	tops = new Array();

	y = ordstart;
	
	for(i=0; i<nblocs; i+=2) {
	
		// bloc gauche
		
		blocg = "div#" + blocprefix + i;
		$(blocg).css("top", y);
		tops.push(y);
		
		// bloc droite
		
		blocd = "div#" + blocprefix + eval(i+1);
		$(blocd).css("top", y + heights[i] + pad/2 - heights[i+1]/2);
		tops.push(y + heights[i] + pad/2 - heights[i+1]/2);

		y += heights[i] + pad;
	}
	
	// calcul coordonnées point de connexion entre bloc et ligne verticale
	
	midxs= new Array();
	midys= new Array();
	
	for(i=0; i<nblocs; i++) {
	
		ajustement = 8;	// pour bordure transparente !!!
		
		midys.push( tops[i] + heights[i] / 2);
		
		if (i%2) {
			midxs.push(absd + ajustement);
		}
		else {
			midxs.push(absg + widths[i] - ajustement);
		}
	
	}
	
	// abscisse ligne verticale
	centerx = (midxs[0] + midxs[1])/2;
	
	// segment vertical
	
	$("div#vl").css("height", midys[nblocs-1] - midys[0]);
	$("div#vl").css("top", midys[0]);
	$("div#vl").css("left", centerx);
	
	// segments horizontaux
	
	for(i=0; i<nblocs; i++) {
	
		xmin = Math.min(centerx, midxs[i]);
		xmax = Math.max(centerx, midxs[i]);
	
		$("div#hl" + i).css("width",xmax-xmin );
		$("div#hl" + i).css("left",xmin );
		$("div#hl" + i).css("top",midys[i]);
	}
	
	$("div#inner_rel").css("height", tops[nblocs-1] + 200);
}