Rozdelovacka mapy

Pavel Machek pavel na ucw.cz
Čtvrtek Červenec 1 14:46:11 CEST 2004


Ahoj!

Tohle by se treba mohlo nekomu hodit... Je to schopny pracovat i s
*hodne* velkym obrazkem. Udela to sadu htmlek ve kterych se da
posunovat klikanim. 

								Pavel
#!/bin/bash
#
# Copyright 2004 Pavel Machek <pavel na ucw.cz>
#
# Distribute under GPLv2
#
#

pnm() {
    zcat cesta_k_mape.pnm.gz
}

htmlline() {
	echo "<a href=\"$1_$2.html\"><img src=\"$1_$2.png\"></a><td>"
#	echo "<a href=\"$1_$2.html\">$1 x $2</a><td>"
}

html() {
    FILE=$1_$2.html
    (
	echo "<html><head></head><body>"
	echo "<a href=\"$[$1-1]_$[$2+0].html\">Left</A>"
	echo "<a href=\"$[$1+1]_$[$2+0].html\">Right</A>"
	echo "<a href=\"$[$1+0]_$[$2-1].html\">Up</A>"
	echo "<a href=\"$[$1+0]_$[$2+1].html\">Down</A>"
	echo "<br>"
	echo "<table><tr><td>"
	htmlline $[$1-1] $[$2-1]
	htmlline $[$1+0] $[$2-1]
	htmlline $[$1+1] $[$2-1]
	echo "<tr><td>"
	htmlline $[$1-1] $[$2+0]
	htmlline $[$1+0] $[$2+0]
	htmlline $[$1+1] $[$2+0]
	echo "<tr><td>"
	htmlline $[$1-1] $[$2+1]
	htmlline $[$1+0] $[$2+1]
	htmlline $[$1+1] $[$2+1]
	echo "</tr></table></body>"
    ) > $FILE
}

pnm | head -2 | tail -1 | ( read SIZEX SIZEY
    echo $1 is $SIZEX x $SIZEY

    NUMX=10
    NUMY=10

    TILEX=$[$SIZEX/$NUMX]
    TILEY=$[$SIZEY/$NUMY]

    echo - tiles will be $TILEX x $TILEY
    
    Y=0
    while [ $Y -lt $SIZEY ]; do
	X=0
	while [ $X -lt $SIZEX ]; do
	    XNUM=$[$X/$TILEX]
	    YNUM=$[$Y/$TILEY]
	    echo "Processing ${XNUM}_${YNUM} (position ${X}_${Y})"
	    ( pnm | pnmcut $X $Y $TILEX $TILEY - | pnmtopng > ${XNUM}_${YNUM}.png ) || echo problem 
	    html $XNUM $YNUM
	    ls -alh ${XNUM}_${YNUM}.png
	    X=$[$X+$TILEX]
	    done
	Y=$[$Y+$TILEY]
	done
)

-- 
People were complaining that M$ turns users into beta-testers...
...jr ghea gurz vagb qrirybcref, naq gurl frrz gb yvxr vg gung jnl!


Další informace o konferenci Linux