[Therion] How do I locate the object causing an error
Martin Budaj
m.budaj at gmail.com
Thu Jan 15 16:32:18 CET 2009
> Still, I'd like to know how to identify the objects referred to by the
> bracketed numbers, so I can tidy up the few "scrap outline intersects
> itself" errors that I get.
"Scrap outline intersects itself" warning gives the scrap reference,
so look at the walls in that scrap. In some older thread (or wiki
perhaps?) there are examples of some weird self-intersections. Anyway,
after some fixes in PDF processing this warning is not so critical as
it used to be and the map usually looks fine.
For real errors it is not easy to give a convenient reference, because
MetaPost does not offer any exception catching facilities.
Currently you can look at the line starting with 'l.<number>' (in your
case l.18855) -- the number is the line number in the metapost file
data.mp where the error occured. In this file you can find the name of
problematic scrap (look for current_scrap definition preceding the
line with error).
The file data.mp is located in temporary directory thTMPDIR, which is
created if therion is run with -d option.
Bracketed numbers are MetaPost figures (the number is displayed after
the figure is processed). Each figure contains some part of some
scrap. In data.mp each figure starts with "beginfig(<number>)".
Martin
P.S. The most common source of errors are lines with zero-length
segments. We need to fix therion so that it would not export them for
metapost -- than the errors could be much less frequent.
More information about the Therion
mailing list