ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Aditya Mahajan <adityam@umich.edu>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: random background picture in metafun
Date: Tue, 13 Mar 2012 14:00:57 -0400 (EDT)	[thread overview]
Message-ID: <alpine.LNX.2.02.1203131358580.17709@qrpragenyvmrq> (raw)
In-Reply-To: <4F5F76CC.1090800@gmx.net>

On Tue, 13 Mar 2012, Peter Rolf wrote:

> Am 13.03.2012 15:45, schrieb Thomas A. Schmitz:
>> Hi all,
>>
>> scenario: for a presentation, I want the background to be a random
>> picture, taken from a directory "backgroundpics." The pictures are
>> numbered consecutively as 1.jpg through 22.jpg. For some complex
>> reasons, it would be easier for me to include these pictures via metafun
>> (I want to add other graphical elements on top). So my question is, how
>> can I pick a random picture? Given the code
>>
>> StartPage ;
>>   draw externalfigure "backgoundpics/1" xscaled PaperWidth yscaled
>> PaperHeight ;
>> StopPage ;
>>
>> how can I obtain a random number and make metapost pick the
>> corresponding picture? Sorry, difficult to make a minimal example here...
>>
> (slightly tested)
>
> string mypath, rndfile;
>
> mypath:= "backgroundpics/";
> nofpics:= 22;
>
> n:= round(uniformdeviate(nofpics-1)+1);

Actually, round (uniformdeviate(nopics-1)) does not give equal weightage 
to 1 and nofpics. A better solution is

n:= floor(uniformdeviate(nofpics)) + 1;

which gives a uniform weight to all numbers.

> rndfile:= mypath & decimal n;

Aditya
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________


  parent reply	other threads:[~2012-03-13 18:00 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-13 14:45 Thomas A. Schmitz
2012-03-13 15:58 ` Aditya Mahajan
2012-03-13 16:33 ` Peter Rolf
2012-03-13 16:56   ` Thomas A. Schmitz
2012-03-13 17:09     ` Thomas A. Schmitz
2012-03-13 18:00   ` Aditya Mahajan [this message]
2012-03-13 18:24     ` Peter Rolf
2012-03-15  9:18       ` Thomas A. Schmitz
2012-03-15 18:06         ` Hans Hagen
2012-03-15 18:23           ` Thomas A. Schmitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LNX.2.02.1203131358580.17709@qrpragenyvmrq \
    --to=adityam@umich.edu \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).