# Last edited on 2008-02-04 12:47:05 by stolfi

EXDIR := $${STOLFIHOME}/bureau/ic-3/palco-2005-10/fig

DO_FIGS = ${SPEC_FIGS}

# DO_FIGS =
  
SPEC_FIGS := \
  800:600:fig-810-stage-solo \
  800:700:fig-811-stage-bnch \
  \
  800:800:fig-820-stage-box-dims \
  800:800:fig-821-stage-box-expl \
  800:800:fig-822-stage-box-fram \
  800:800:fig-823-stage-box-solo \
  \
  800:800:fig-830-stage-stair-dims \
  800:600:fig-831-stage-stair-expl \
  800:800:fig-832-stage-stair-fram \
  800:600:fig-833-stage-stair-solo \
  \
  400:800:fig-840-stage-rail-dims \
  \
  600:600:fig-850-stage-rail-plug-dims \
  400:600:fig-851-stage-rail-plug-expl \
  400:600:fig-853-stage-rail-plug-solo

TEST_FIGS := \
  600:600:fig-910-test-bench \
  600:600:fig-920-test-computer \
  600:600:fig-930-test-human \
  600:600:fig-960-test-basics \
  600:600:fig-970-test-ctrim

ALL_FIGS := \
  \
  ${TEST_FIGS} \
  \
  ${SPEC_FIGS} \
  \
  640:480:fig-051-stage-1 \
  640:480:fig-053-stage-3 \
  640:480:fig-054-stage-4 \
  640:480:fig-061-stage-1-bench \
  640:480:fig-063-stage-3-bench \
  640:480:fig-064-stage-4-bench \
  \
  640:480:fig-010-lab-302-curr \
  640:480:fig-011-lab-302-curr \
  640:480:fig-012-lab-302-curr \
  640:480:fig-013-lab-302-curr \
  640:480:fig-014-lab-302-curr \
  640:480:fig-015-lab-302-curr \
  \
  800:800:fig-020-lab-302-curr-t \
  \
  640:480:fig-210-lab-302-stage \
  640:480:fig-211-lab-302-stage \
  640:480:fig-212-lab-302-stage \
  640:480:fig-213-lab-302-stage \
  640:480:fig-214-lab-302-stage \
  640:480:fig-215-lab-302-stage \
  \
  800:800:fig-220-lab-302-stage-t \
  \
  640:480:fig-030-lab-304-curr \
  640:480:fig-031-lab-304-curr \
  640:480:fig-032-lab-304-curr \
  640:480:fig-033-lab-304-curr \
  \
  800:800:fig-040-lab-304-curr-t \
  \
  640:480:fig-230-lab-304-stage \
  640:480:fig-231-lab-304-stage \
  640:480:fig-232-lab-304-stage \
  640:480:fig-233-lab-304-stage \
  \
  800:800:fig-240-lab-304-stage-t

DONT_DO_FIGS := \
  \
  640:480:fig-010-lab-302-curr \
  640:480:fig-011-lab-302-curr \
  640:480:fig-012-lab-302-curr \
  640:480:fig-013-lab-302-curr \
  640:480:fig-014-lab-302-curr \
  640:480:fig-015-lab-302-curr \
  ${ALL_FIGS}
  
JUNK_FIGS := \
  640:480:fig-052-stage-2 \
  640:480:fig-062-stage-2-bench

INCLUDES := \
  computer.inc \
  human.inc \
  bench-dimensions.inc \
  bench.inc \
  whiteboard.inc \
  screen.inc \
  stage-dimensions.inc \
  stage.inc \
  stage-box.inc \
  stage-box-frame.inc \
  stage-box-rail-holes.inc \
  stage-basics.inc \
  stage-stair.inc \
  stage-stair-frame.inc \
  stage-rail.inc \
  stage-ramp.inc \
  stage-chamfer.inc \
  stage-ctrim.inc \
  stage-textures.inc \
  lab.inc \
  lights-lab.inc \
  lights-detail.inc \
  lights-camera.inc \
  camera.inc \
  misc-arrows.inc \
  scene-test-basics.inc \
  scene-test-bench.inc \
  scene-test-ctrim.inc \
  scene-test-stage.inc \
  scene-test-stage-box.inc \
  scene-test-stage-stair.inc \
  scene-test-stage-rail.inc \
  scene-test-stage-rail-plug.inc \
  scene-test-computer.inc \
  scene-test-human.inc \
  scene-lab-302.inc \
  scene-lab-304.inc

.PHONY: all single cleanup  image showimage export
  
all: 
	for fig in ${DO_FIGS} ; do \
          ${MAKE} FIGARGS=$$fig single ; \
        done

export: ${EXDIR}
	for fig in ${DO_FIGS} ; do \
          ${MAKE} FIGARGS=$$fig export-single ; \
        done
        
        
######################################################################
# Sub-makefile - caller must define ${FIGARGS}

FIGARGS := FIGARGS.IS.UNDEFINED

ifneq "/${FIGARGS}" "/FIGARGS.IS.UNDEFINED"

FIELDS   := ${subst :, ,${FIGARGS}}
WIDTH    := ${word  1,${FIELDS}}
HEIGHT   := ${word  2,${FIELDS}}
FIG      := ${word  3,${FIELDS}}

ICONFIG = ${FIG}-i

POVPUB = $${STOLFIHOME}/pkg/povray-3.50c-1/PUB
POVRAY = ${POVPUB}/i686-Linux-2.2/bin/povray
POVINC = ${POVPUB}/share/povray-3.5/include
POVTTF = $${STOLFIHOME}/PUB/povray/tt-fonts
IMVIEW = display -title '%d/%f'
CONVERT = convert

# single: image showimage
single: image
	@echo "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@"

cleanup: 
	-/bin/rm -f ${FIG}.png

image: ${FIG}.png

showimage: ${FIG}.png
	-${IMVIEW} ${FIG}.png

NRAYS := 2

${FIG}.png: ${FIG}.pov ${INCLUDES}
	@echo "@@@ ${FIG} @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@"
	-/bin/rm -f ${FIG}.png
	nice ${POVRAY} \
            +FN +Q9 \
            +W${WIDTH} +H${HEIGHT} \
            +AM1 +A0.0 +R${NRAYS} \
            +D +SP32 +EP4 \
            +L${POVINC} \
            +L${POVTTF} \
	    +I${FIG}.pov \
	    +O${FIG}.png


ICONHEIGHT := 100

${ICONFIG}.jpg: ${FIG}.png
	convert ${FIG}.png \
            -quality 99 \
            -resize 'x${ICONHEIGHT}' \
            ${ICONFIG}.jpg
        
export-single: ${FIG}.png ${ICONFIG}.jpg
	cp -av ${FIG}.png ${ICONFIG}.jpg ${EXDIR}


endif
# End ${FIGARGS} sub-makefile.
######################################################################

ALL_PNGS := ${addsuffix .png,${patsubst %:,,${patsubst %:,,${ALL_FIGS}}}}

debug: 
	@echo "${ALL_PNGS}"
