ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* Metafun - Metapost capacity exceeded
@ 2006-04-03 17:03 Thomas Engel
  2006-04-03 22:29 ` Hans Hagen
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Engel @ 2006-04-03 17:03 UTC (permalink / raw)


Hello,

I'm doing my first work with metafun to generate a switchgear layout
from  a cvs file.
During the run (texexec ) I get the message -  Metapost capacity
exceeded  and a part of the drawing is missing.

I followed the thread  -TeX capacity exceeded with metafun-
and increased the memory size in texmf.cnf but this is not the solution!

Any suggestion what's going wrong?

btw.
it is allowed to send the tex file to the list?

Thanks

Thomas

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Metafun - Metapost capacity exceeded
  2006-04-03 17:03 Metafun - Metapost capacity exceeded Thomas Engel
@ 2006-04-03 22:29 ` Hans Hagen
  0 siblings, 0 replies; 7+ messages in thread
From: Hans Hagen @ 2006-04-03 22:29 UTC (permalink / raw)


Thomas Engel wrote:
> Hello,
>
> I'm doing my first work with metafun to generate a switchgear layout
> from  a cvs file.
> During the run (texexec ) I get the message -  Metapost capacity
> exceeded  and a part of the drawing is missing.
>
> I followed the thread  -TeX capacity exceeded with metafun-
> and increased the memory size in texmf.cnf but this is not the solution!
>
> Any suggestion what's going wrong?
>   
texmfstart bin:scite.exe kpse:texmf.cnf

(or another editor)

will open the used texmf.cnf file, which may giv eyou a clue about the 
memory values
> btw.
> it is allowed to send the tex file to the list?
>   
sure

Hans 

-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
     tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Metafun - Metapost capacity exceeded
  2006-04-05  7:51 ` Hans Hagen
@ 2006-04-05  8:40   ` Taco Hoekwater
  0 siblings, 0 replies; 7+ messages in thread
From: Taco Hoekwater @ 2006-04-05  8:40 UTC (permalink / raw)




Hans Hagen wrote:
> Thomas Engel wrote:
> 
>>Hello Hans,
>>
>>
>>this is the message I got after running texexec pro_mcc_a3.tex.
>>As you can see I have increased the memory size for mp.
>>I have attached the two tex-files.
>>Maybe there is a mistake in the mp-code. A pdf-file will be produced,
>>but if you check the output you will see, that one cubicle is missing!
>>  
> 
> i run out of tex memory (8 meg) while converting the big last one 

Oh yeah, it needs 14.5 MB of memory or so for the conversion.

Taco

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Metafun - Metapost capacity exceeded
  2006-04-04 17:17 Thomas Engel
  2006-04-05  6:27 ` Taco Hoekwater
  2006-04-05  7:51 ` Hans Hagen
@ 2006-04-05  8:12 ` Hans Hagen
  2 siblings, 0 replies; 7+ messages in thread
From: Hans Hagen @ 2006-04-05  8:12 UTC (permalink / raw)


Thomas Engel wrote:
> Hello Hans,
>
>
> this is the message I got after running texexec pro_mcc_a3.tex.
> As you can see I have increased the memory size for mp.
> I have attached the two tex-files.
> Maybe there is a mistake in the mp-code. A pdf-file will be produced,
> but if you check the output you will see, that one cubicle is missing!
>   
ok, i stripped down the sample to one image and coul dgenerate a page 

(btw \twodigitMPoutput will make mem usage less but also the quality) 

now, the problem is in the way you define your graphic: 

def Whatever () = 
  save SomePicture ; 
  picture SomePicture ; 
  lots of draws
  SomePicture := currentpicture ;
  SomePicture % return value
end 

here you *never* erase the currentpicture, so graphic keeps accumulating, and each SomePicture has all previous draws

you can see that on the screen: acrobat takes ages to draw the simple graphic and you can also see it from the mp output (a couple of 100K lines). 

solution: 

def Whatever () = 
  save SomePicture ; 
  picture SomePicture ; 
  lots of draws
  SomePicture := currentpicture ;
  currentpicture := nullpicture ; % ADDED
  SomePicture % return value
end 

or just 

def Whatever () = 
  image ( 
  lots of draws
  ) 
end 

So ... 

Hans 

  

-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
     tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Metafun - Metapost capacity exceeded
  2006-04-04 17:17 Thomas Engel
  2006-04-05  6:27 ` Taco Hoekwater
@ 2006-04-05  7:51 ` Hans Hagen
  2006-04-05  8:40   ` Taco Hoekwater
  2006-04-05  8:12 ` Hans Hagen
  2 siblings, 1 reply; 7+ messages in thread
From: Hans Hagen @ 2006-04-05  7:51 UTC (permalink / raw)


Thomas Engel wrote:
> Hello Hans,
>
>
> this is the message I got after running texexec pro_mcc_a3.tex.
> As you can see I have increased the memory size for mp.
> I have attached the two tex-files.
> Maybe there is a mistake in the mp-code. A pdf-file will be produced,
> but if you check the output you will see, that one cubicle is missing!
>   
i run out of tex memory (8 meg) while converting the big last one 

btw: 

\definelayer[s1]
\defineoverlay[s1][\composedlayer{s1}]
\setupbackgrounds[page][background=s1]

you can omit the second lin ethere (automatically done) 

\definelayer[s1]
\setupbackgrounds[page][background=s1]

also, there is no need for \starttext .. \stoptext inside a \startproject .. \stopproject 

Hans 




-----------------------------------------------------------------
                                          Hans Hagen | PRAGMA ADE
              Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
     tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                             | www.pragma-pod.nl
-----------------------------------------------------------------

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Metafun - Metapost capacity exceeded
  2006-04-04 17:17 Thomas Engel
@ 2006-04-05  6:27 ` Taco Hoekwater
  2006-04-05  7:51 ` Hans Hagen
  2006-04-05  8:12 ` Hans Hagen
  2 siblings, 0 replies; 7+ messages in thread
