Hello, Why curve drawn is not that expected ? Fabrice \starttext \startMPcode input hvdm; l:=2.8mm; r:=0.6; alfa:=45; beta:=0; gamma:=0; defineDefaultArrow (l, r, alfa, beta, gamma); numeric xmin, xmax, ymin, ymax; xmin :=-2; xmax := 4; ymax :=5 ;ymin:=-1; u := 1cm; pickup pencircle scaled 1pt ; drawarrow ((xmin,0) -- (xmax,0)) scaled u; drawarrow ((0,ymin) -- (0,ymax)) scaled u; draw tightfunction ("x", "2*(x-1)*(x-1)+2", xmin, xmax, (xmax-xmin)/10) scaled u; setbounds currentpicture to boundingbox (((xmin,ymin) -- (xmax,ymax)) scaled u); \stopMPcode \stoptext
On 5/27/2014 10:19 PM, Fabrice Couvreur wrote:
Hello, Why curve drawn is not that expected ? Fabrice
use /20
\starttext \startMPcode input hvdm; l:=2.8mm; r:=0.6; alfa:=45; beta:=0; gamma:=0; defineDefaultArrow (l, r, alfa, beta, gamma); numeric xmin, xmax, ymin, ymax; xmin :=-2; xmax := 4; ymax :=5 ;ymin:=-1; u := 1cm; pickup pencircle scaled 1pt ; drawarrow ((xmin,0) -- (xmax,0)) scaled u; drawarrow ((0,ymin) -- (0,ymax)) scaled u; draw tightfunction ("x", "2*(x-1)*(x-1)+2", xmin, xmax, (xmax-xmin)/10) scaled u; setbounds currentpicture to boundingbox (((xmin,ymin) -- (xmax,ymax)) scaled u); \stopMPcode \stoptext
___________________________________________________________________________________ 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 ___________________________________________________________________________________
-- ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
It works. But how to choose not to avoid this problem (/10 or /20 or ....) ? Another little problem: if I use " setbounds currentpicture to boundingbox (((xmin,ymin) --(xmax,ymax)) scaled u) ; " the images are not adjusted to the BoundingBox. So I'm back to my original idea. Fabrice
\midaligned{% \startcombination[4*1] {% \startMPcode input hvdm; l:=2.8mm; r:=0.6; alfa:=45; beta:=0; gamma:=0; defineDefaultArrow (l, r, alfa, beta, gamma); numeric xmin, xmax, ymin, ymax; xmin := -2; xmax :=4; ymax :=5 ;ymin:=-1; u := 0.7cm; pickup pencircle scaled 1pt ; drawarrow ((xmin,0) -- (xmax,0)) scaled u; drawarrow ((0,ymin) -- (0,ymax)) scaled u; draw tightfunction ("x", "-2*(x-1)*(x-1)+2", xmin, xmax, (xmax-xmin)/20) scaled u; path screen; screen=(xmin,ymin)*u--(xmax,ymin)*u--(xmax,ymax)*u--(xmin,ymax)*u--cycle; clip currentpicture to screen; \stopMPcode }{1.} {% \startMPcode input hvdm; l:=2.8mm; r:=0.6; alfa:=45; beta:=0; gamma:=0; defineDefaultArrow (l, r, alfa, beta, gamma); numeric xmin, xmax, ymin, ymax; xmin := -2; xmax :=4; ymax :=5 ;ymin:=-1; u := 0.7cm; pickup pencircle scaled 1pt ; drawarrow ((xmin,0) -- (xmax,0)) scaled u; drawarrow ((0,ymin) -- (0,ymax)) scaled u; draw tightfunction ("x", "0.5*(x-1)*(x-1)+2", xmin, xmax, (xmax-xmin)/20) scaled u; path screen; screen=(xmin,ymin)*u--(xmax,ymin)*u--(xmax,ymax)*u--(xmin,ymax)*u--cycle; clip currentpicture to screen; \stopMPcode } {2.} {% \startMPcode input hvdm; l:=2.8mm; r:=0.6; alfa:=45; beta:=0; gamma:=0; defineDefaultArrow (l, r, alfa, beta, gamma); numeric xmin, xmax, ymin, ymax; xmin := -2; xmax :=4; ymax :=5 ;ymin:=-1; u := 0.7cm; pickup pencircle scaled 1pt ; drawarrow ((xmin,0) -- (xmax,0)) scaled u; drawarrow ((0,ymin) -- (0,ymax)) scaled u; draw tightfunction ("x", "-0.5*(x-1)*(x-1)+2", xmin, xmax, (xmax-xmin)/20) scaled u; path screen; screen=(xmin,ymin)*u--(xmax,ymin)*u--(xmax,ymax)*u--(xmin,ymax)*u--cycle; clip currentpicture to screen; \stopMPcode } {3.} {% \startMPcode input hvdm; l:=2.8mm; r:=0.6; alfa:=45; beta:=0; gamma:=0; defineDefaultArrow (l, r, alfa, beta, gamma); numeric xmin, xmax, ymin, ymax; xmin := -2; xmax :=4; ymax :=5 ;ymin:=-1; u := 0.7cm; pickup pencircle scaled 1pt ; drawarrow ((xmin,0) -- (xmax,0)) scaled u; drawarrow ((0,ymin) -- (0,ymax)) scaled u; draw tightfunction ("x", "2*(x-1)*(x-1)+2", xmin, xmax, (xmax-xmin)/20) scaled u; path screen; screen=(xmin,ymin)*u--(xmax,ymin)*u--(xmax,ymax)*u--(xmin,ymax)*u--cycle; clip currentpicture to screen; \stopMPcode} {4.} \stopcombination}
On 5/28/2014 12:09 AM, Fabrice wrote:
It works. But how to choose not to avoid this problem (/10 or /20 or ....) ?
well, you can guess the amount of steps ... but the 1000 you had originally was way too much ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
Hello, Firstly, thank you for your reply. However, I would like some further explanation please. If I understand, but I'm not sure at all, calculating (xmax-xmin) / 10 gives the number of points to draw the curve. However, in my example, xmax = 4 and xmin = -2, so (xmax-xmin) / 10 = 0.6. My question is : how do you find the value in 1000 ?
participants (3)
-
Fabrice
-
Fabrice Couvreur
-
Hans Hagen