report: generate many images
This commit is contained in:
parent
05d830187c
commit
08036453c9
2 changed files with 38 additions and 1 deletions
6
Makefile
6
Makefile
|
@ -18,7 +18,9 @@ all: generation tortue traceur svg
|
||||||
# Generation du fichier XML des L-systèmes
|
# Generation du fichier XML des L-systèmes
|
||||||
generation:
|
generation:
|
||||||
$(CONVERTER) $(SYSTEMS).csv -o $(SYSTEMS).xml
|
$(CONVERTER) $(SYSTEMS).csv -o $(SYSTEMS).xml
|
||||||
|
ifeq ($(NOCHECK),)
|
||||||
$(VALIDATE) $(SYSTEMS).xsd $(SYSTEMS).xml 1>/dev/null
|
$(VALIDATE) $(SYSTEMS).xsd $(SYSTEMS).xml 1>/dev/null
|
||||||
|
endif
|
||||||
|
|
||||||
# Génération du fichier XML de la tortue + vérification
|
# Génération du fichier XML de la tortue + vérification
|
||||||
tortue:
|
tortue:
|
||||||
|
@ -28,12 +30,16 @@ ifeq ($(and $(nom),$(n)),)
|
||||||
@false
|
@false
|
||||||
endif
|
endif
|
||||||
$(SAXON) -s:$(SYSTEMS).xml -xsl:$(TORTUE).xsl -o:$(TORTUE).xml nom=$(nom) n=$(n)
|
$(SAXON) -s:$(SYSTEMS).xml -xsl:$(TORTUE).xsl -o:$(TORTUE).xml nom=$(nom) n=$(n)
|
||||||
|
ifeq ($(NOCHECK),)
|
||||||
$(VALIDATE) $(TORTUE).xsd $(TORTUE).xml 1>/dev/null
|
$(VALIDATE) $(TORTUE).xsd $(TORTUE).xml 1>/dev/null
|
||||||
|
endif
|
||||||
|
|
||||||
# Génération du fichier XML du traceur + vérification
|
# Génération du fichier XML du traceur + vérification
|
||||||
traceur:
|
traceur:
|
||||||
$(SAXON) -s:$(TORTUE).xml -xsl:$(TRACEUR).xsl -o:$(TRACEUR).xml
|
$(SAXON) -s:$(TORTUE).xml -xsl:$(TRACEUR).xsl -o:$(TRACEUR).xml
|
||||||
|
ifeq ($(NOCHECK),)
|
||||||
$(VALIDATE) $(TRACEUR).xsd $(TRACEUR).xml 1>/dev/null
|
$(VALIDATE) $(TRACEUR).xsd $(TRACEUR).xml 1>/dev/null
|
||||||
|
endif
|
||||||
|
|
||||||
# Génération du fichier SVG
|
# Génération du fichier SVG
|
||||||
svg:
|
svg:
|
||||||
|
|
|
@ -6,13 +6,44 @@ PDF = $(TEX:.tex=.pdf)
|
||||||
|
|
||||||
TEXMK = latexmk -shell-escape -lualatex -interaction=nonstopmode
|
TEXMK = latexmk -shell-escape -lualatex -interaction=nonstopmode
|
||||||
QPDF = qpdf --linearize --replace-input
|
QPDF = qpdf --linearize --replace-input
|
||||||
|
MKDIR = mkdir -p
|
||||||
|
ECHO = echo
|
||||||
|
CD = cd
|
||||||
|
MV = mv
|
||||||
|
|
||||||
|
REPORT_DIR = report
|
||||||
|
IMG_DIR = imgs
|
||||||
|
|
||||||
|
|
||||||
all: $(PDF)
|
all: $(PDF)
|
||||||
|
|
||||||
$(PDF): %.pdf: %.tex
|
$(PDF): %.pdf: %.tex
|
||||||
|
ifneq ($(wildcard $(IMG_DIR)/.*),)
|
||||||
$(TEXMK) $<
|
$(TEXMK) $<
|
||||||
@$(QPDF) $@ 2>/dev/null |:
|
@$(QPDF) $@ 2>/dev/null |:
|
||||||
|
else
|
||||||
|
# Generate SVG if no imgs/ directory found
|
||||||
|
@$(MAKE) generate_svg
|
||||||
|
@$(MAKE) $@
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
EXTS = aux fdb_latexmk fls log nav out snm synctex.gz toc
|
EXTS = aux fdb_latexmk fls log nav out snm synctex.gz toc
|
||||||
clean:
|
clean:
|
||||||
rm -rf $(PDF) _minted-$(NAME)/ $(foreach ext,$(EXTS),$(NAME).$(ext))
|
rm -rf $(PDF) _minted-$(NAME)/ $(IMG_DIR)/ \
|
||||||
|
$(foreach ext,$(EXTS),$(NAME).$(ext))
|
||||||
|
|
||||||
|
generate_svg:
|
||||||
|
@$(MKDIR) $(IMG_DIR)
|
||||||
|
# List of Lsystem to generate as pair `name,n`, space separated
|
||||||
|
@$(CD) ..; $(MAKE) -s generation; \
|
||||||
|
for pair in \
|
||||||
|
snow,5 koch,2 koch1,2 koch2,3 koch3,3 koch5,4 sierp,7 gosp6,4 gosp4,2 \
|
||||||
|
star,7 moore,3 peano,3 koch8,6 pyramid,3 carpet,4 square,4 pentaplexy,3 \
|
||||||
|
triangles,3 blocks,2; do \
|
||||||
|
IFS=',' read -r nom n <<< "$$pair"; \
|
||||||
|
$(MAKE) -s NOCHECK=1 tortue nom=$$nom n=$$n; \
|
||||||
|
$(MAKE) -s NOCHECK=1 traceur; $(MAKE) -s svg; \
|
||||||
|
$(MV) image.svg $(REPORT_DIR)/$(IMG_DIR)/$$nom.svg; \
|
||||||
|
$(ECHO) "'$$nom' generated with $$n iterations."; \
|
||||||
|
done
|
||||||
|
|
Reference in a new issue