# Last edited on 2019-05-27 18:10:36 by stolfilocal ###################################################################### # Creates a image. Caller must define ${POVNAME}, ${IMAGENAME}, ${WIDTH}, ${HEIGHT}, # ${NRAYS}, ${SHOW}. # The root source file will be ${POVNAME}.pov. # The output image file will be ${IMAGENAME}.png. # The ${SHOW} must be "YES" to display the image during and after tracing. # POVNAME := POVNAME.IS.UNDEFINED ifneq "${POVNAME}" "POVNAME.IS.UNDEFINED" IMAGENAME := IMAGENAME.IS.UNDEFINED ifneq "${IMAGENAME}" "IMAGENAME.IS.UNDEFINED" WIDTH := WIDTH.IS.UNDEFINED ifneq "${WIDTH}" "WIDTH.IS.UNDEFINED" HEIGHT := HEIGHT.IS.UNDEFINED ifneq "${HEIGHT}" "HEIGHT.IS.UNDEFINED" NRAYS := NRAYS.IS.UNDEFINED ifneq "${NRAYS}" "NRAYS.IS.UNDEFINED" SHOW := SHOW.IS.UNDEFINED ifneq "${SHOW}" "SHOW.IS.UNDEFINED" POVFILE := ${POVNAME}.pov OTHERINPUTS := ${filter-out ${POVNAME}-%, ${wildcard *.inc pic-*.png }} # POV-Ray installation directories: POVPUB := /usr POVRAY := ${POVPUB}/bin/povray POVINC := ${POVPUB}/share/povray-3.7/include/ POVTTF := tt-fonts POVTOOLS := ../tools POVSHOW := -D IMVIEW = display -title "%f" .PHONY:: \ image showimage \ clean IMAGEFILE := ${IMAGENAME}.png LOGFILE := ${IMAGENAME}.log IMAGEBORDER := 0 all: ${IMAGEFILE} ${IMAGEFILE}: ${POVFILE} ${OTHERINPUTS} @echo "OTHERINPUTS = ${OTHERINPUTS}" -/bin/rm -f ${IMAGEFILE} ${LOGFILE} touch ${LOGFILE} ( ${POVRAY} \ +FN +Q9 +MB1 \ +W${WIDTH} +H${HEIGHT} \ +AM1 +A0.0 +R${NRAYS} \ ${POVSHOW} \ +L${POVINC} \ +L${POVTTF} \ +I${POVFILE} \ +O${IMAGEFILE} || \ echo "=== aborted ===" \ ) > ${LOGFILE} 2>&1 @echo "=== end ===" >> ${LOGFILE} ${POVTOOLS}/reformat-povray-output.gawk ${LOGFILE} if [[ -s ${IMAGEFILE} ]]; then \ { if [[ "/${SHOW}" == "/YES" ]]; then ${IMVIEW} ${IMAGEFILE} ; fi } ; \ else \ exit 1 ; \ fi clean:: -/bin/rm -f ${IMAGEFILE} endif # ${SHOW} endif # ${NRAYS} endif # ${HEIGHT} endif # ${WIDTH} endif # ${IMAGENAME} endif # ${POVNAME} # End ######################################################################