Home | History | Annotate | Download | only in MagickCore

Lines Matching full:expression

118     *expression;
153 % FxInfo *AcquireFxInfo(Image *image,const char *expression,
160 % o expression: the expression.
165 MagickPrivate FxInfo *AcquireFxInfo(const Image *image,const char *expression,
202 fx_info->expression=ConstantString(expression);
204 (void) SubstituteString(&fx_info->expression," ",""); /* compact string */
208 (void) SubstituteString(&fx_info->expression,"-","-1.0*");
209 (void) SubstituteString(&fx_info->expression,"^-1.0*","^-");
210 (void) SubstituteString(&fx_info->expression,"E-1.0*","E-");
211 (void) SubstituteString(&fx_info->expression,"e-1.0*","e-");
217 (void) SubstituteString(&fx_info->expression,"<<",fx_op);
219 (void) SubstituteString(&fx_info->expression,">>",fx_op);
221 (void) SubstituteString(&fx_info->expression,"<=",fx_op);
223 (void) SubstituteString(&fx_info->expression,">=",fx_op);
225 (void) SubstituteString(&fx_info->expression,"==",fx_op);
227 (void) SubstituteString(&fx_info->expression,"!=",fx_op);
229 (void) SubstituteString(&fx_info->expression,"&&",fx_op);
231 (void) SubstituteString(&fx_info->expression,"||",fx_op);
233 (void) SubstituteString(&fx_info->expression,"**",fx_op);
1066 fx_info->expression=DestroyString(fx_info->expression);
1089 % FxEvaluateChannelExpression() evaluates an expression and returns the
1237 static inline const char *FxSubexpression(const char *expression,
1247 subexpression=expression;
1260 "UnbalancedParenthesis","`%s'",expression);
1265 const ssize_t x,const ssize_t y,const char *expression,
1298 p=expression;
1411 "NoSuchImage","`%s'",expression);
1845 static const char *FxOperatorPrecedence(const char *expression,
1887 while (*expression != '\0')
1890 if ((isspace((int) ((unsigned char) *expression)) != 0) || (c == (int) '@'))
1892 expression++;
1895 switch (*expression)
1901 if (LocaleNCompare(expression,"acosh",5) == 0)
1903 expression+=5;
1908 if (LocaleNCompare(expression,"asinh",5) == 0)
1910 expression+=5;
1915 if (LocaleNCompare(expression,"atanh",5) == 0)
1917 expression+=5;
1921 if (LocaleNCompare(expression,"atan2",5) == 0)
1923 expression+=5;
1932 ((LocaleNCompare(expression,"E+",2) == 0) ||
1933 (LocaleNCompare(expression,"E-",2) == 0)))
1935 expression+=2; /* scientific notation */
1942 if ((LocaleNCompare(expression,"j0",2) == 0) ||
1943 (LocaleNCompare(expression,"j1",2) == 0))
1945 expression+=2;
1952 while (isxdigit((int) ((unsigned char) *(expression+1))) != 0)
1953 expression++;
1965 switch ((unsigned char) *expression)
1983 (((islower((int) ((unsigned char) *expression)) != 0) ||
1984 (strchr("(",(int) ((unsigned char) *expression)) != (char *) NULL)) ||
1986 (isdigit((int) ((unsigned char) *expression)) != 0))) &&
1987 (strchr("xy",(int) ((unsigned char) *expression)) == (char *) NULL))
2083 subexpression=expression;
2093 subexpression=expression;
2095 if (strchr("(",(int) *expression) != (char *) NULL)
2096 expression=FxSubexpression(expression,exception);
2097 c=(int) (*expression++);
2104 const char *expression,size_t *depth,double *beta,ExceptionInfo *exception)
2122 while (isspace((int) ((unsigned char) *expression)) != 0)
2123 expression++;
2124 if (*expression == '\0')
2127 p=FxOperatorPrecedence(expression,exception);
2130 (void) CopyMagickString(subexpression,expression,(size_t)
2131 (p-expression+1));
2169 OptionError,"DivideByZero","`%s'",expression);
2182 OptionError,"DivideByZero","`%s'",expression);
2351 if (strchr("(",(int) *expression) != (char *) NULL)
2356 "ParenthesisNestedTooDeeply","`%s'",expression);
2357 (void) CopyMagickString(subexpression,expression+1,MagickPathExtent);
2364 switch (*expression)
2368 gamma=FxEvaluateSubexpression(fx_info,channel,x,y,expression+1,depth,beta,
2374 gamma=FxEvaluateSubexpression(fx_info,channel,x,y,expression+1,depth,beta,
2380 gamma=FxEvaluateSubexpression(fx_info,channel,x,y,expression+1,depth,beta,
2387 if (LocaleNCompare(expression,"abs",3) == 0)
2389 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2394 if (LocaleNCompare(expression,"acosh",5) == 0)
2396 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2401 if (LocaleNCompare(expression,"acos",4) == 0)
2403 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2408 if (LocaleNCompare(expression,"airy",4) == 0)
2410 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2419 if (LocaleNCompare(expression,"asinh",5) == 0)
2421 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2426 if (LocaleNCompare(expression,"asin",4) == 0)
2428 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2432 if (LocaleNCompare(expression,"alt",3) == 0)
2434 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2438 if (LocaleNCompare(expression,"atan2",5) == 0)
2440 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2445 if (LocaleNCompare(expression,"atanh",5) == 0)
2447 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2452 if (LocaleNCompare(expression,"atan",4) == 0)
2454 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2458 if (LocaleCompare(expression,"a") == 0)
2459 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2465 if (LocaleCompare(expression,"b") == 0)
2466 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2472 if (LocaleNCompare(expression,"ceil",4) == 0)
2474 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2478 if (LocaleNCompare(expression,"clamp",5) == 0)
2480 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2488 if (LocaleNCompare(expression,"cosh",4) == 0)
2490 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2494 if (LocaleNCompare(expression,"cos",3) == 0)
2496 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2500 if (LocaleCompare(expression,"c") == 0)
2501 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2507 if (LocaleNCompare(expression,"debug",5) == 0)
2512 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2533 (void) CopyMagickString(subexpression,expression+6,MagickPathExtent);
2542 if (LocaleNCompare(expression,"drc",3) == 0)
2544 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2553 if (LocaleCompare(expression,"epsilon") == 0)
2556 if (LocaleNCompare(expression,"erf",3) == 0)
2558 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2563 if (LocaleNCompare(expression,"exp",3) == 0)
2565 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2569 if (LocaleCompare(expression,"e") == 0)
2576 if (LocaleNCompare(expression,"floor",5) == 0)
2578 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2587 if (LocaleNCompare(expression,"gauss",5) == 0)
2589 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2594 if (LocaleNCompare(expression,"gcd",3) == 0)
2599 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2605 if (LocaleCompare(expression,"g") == 0)
2606 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2612 if (LocaleCompare(expression,"h") == 0)
2613 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2614 if (LocaleCompare(expression,"hue") == 0)
2615 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2616 if (LocaleNCompare(expression,"hypot",5) == 0)
2618 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2627 if (LocaleCompare(expression,"k") == 0)
2628 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2634 if (LocaleCompare(expression,"intensity") == 0)
2635 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2636 if (LocaleNCompare(expression,"int",3) == 0)
2638 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2642 if (LocaleNCompare(expression,"isnan",5) == 0)
2644 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2648 if (LocaleCompare(expression,"i") == 0)
2649 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2655 if (LocaleCompare(expression,"j") == 0)
2656 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2658 if (LocaleNCompare(expression,"j0",2) == 0)
2660 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+2,depth,
2666 if (LocaleNCompare(expression,"j1",2) == 0)
2668 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+2,depth,
2674 if (LocaleNCompare(expression,"jinc",4) == 0)
2676 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2689 if (LocaleNCompare(expression,"ln",2) == 0)
2691 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+2,depth,
2695 if (LocaleNCompare(expression,"logtwo",6) == 0)
2697 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+6,depth,
2701 if (LocaleNCompare(expression,"log",3) == 0)
2703 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2707 if (LocaleCompare(expression,"lightness") == 0)
2708 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2714 if (LocaleCompare(expression,"MaxRGB") == 0)
2716 if (LocaleNCompare(expression,"maxima",6) == 0)
2718 if (LocaleNCompare(expression,"max",3) == 0)
2720 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2724 if (LocaleNCompare(expression,"minima",6) == 0)
2726 if (LocaleNCompare(expression,"min",3) == 0)
2728 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2732 if (LocaleNCompare(expression,"mod",3) == 0)
2734 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2739 if (LocaleCompare(expression,"m") == 0)
2740 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2746 if (LocaleNCompare(expression,"not",3) == 0)
2748 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2752 if (LocaleCompare(expression,"n") == 0)
2753 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2759 if (LocaleCompare(expression,"Opaque") == 0)
2761 if (LocaleCompare(expression,"o") == 0)
2762 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2768 if (LocaleCompare(expression,"phi") == 0)
2770 if (LocaleCompare(expression,"pi") == 0)
2772 if (LocaleNCompare(expression,"pow",3) == 0)
2774 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2778 if (LocaleCompare(expression,"p") == 0)
2779 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2785 if (LocaleCompare(expression,"QuantumRange") == 0)
2787 if (LocaleCompare(expression,"QuantumScale") == 0)
2794 if (LocaleNCompare(expression,"rand",4) == 0)
2802 if (LocaleNCompare(expression,"round",5) == 0)
2804 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2808 if (LocaleCompare(expression,"r") == 0)
2809 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2815 if (LocaleCompare(expression,"saturation") == 0)
2816 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2817 if (LocaleNCompare(expression,"sign",4) == 0)
2819 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2823 if (LocaleNCompare(expression,"sinc",4) == 0)
2825 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2832 if (LocaleNCompare(expression,"sinh",4) == 0)
2834 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2838 if (LocaleNCompare(expression,"sin",3) == 0)
2840 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2844 if (LocaleNCompare(expression,"sqrt",4) == 0)
2846 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2850 if (LocaleNCompare(expression,"squish",6) == 0)
2852 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+6,depth,
2856 if (LocaleCompare(expression,"s") == 0)
2857 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2863 if (LocaleNCompare(expression,"tanh",4) == 0)
2865 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+4,depth,
2869 if (LocaleNCompare(expression,"tan",3) == 0)
2871 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+3,depth,
2875 if (LocaleCompare(expression,"Transparent") == 0)
2877 if (LocaleNCompare(expression,"trunc",5) == 0)
2879 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,depth,
2885 if (LocaleCompare(expression,"t") == 0)
2886 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2892 if (LocaleCompare(expression,"u") == 0)
2893 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2899 if (LocaleCompare(expression,"v") == 0)
2900 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2906 if (LocaleNCompare(expression,"while",5) == 0)
2910 alpha=FxEvaluateSubexpression(fx_info,channel,x,y,expression+5,
2915 if (LocaleCompare(expression,"w") == 0)
2916 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2922 if (LocaleCompare(expression,"y") == 0)
2923 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2929 if (LocaleCompare(expression,"z") == 0)
2930 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2936 q=(char *) expression;
2937 alpha=InterpretSiPrefixValue(expression,&q);
2938 if (q == expression)
2939 return(FxGetSymbol(fx_info,channel,x,y,expression,exception));
2983 *alpha=FxEvaluateSubexpression(fx_info,channel,x,y,fx_info->expression,&depth,
3000 % FxImage() applies a mathematical expression to the specified image.
3004 % Image *FxImage(const Image *image,const char *expression,
3011 % o expression: A mathematical expression.
3030 static FxInfo **AcquireFxThreadSet(const Image *image,const char *expression,
3057 if (*expression != '@')
3058 fx_expression=ConstantString(expression);
3060 fx_expression=FileToString(expression+1,~0UL,exception);
3079 MagickExport Image *FxImage(const Image *image,const char *expression,
3107 fx_info=AcquireFxThreadSet(image,expression,exception);