From: Taco Hoekwater @ 2006-04-05  6:27 UTC (permalink / raw)


Thomas Engel wrote:
> Hello Hans,
> 
> 
> this is the message I got after running texexec pro_mcc_a3.tex.
> As you can see I have increased the memory size for mp.
> I have attached the two tex-files.
> Maybe there is a mistake in the mp-code. A pdf-file will be produced,
> but if you check the output you will see, that one cubicle is missing!

No problems here. It uses 2351976 words of memory, though.

Cheers, Taco

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Metafun - Metapost capacity exceeded
@ 2006-04-04 17:17 Thomas Engel
  2006-04-05  6:27 ` Taco Hoekwater
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Thomas Engel @ 2006-04-04 17:17 UTC (permalink / raw)


[-- Attachment #1: Type: text/plain, Size: 1502 bytes --]

Hello Hans,


this is the message I got after running texexec pro_mcc_a3.tex.
As you can see I have increased the memory size for mp.
I have attached the two tex-files.
Maybe there is a mistake in the mp-code. A pdf-file will be produced,
but if you check the output you will see, that one cubicle is missing!

Thanks for your help!

Thomas




 TeXExec 5.4.3 - ConTeXt / PRAGMA ADE 1997-2005

              metapost : pro_mcc_a3-mpgraph
                format : metafun
This is MetaPost, Version 0.901 (Web2C 7.5.3)
(/home/thomas/texmf/web2c/natural.tcx)
(pro_mcc_a3-mpgraph.mp [1] [2] [3] [4] [5] [6] [7] [8] [9]
! MetaPost capacity exceeded, sorry [main memory size=2000000].
<recently read> ;

l.2277 ...aw he_zehn ((1.75),(5.6), (0.2),(17.5));

9 output files written: pro_mcc_a3-mpgraph.1 .. pro_mcc_a3-mpgraph.9
Transcript written on pro_mcc_a3-mpgraph.log.
 error in metapost run : pro_mcc_a3-mpgraph.mp:2277

        total run time : 0 seconds
  sorting and checking : running texutil

 TeXUtil 9.0.0 - ConTeXt / PRAGMA ADE 1992-2004

                action : processing commands, lists and registers
                option : sorting IJ under Y
                option : converting high ASCII values
            input file : pro_mcc_a3.tui
           output file : pro_mcc_a3.tuo
       passed commands : 18
         remapped keys : 0
      register entries : 0 -> 0 entries 0 references
       synonym entries : 0 -> 0 entries
        embedded files : 2

        total run time : 7 seconds




[-- Attachment #2: prd_mcc_a3.tex --]
[-- Type: text/x-tex, Size: 21232 bytes --]

\startproduct prd_mcc_a3
\project pro_mcc_a3
\setuppapersize[A3, landscape][A3, landscape]


\startMPenvironment
  \setupbodyfont[pos]
\stopMPenvironment

\startuseMPgraphic{fra}

   StartPage ;
       u:=10mm;
     draw Page enlarged -1cm;
     draw Page enlarged -0.80cm;
     draw (1u,2u)--(41u,2u)--cycle;
   StopPage ;

\stopuseMPgraphic



\startuniqueMPgraphic{bottomline}
  draw bottomboundary OverlayBox
  leftenlarged 6pt rightenlarged 6pt
  shifted (0,.75HeaderHeight) ;
  setbounds currentpicture to OverlayBox ; % forces dimensions
\stopuniqueMPgraphic

\startuseMPgraphic{ruler}
u:=5mm;
draw(0,0)--(78u,0)--(0,0);
defaultfont:="cmr5";
draw (0,0)--(0,-0.5u);
label(decimal 0,(0,-1u+4));
for n=1 upto 77:
   draw (1u*n,0)--(1u*n,-0.5u);
endfor
for n=1 upto 38.5 :
   defaultfont:="cmr5";
   label(decimal (2n*100),(1u*2n,-1u+4));
  % draw (2u*n,0)--(2u*n,-0.5u);
  % defaultfont:="cmr5";
   label(decimal (2n*100-100),(1u*2n-1u,-1.1u));
endfor
\stopuseMPgraphic

\startuseMPgraphic{vruler}
u:=5mm;
draw(0,0)--(0,24u)--(0,0);
defaultfont:="cmr5";
draw (0,0)--(-0.5u,0);
label(decimal 0,(-1u+4,0));
for n=1 upto 24:
   draw (0,1u*n)--(-0.5u,1u*n);
endfor
for n=1 upto 24 :
   defaultfont:="cmr5";
   label(decimal (n*100),(-1.2u,1u*n));
endfor
\stopuseMPgraphic







\setupMPvariables[mcc1000][e1=0,e2=0,e3=0,e4=0,e5=0,e6=0,e7=0,e8=0,e9=0]
\startuseMPgraphic{mcc1000}{e1,e2,e3,e4,e5,e6,e7,e8,e9}
  vardef he_eins (expr h, b, ho, vo) =
     save Panel, z;
     picture Panel;
     path s[] ;
     u:=5mm;
     s1 := (0,0)--(b*u,0)--(b*u,h*u)--(0,h*u)--cycle;
     s2 := (0.2u,0.1u)--(0.2u,(h-0.05)*u);
     s3 := ((b-0.2)*u,0.1u)--((b-0.2)*u,(h-0.05)*u);
     s4 := (4.8u,0.3u)--(4.8u,0.7u);
     draw s1 shifted (ho*u,vo*u);
     pickup pencircle scaled 1;
     draw s2 shifted (ho*u,vo*u);
     draw s3 shifted (ho*u,vo*u);
     pickup pencircle scaled 0.5;
%    %Simocode
     draw unitsquare xscaled 1.4u yscaled 0.6u shifted ((ho+0.4)*u,(vo+h-0.8)*u) ;
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+0.5)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+0.8)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+1.1)*u,(vo+h-0.7)*u);
%    %Schalter
    draw unitsquare xscaled 0.6u yscaled 0.6u shifted ((ho+4.5)*u,(vo+0.2)*u);
    draw fullcircle scaled 0.45u shifted  ((ho+4.8)*u,(vo+0.5)*u);
    draw fullcircle scaled 0.3u shifted  ((ho+4.8)*u,(vo+0.5)*u);
    pickup pencircle scaled 1;
    draw s4 shifted (ho*u,vo*u) ;
   pickup pencircle scaled 0.5;
   Panel:=currentpicture;
   Panel
enddef;

  vardef he_zehn (expr h, b, ho, vo) =
     save Panel, z;
     picture Panel;
     path s[] ;
     u:=5mm;
     s1 := (0,0)--(b*u,0)--(b*u,h*u)--(0,h*u)--cycle;
     s2 := (0.2u,0.1u)--(0.2u,(h-0.05)*u);
     s3 := ((b/2+0.2)*u,0.1u)--((b/2+0.2)*u,(h-0.05)*u);
     s4 := (4.8u,0.3u)--(4.8u,0.7u);
     s5 := (2u,0.3u)--(2u,0.7u);
     s6 := (2.8u,0)--(2.8u,1.75u);
    draw s1 shifted (ho*u,vo*u);
    pickup pencircle scaled 1;
    draw s2 shifted (ho*u,vo*u);
    pickup pencircle scaled 0.5;
%    %Simocode
     draw unitsquare xscaled 1.4u yscaled 0.6u shifted ((ho+0.4)*u,(vo+h-0.8)*u) ;
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+0.5)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+0.8)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+1.1)*u,(vo+h-0.7)*u);
%    %Schalter
    draw unitsquare xscaled 0.6u yscaled 0.6u shifted ((ho+1.7)*u,(vo+0.2)*u);
   draw fullcircle scaled 0.45u shifted  ((ho+2)*u,(vo+0.5)*u);
   draw fullcircle scaled 0.3u shifted  ((ho+2)*u,(vo+0.5)*u);
    pickup pencircle scaled 1;
    draw s5 shifted (ho*u,vo*u) ;
    pickup pencircle scaled 0.5;
    draw s6 shifted (ho*u,vo*u) ;
   pickup pencircle scaled 0.5;
   Panel:=currentpicture;
   Panel
enddef;

 vardef he_elf (expr h, b, ho, vo) =
     save Panel, z;
     picture Panel;
     path s[] ;
     u:=5mm;
     s1 := (0,0)--(b*u,0)--(b*u,h*u)--(0,h*u)--cycle;
     s2 := (0.2u,0.1u)--(0.2u,(h-0.05)*u);
     s3 := ((b/2+0.2)*u,0.1u)--((b/2+0.2)*u,(h-0.05)*u);
     s4 := (4.8u,0.3u)--(4.8u,0.7u);
     s5 := (2u,0.3u)--(2u,0.7u);
     s6 := (2.8u,0)--(2.8u,1.75u);
    draw s1 shifted (ho*u,vo*u);
    pickup pencircle scaled 1;
    draw s2 shifted (ho*u,vo*u);
    draw s3 shifted (ho*u,vo*u);
    pickup pencircle scaled 0.5;
    %Simocode   links
     draw unitsquare xscaled 1.4u yscaled 0.6u shifted ((ho+0.4)*u,(vo+h-0.8)*u) ;
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+0.5)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+0.8)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+1.1)*u,(vo+h-0.7)*u);
  %Simocode   rechts
     draw unitsquare xscaled 1.4u yscaled 0.6u shifted ((ho+3.2)*u,(vo+h-0.8)*u) ;
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+3.3)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+3.7)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+4)*u,(vo+h-0.7)*u);


    %Schalter links
    draw unitsquare xscaled 0.6u yscaled 0.6u shifted ((ho+1.7)*u,(vo+0.2)*u);
   draw fullcircle scaled 0.45u shifted  ((ho+2)*u,(vo+0.5)*u);
   draw fullcircle scaled 0.3u shifted  ((ho+2)*u,(vo+0.5)*u);
    pickup pencircle scaled 1;
    draw s5 shifted (ho*u,vo*u) ;
    pickup pencircle scaled 0.5;

    %Schalter  rechts
    draw unitsquare xscaled 0.6u yscaled 0.6u shifted ((ho+4.5)*u,(vo+0.2)*u);
   draw fullcircle scaled 0.45u shifted  ((ho+4.8)*u,(vo+0.5)*u);
   draw fullcircle scaled 0.3u shifted  ((ho+4.8)*u,(vo+0.5)*u);
    pickup pencircle scaled 1;
    draw s5 shifted ((ho+2.8)*u,vo*u) ;
   pickup pencircle scaled 0.5;

    draw s6 shifted (ho*u,vo*u) ;
  pickup pencircle scaled 0.5;
   Panel:=currentpicture;
   Panel
enddef;


 vardef he_zweidreivier (expr h, b, ho, vo) =
     save Panel, z;
     picture Panel;
     path s[] ;
     u:=5mm;
     s1 := (0,0)--(b*u,0)--(b*u,h*u)--(0,h*u)--cycle;
     s2 := (0.2u,0.1u)--(0.2u,(h-0.05)*u);
     s3 := ((b-0.2)*u,0.1u)--((b-0.2)*u,(h-0.05)*u);
     s4 := (4.8u,0.3u)--(4.8u,0.7u);
     s5 := fullcircle scaled 0.7u ;
     s6 := unitsquare xscaled 0.8u yscaled 0.2u  shifted ((ho+b/2-0.2)*u,(vo+h-1.2-0.1)*u)  ;
     s7 := unitsquare xscaled 0.8u yscaled 0.8u ;
     s8 := unitsquare xscaled 0.3u yscaled 0.15u shifted ((ho+b/2-0.15)*u,(vo+h-1.2-0.075)*u) ;
     s9 := fullcircle scaled 0.15u shifted (5.6u,(h/2)*u);
    draw s1 shifted (ho*u,vo*u);
    draw s9 shifted (ho*u,vo*u);
    pickup pencircle scaled 1;
    pickup pencircle scaled 0.5;
%    %Simocode
     draw unitsquare xscaled 1.4u yscaled 0.6u shifted ((ho+0.4)*u,(vo+h-0.8)*u) ;
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+0.5)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+0.8)*u,(vo+h-0.7)*u);
    draw unitsquare xscaled 0.2u yscaled 0.2u shifted ((ho+1.1)*u,(vo+h-0.7)*u);
%    %Schalter
    draw s5 shifted ((ho+b/2)*u,(vo+h-1.2)*u)  ;
    fill s6 withcolor 0.1 white ;
    draw s6;
    draw s7 shifted ((ho+b/2-0.4)*u,(vo+h-1.2-0.4)*u)  ;
    fill s8 withcolor yellow   ;
   Panel:=currentpicture;
   Panel
enddef;


  path s[],k ;
  u:=5mm;
  z0 = origin;
  z1 = (10u,0);
  z2 = (10u,22u);
  z3 = (0,22u);
  z4 = z0 +(0.5u,0.5u);
  z5 = (4u,0) +(-0.5u,0.5u);
  z6 = z0 +(0.5u,7.5u);
  z7 = (4u,0) +(-0.5u,7.5u);

  s1 := z0--z1--z2--z3--cycle;
  s2 := (0.1u,0.7u)--(5.9u,0.7u)--(5.9u,21.7u)--(0.1u,21.7u)--cycle;
  s3 := z4--z5--z7--z6--cycle;
  s4 := fullcircle scaled 0.15u shifted (6.3u,11u);

 %  k := (4u,15u)--(5u,15u)--(5u,16u)--(4u,16u)--cycle;
 %Schrank Rahmen außen
 draw s1;
 draw s2;
 draw (6.1u,0.7u)--(9.9u,0.7u)--(9.9u,21.7u)--(6.1u,21.7u)--cycle;
 draw s4;
 if \MPvar{e1}=1:
   draw he_eins ((1.75),(5.6), (0.2),(3.5));
 fi;
 if \MPvar{e1}=10:
   draw he_zehn ((1.75),(5.6), (0.2),(3.5));
 fi;
 if \MPvar{e1}=11:
   draw he_elf ((1.75),(5.6), (0.2),(3.5));
 fi;
 if \MPvar{e1}=2:
   draw he_zweidreivier ((3.5),(5.8), (0.1),(3.5));
 fi;
 if \MPvar{e1}=3:
   draw he_zweidreivier ((5.25),(5.8), (0.1),(3.5));
 fi;
 if \MPvar{e1}=4:
   draw he_zweidreivier ((7),(5.8), (0.1),(3.5));
 fi;
 if \MPvar{e2}=1:
   draw he_eins ((1.75),(5.6), (0.2),(5.25));
 fi;
 if \MPvar{e2}=10:
   draw he_zehn ((1.75),(5.6), (0.2),(5.25));
 fi;
 if \MPvar{e2}=11:
   draw he_elf ((1.75),(5.6), (0.2),(5.25));
 fi;

 if \MPvar{e3}=11:
   draw he_elf ((1.75),(5.6), (0.2),(7));
 fi;
 if \MPvar{e3}=1:
   draw he_eins ((1.75),(5.6), (0.2),(7));
 fi;
 if \MPvar{e3}=10:
   draw he_zehn ((1.75),(5.6), (0.2),(7));
 fi;
 if \MPvar{e3}=11:
   draw he_elf ((1.75),(5.6), (0.2),(7));
 fi;
 if \MPvar{e3}=2:
   draw he_zweidreivier ((3.5),(5.8), (0.1),(7));
 fi;
 if \MPvar{e4}=1:
   draw he_eins ((1.75),(5.6), (0.2),(8.75));
 fi;
 if \MPvar{e4}=10:
   draw he_zehn ((1.75),(5.6), (0.2),(8.75));
 fi;
 if \MPvar{e4}=11:
   draw he_elf ((1.75),(5.6), (0.2),(8.75));
 fi;
 if \MPvar{e4}=2:
   draw he_zweidreivier ((3.5),(5.8), (0.1),(8.75));
 fi;
 if \MPvar{e4}=3:
   draw he_zweidreivier ((5.25),(5.8), (0.1),(8.75));
 fi;
 if \MPvar{e5}=1:
   draw he_eins ((1.75),(5.6), (0.2),(10.5));
 fi;
 if \MPvar{e5}=10:
   draw he_zehn ((1.75),(5.6), (0.2),(10.5));
 fi;
 if \MPvar{e5}=11:
   draw he_elf ((1.75),(5.6), (0.2),(10.5));
 fi;
 if \MPvar{e5}=2:
   draw he_zweidreivier ((3.5),(5.8), (0.1),(10.5));
 fi;
 if \MPvar{e5}=3:
   draw he_zweidreivier ((5.25),(5.8), (0.1),(10.5));
 fi;
 if \MPvar{e5}=4:
   draw he_zweidreivier ((7),(5.8), (0.1),(10.5));
 fi;
 if \MPvar{e6}=1:
   draw he_eins ((1.75),(5.6), (0.2),(12.25));
 fi;
 if \MPvar{e6}=10:
   draw he_zehn ((1.75),(5.6), (0.2),(12.25));
 fi;
 if \MPvar{e6}=11:
   draw he_elf ((1.75),(5.6), (0.2),(12.25));
 fi;
 if \MPvar{e7}=1:
   draw he_eins ((1.75),(5.6), (0.2),(14));
 fi;
 if \MPvar{e7}=10:
   draw he_zehn ((1.75),(5.6), (0.2),(14));
 fi;
 if \MPvar{e7}=11:
   draw he_elf ((1.75),(5.6), (0.2),(14));
 fi;
 if \MPvar{e7}=2:
   draw he_zweidreivier ((3.5),(5.8), (0.1),(14));
 fi;
 if \MPvar{e8}=1:
   draw he_eins ((1.75),(5.6), (0.2),(15.75));
 fi;
 if \MPvar{e8}=10:
   draw he_zehn ((1.75),(5.6), (0.2),(15.75));
 fi;
 if \MPvar{e8}=11:
   draw he_elf ((1.75),(5.6), (0.2),(15.75));
 fi;
 if \MPvar{e9}=1:
   draw he_eins ((1.75),(5.6), (0.2),(17.5));
 fi;
 if \MPvar{e9}=10:
   draw he_zehn ((1.75),(5.6), (0.2),(17.5));
 fi;
 if \MPvar{e9}=11:
   draw he_elf ((1.75),(5.6), (0.2),(17.5));
 fi;


\stopuseMPgraphic


\startuseMPgraphic{lcm400}
  path s[],k ;
  u:=5mm;
  z0 = origin;
  z1 = (4u,0);
  z2 = (4u,22u);
  z3 = (0,22u);
  z4 = z0 +(0.5u,0.5u);
  z5 = z1 +(-0.5u,0.5u);
  z6 = z0 +(0.5u,7.5u);
  z7 = z1 +(-0.5u,7.5u);
  z8 = z6 +(0,0.2u);
  z9 = z0 +(0.2u,9.5u);
  z10= z9 +(0.1u,0.5u);
  z11= z8 +(0.2u,0.1u);
  z12= z8 +(0.3u,3u);
  z13= z2 +(-2u,-2u);
  z14= 0.2[z3,z2];
  z15= 0.8[z3,z2];
  z16= z3 +(0,2u);
  z17=z13+(0,-0.15u);

  s1 := z0--z1--z2--z3--cycle;
  s2 := (0.1u,0.3u)--(3.9u,0.3u)--(3.9u,21.7u)--(0.1u,21.7u)--cycle;
  s3 := z4--z5--z7--z6--cycle;
  s4 := z0--(0.8u,0)--(0.4u,0.8u)--cycle;
  s5 := (0.4u,0.5u)--(0.3u,0.3u)--(0.5u,0.4u)--(0.4u,0);
  s6 := fullcircle scaled 0.5u shifted z13;
  s7 := unitsquare xscaled 1.5u yscaled 0.3u shifted z17 ;

 %  k := (4u,15u)--(5u,15u)--(5u,16u)--(4u,16u)--cycle;
 %Schrank Rahmen außen
 draw s1;
 draw s2;
 %Lüftungsgitter unten
 fill s3 withcolor 0.625white;
 draw s3 ;
 draw hlingrid(0, 20 ,1, 7u,3u) shifted z4;
 draw vlingrid(0, 2 ,1, 3u,7u) shifted z4;
 %Sinamics Schriftfeld senkrecht
 draw unitsquare xscaled 1.2u yscaled 11u shifted z8;
 draw unitsquare xscaled 1.2u yscaled 1.2u shifted z8;
 draw s4 shifted z11;
 drawarrow s5 shifted z11;
 defaultfont:="cmss10";
 label( btex SINAMICS etex rotated 90,  (1.1u,12u));
 %draw btex \bf SINAMICS etex rotated 90 shifted z12;

 %Schloss
 draw unitsquare xscaled 0.2u yscaled 1u shifted z9;
 fill fullcircle xyscaled 0.1u shifted z10;

 %Haupt-Schalter
 draw fullcircle scaled 0.5u shifted (2.2u,10u);
 draw unitsquare xscaled 1.5u yscaled 0.3u shifted (2.2u,9.85u)
 cutbefore fullcircle scaled 0.5u shifted (2.2u,10u) cutafter
 fullcircle scaled 0.5u shifted (2.2u,10u) ;

 %Simeas
 draw unitsquare xscaled 1.5u yscaled 1.5u shifted (2.2u,18u);
 draw unitsquare xscaled 1u yscaled 1u shifted (2.45u,18.3u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (2.5u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (2.7u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (2.9u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (3.1u,18.1u);

 %Dach
 draw unitsquare xscaled 0.2u yscaled 2u shifted z14;
 draw unitsquare xscaled -0.2u yscaled 2u shifted z15;
 draw unitsquare xscaled 4u yscaled 0.2u shifted z16;

\stopuseMPgraphic


\startuseMPgraphic{lcm600}
  path s[],k ;
  u:=5mm;
  z0 = origin;
  z1 = (6u,0);
  z2 = (6u,22u);
  z3 = (0,22u);
  z4 = z0 +(0.5u,0.5u);
  z5 = z1 +(-0.5u,0.5u);
  z6 = z0 +(0.5u,7.5u);
  z7 = z1 +(-0.5u,7.5u);
  z8 = z6 +(0,0.2u);
  z9 = z0 +(0.2u,9.5u);
  z10= z9 +(0.1u,0.5u);
  z11= z8 +(0.2u,0.1u);
  z12= z8 +(0.3u,3u);
  z13= z2 +(-2u,-2u);
  z14= 0.2[z3,z2];
  z15= 0.8[z3,z2];
  z16= z3 +(0,2u);
  z17=z13+(0,-0.15u);

  s1 := z0--z1--z2--z3--cycle;
  s2 := (0.1u,0.7u)--(5.9u,0.7u)--(5.9u,21.7u)--(0.1u,21.7u)--cycle;
  s3 := z4--z5--z7--z6--cycle;
  s4 := z0--(0.8u,0)--(0.4u,0.8u)--cycle;
  s5 := (0.4u,0.5u)--(0.3u,0.3u)--(0.5u,0.4u)--(0.4u,0);
  s6 := fullcircle scaled 0.5u shifted z13;
  s7 := unitsquare xscaled 1.5u yscaled 0.3u shifted z17 ;
 %  k := (4u,15u)--(5u,15u)--(5u,16u)--(4u,16u)--cycle;
 %Schrank Rahmen außen
 draw s1;
 draw s2;


 %Leistungs-Schalter
 draw unitsquare xscaled 3.3u yscaled 4u shifted (1.2u,9u);
 draw unitsquare xscaled 1u yscaled 2.5u shifted (1.45u,9.3u);
 draw unitsquare xscaled 1u yscaled 1.8u shifted (2.7u,9.5u);
 draw unitsquare xscaled 0.3u yscaled 2.5u shifted (3.9u,9.5u);
 draw fullcircle xyscaled 0.3u shifted (3u,10u);
 draw fullcircle xyscaled 0.3u shifted (3.45u,10u);
 draw fullcircle xyscaled 0.3u shifted (3u,10.7u);


 %Simeas
 draw unitsquare xscaled 1.5u yscaled 1.5u shifted (2.2u,18u);
 draw unitsquare xscaled 1u yscaled 1u shifted (2.45u,18.3u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (2.5u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (2.7u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (2.9u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (3.1u,18.1u);



\stopuseMPgraphic

\startuseMPgraphic{lcm800}
  path s[],k ;
  u:=5mm;
  z0 = origin;
  z1 = (8u,0);
  z2 = (8u,22u);
  z3 = (0,22u);
  z4 = z0 +(0.5u,0.5u);
  z5 = z1 +(-0.5u,0.5u);
  z6 = z0 +(0.5u,7.5u);
  z7 = z1 +(-0.5u,7.5u);
  z8 = z6 +(0,0.2u);
  z9 = z0 +(0.2u,9.5u);
  z10= z9 +(0.1u,0.5u);
  z11= z8 +(0.2u,0.1u);
  z12= z8 +(0.3u,3u);
  z13= z2 +(-2u,-2u);
  z14= 0.2[z3,z2];
  z15= 0.8[z3,z2];
  z16= z3 +(0,2u);
  z17=z13+(0,-0.15u);

  s1 := z0--z1--z2--z3--cycle;
  s2 := (0.1u,0.7u)--(7.9u,0.7u)--(7.9u,21.7u)--(0.1u,21.7u)--cycle;
  s3 := z4--z5--z7--z6--cycle;
  s4 := z0--(0.8u,0)--(0.4u,0.8u)--cycle;
  s5 := (0.4u,0.5u)--(0.3u,0.3u)--(0.5u,0.4u)--(0.4u,0);
  s6 := fullcircle scaled 0.5u shifted z13;
  s7 := unitsquare xscaled 1.5u yscaled 0.3u shifted z17 ;
 %  k := (4u,15u)--(5u,15u)--(5u,16u)--(4u,16u)--cycle;
 %Schrank Rahmen außen
 draw s1;
 draw s2;

 %Leistungs-Schalter
 draw unitsquare xscaled 3.3u yscaled 4u shifted (2.2u,9u);
 draw unitsquare xscaled 1u yscaled 2.5u shifted (2.45u,9.3u);
 draw unitsquare xscaled 1u yscaled 1.8u shifted (3.7u,9.5u);
 draw unitsquare xscaled 0.3u yscaled 2.5u shifted (4.9u,9.5u);
 draw fullcircle xyscaled 0.3u shifted (4u,10u);
 draw fullcircle xyscaled 0.3u shifted (4.45u,10u);
 draw fullcircle xyscaled 0.3u shifted (4u,10.7u);


 %Simeas
 draw unitsquare xscaled 1.5u yscaled 1.5u shifted (3.2u,18u);
 draw unitsquare xscaled 1u yscaled 1u shifted (3.45u,18.3u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (3.5u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (3.7u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (3.9u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (4.1u,18.1u);

\stopuseMPgraphic

\startuseMPgraphic{lcm1000}
  path s[],k ;
  u:=5mm;
  z0 = origin;
  z1 = (10u,0);
  z2 = (10u,22u);
  z3 = (0,22u);
  z4 = z0 +(0.5u,0.5u);
  z5 = (4u,0) +(-0.5u,0.5u);
  z6 = z0 +(0.5u,7.5u);
  z7 = (4u,0) +(-0.5u,7.5u);
  z8 = z6 +(0,0.2u);
  z9 = (4u,0) +(0.2u,9.5u);
  z10= z9 +(0.1u,0.5u);
  z11= z8 +(0.2u,0.1u);
  z12= z8 +(0.3u,3u);
  z13= z2 +(-2u,-2u);
  z14= 0.2[z3,z2];
  z15= 0.8[z3,z2];
  z16= z3 +(0,2u);
  z17=z13+(0,-0.15u);
  z18= (4u,0);
  z19=z4+(4u,0);

  s1 := z0--z1--z2--z3--cycle;
  s2 := (0.1u,0.7u)--(3.9u,0.7u)--(3.9u,21.7u)--(0.1u,21.7u)--cycle;
  s3 := z4--z5--z7--z6--cycle;
  s4 := z0--(0.8u,0)--(0.4u,0.8u)--cycle;
  s5 := (0.4u,0.5u)--(0.3u,0.3u)--(0.5u,0.4u)--(0.4u,0);
  s6 := fullcircle scaled 0.5u shifted z13;
  s7 := unitsquare xscaled 1.5u yscaled 0.3u shifted z17 ;
  s8 := z4+(6u,0)--z5+(6u,0)--z7+(6u,0)--z6+(6u,0)--cycle;

 %  k := (4u,15u)--(5u,15u)--(5u,16u)--(4u,16u)--cycle;
 %Schrank Rahmen außen
 draw s1;
 draw s2;
 draw (4.1u,0.3u)--(9.9u,0.3u)--(9.9u,21.7u)--(4.1u,21.7u)--cycle;
 %Lüftungsgitter unten
 fill s3 withcolor 0.625white;
 draw s3;
 fill (4.5u,0.5u)--(9.5u,0.5u)--(9.5u,7.5u)--(4.5u,7.5u)--cycle withcolor 0.625white;
 draw (4.5u,0.5u)--(9.5u,0.5u)--(9.5u,7.5u)--(4.5u,7.5u)--cycle;
 %fill s8 withcolor 0.625white;
 draw hlingrid(0, 20 ,1, 7u,3u) shifted z4;
 draw vlingrid(0, 2 ,1, 3u,7u) shifted z4;
 draw hlingrid(0, 20 ,1, 7u,5u) shifted z19;
 draw vlingrid(0, 2 ,1, 5u,7u) shifted z19;
 %Sinamics Schriftfeld senkrecht
 draw unitsquare xscaled 1.2u yscaled 11u shifted z8;
 draw unitsquare xscaled 1.2u yscaled 1.2u shifted z8;
 draw s4 shifted z11;
 drawarrow s5 shifted z11;
 defaultfont:="cmss10";
 label( btex SINAMICS etex rotated 90,  (1.1u,12u));
 %draw btex \bf SINAMICS etex rotated 90 shifted z12;

 %Schloss
 draw unitsquare xscaled 0.2u yscaled 1u shifted z9;
 fill fullcircle xyscaled 0.1u shifted z10;

 %Leistungs-Schalter
 draw unitsquare xscaled 3.3u yscaled 4u shifted (4.4u,11u);
 draw unitsquare xscaled 1u yscaled 2.5u shifted (4.65u,11.3u);
 draw unitsquare xscaled 1u yscaled 1.8u shifted (5.9u,11.5u);
 draw unitsquare xscaled 0.3u yscaled 2.5u shifted (7.1u,11.5u);
 draw fullcircle xyscaled 0.3u shifted (6.2u,12u);
 draw fullcircle xyscaled 0.3u shifted (6.65u,12u);
 draw fullcircle xyscaled 0.3u shifted (6.2u,12.7u);



 %Simeas
 draw unitsquare xscaled 1.5u yscaled 1.5u shifted (5.2u,18u);
 draw unitsquare xscaled 1u yscaled 1u shifted (5.45u,18.3u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (5.5u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (5.7u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (5.9u,18.1u);
 draw unitsquare xscaled 0.1u yscaled 0.1u shifted (6.1u,18.1u);



 %Dach
 draw unitsquare xscaled 0.2u yscaled 2u shifted z14;
 draw unitsquare xscaled -0.2u yscaled 2u shifted z15;
 draw unitsquare xscaled 10u yscaled 0.2u shifted z16;

\stopuseMPgraphic

\startuseMPgraphic{leer600}
  path s[],k ;
  u:=5mm;
  z0 = origin;
  z1 = (6u,0);
  z2 = (6u,22u);
  z3 = (0,22u);

  s1 := z0--z1--z2--z3--cycle;
  s2 := (0.1u,0.7u)--(5.9u,0.7u)--(5.9u,21.7u)--(0.1u,21.7u)--cycle;

 %Schrank Rahmen außen
 draw s1;
 draw s2;
% draw (4.1u,0.7u)--(7.9u,0.7u)--(7.9u,21.7u)--(4.1u,21.7u)--cycle;
\stopuseMPgraphic



\startuseMPgraphic{leer800}
  path s[],k ;
  u:=5mm;
  z0 = origin;
  z1 = (8u,0);
  z2 = (8u,22u);
  z3 = (0,22u);

  s1 := z0--z1--z2--z3--cycle;
  s2 := (0.1u,0.7u)--(3.9u,0.7u)--(3.9u,21.7u)--(0.1u,21.7u)--cycle;

 %Schrank Rahmen außen
 draw s1;
 draw s2;
 draw (4.1u,0.7u)--(7.9u,0.7u)--(7.9u,21.7u)--(4.1u,21.7u)--cycle;
\stopuseMPgraphic


\startuseMPgraphic{leer900}
  path s[],k ;
  u:=5mm;
  z0 = origin;
  z1 = (9u,0);
  z2 = (9u,22u);
  z3 = (0,22u);

  s1 := z0--z1--z2--z3--cycle;
  s2 := (0.1u,0.7u)--(4.4u,0.7u)--(4.4u,21.7u)--(0.1u,21.7u)--cycle;

 %Schrank Rahmen außen
 draw s1;
 draw s2;
 draw (4.6u,0.7u)--(8.9u,0.7u)--(8.9u,21.7u)--(4.6u,21.7u)--cycle;
\stopuseMPgraphic

\startuseMPgraphic{leer1000}
  path s[],k ;
  u:=5mm;
  z0 = origin;
  z1 = (10u,0);
  z2 = (10u,22u);
  z3 = (0,22u);

  s1 := z0--z1--z2--z3--cycle;
  s2 := (0.1u,0.7u)--(4.9u,0.7u)--(4.9u,21.7u)--(0.1u,21.7u)--cycle;

 %Schrank Rahmen außen
 draw s1;
 draw s2;
 draw (5.1u,0.7u)--(9.9u,0.7u)--(9.9u,21.7u)--(5.1u,21.7u)--cycle;
\stopuseMPgraphic





\stopproduct

%%% Local Variables:
%%% mode: context
%%% TeX-master: t
%%% End:

[-- Attachment #3: pro_mcc_a3.tex --]
[-- Type: text/x-tex, Size: 2276 bytes --]

\startproject pro_mcc_a3
\setupoutput[pdftex]
\enableregime [il1]
\setuppapersize[A3, landscape][A3, landscape]
\setuplayout[leftmargin=0cm,textwidth=37cm]
\mainlanguage [en]
\setupcolors[state=start]
\setuppagenumbering[location=, alternate=singlesided]
\usetypescript[sans][12pt]
\setupbodyfont[helvetica,ss,12pt]

\definelayer[s1]
\defineoverlay[s1][\composedlayer{s1}]
\setupbackgrounds[page][background=s1]

\def\OCustomer{Test Customer}
\def\OProject{KM4 - MCC}
\def\ODate{2006-04-04}
\def\ONr{O-10009723}



\starttext
\product prd_mcc_a3
\startuseMPgraphic{vruler}
u:=5mm;
draw(0,0)--(0,24u)--(0,0);
defaultfont:="cmr5";

draw (0,0)--(-0.5u,0);
label(decimal 0,(-1u+4,0));
for n=1 upto 24:
   draw (0,1u*n)--(-0.5u,1u*n);
endfor
for n=1 upto 24 :
   defaultfont:="cmr5";
   label(decimal (n*100),(-1.2u,1u*n));
endfor
\stopuseMPgraphic
\startbuffer[rahmen]
\setlayer[s1]{\useMPgraphic{fra}}
\setlayer[s1][x=1cm,y=14.5cm]{\useMPgraphic{vruler}}
\setlayer[s1]{\useMPgraphic{bottomlinie}}
\setlayer[s1][x=1.2cm,y=28cm]{Copyright \copyright \quad
  Thomas Engel 2006.  \quad Project: \OProject \quad
Customer: \OCustomer \quad Offer-No.: \ONr \quad Date: \ODate \qquad   Page: \pagenumber/\lastpage }
\setlayer[s1][x=1.95cm,y=27cm]{\useMPgraphic{ruler}}

\strut
\stopbuffer

\getbuffer[rahmen]
\setlayer[s1][x=3cm,y=5cm]{Layout MCC   OCC6}
\setlayer[s1][x=2cm,y=15.6cm]{\useMPgraphic{lcm800}}


\setMPvariables[mcc1000][e1=4,e2=0,e3=0,e4=0,e5=2,e6=0,e7=1,e8=1,e9=1]
\setlayer[s1][x=6cm,y=15.6cm]{\useMPgraphic{mcc1000}}


\setMPvariables[mcc1000][e1=4,e2=0,e3=0,e4=0,e5=2,e6=0,e7=1,e8=1,e9=1]
\setlayer[s1][x=11cm,y=15.6cm]{\useMPgraphic{mcc1000}}


\setMPvariables[mcc1000][e1=3,e2=0,e3=0,e4=2,e5=0,e6=2,e7=1,e8=0,e9=0]
\setlayer[s1][x=16cm,y=15.6cm]{\useMPgraphic{mcc1000}}


\setMPvariables[mcc1000][e1=3,e2=0,e3=0,e4=11,e5=11,e6=11,e7=11,e8=11,e9=11]
\setlayer[s1][x=21cm,y=15.6cm]{\useMPgraphic{mcc1000}}


\setMPvariables[mcc1000][e1=3,e2=0,e3=0,e4=11,e5=11,e6=11,e7=11,e8=0,e9=0]
\setlayer[s1][x=26cm,y=15.6cm]{\useMPgraphic{mcc1000}}


\setMPvariables[mcc1000][e1=11,e2=11,e3=11,e4=11,e5=11,e6=11,e7=11,e8=11,e9=10]
\setlayer[s1][x=31cm,y=15.6cm]{\useMPgraphic{mcc1000}}



\stoptext
\stopproject

%%% Local Variables:
%%% mode: context
%%% TeX-master: t
%%% End:

[-- Attachment #4: Type: text/plain, Size: 139 bytes --]

_______________________________________________
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2006-04-05  8:40 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-04-03 17:03 Metafun - Metapost capacity exceeded Thomas Engel
2006-04-03 22:29 ` Hans Hagen
2006-04-04 17:17 Thomas Engel
2006-04-05  6:27 ` Taco Hoekwater
2006-04-05  7:51 ` Hans Hagen
2006-04-05  8:40   ` Taco Hoekwater
2006-04-05  8:12 ` Hans Hagen

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).