Jump to content

Reptillian

Members
  • Posts

    1,238
  • Joined

  • Last visited

  • Days Won

    18

Everything posted by Reptillian

  1. For both, I get errors. Invalid token '(' in class, record, struct, or interface member declaration Type expected Tuple must contain at least two elements. ) expected Tuple must contain at least two elements. ) expected Invalid token '100' in class, record, struct, or interface member declaration
  2. Here's the problem I have. How to add to Image_Rect list? List<(int,int,int,int,int)> Image_Rect = new List<(int,int,int,int,int)>(); Image_Rect.Add(Tuple((100,0,100,0,5))); The above don't work. What I'm trying to do is create 2 set of dynamic array of fixed size array of size 5, and to be able to access each variable at index n and to remove at index n. In addition to that, I would like to be able to use functions on it to replace the n index. Any idea?
  3. Finally, I had refactored Fibonacci filter. Also, Fibonacci Texture has been renamed to Fibonacci. There's more features now with the Fibonacci.
  4. I checked with git diff, and as it turns out, I resolved all possible problem. git diff is wonderful. But, I did not come here to tell you people that. I came here to announce a new filter! Ellsworth Kelly Board
  5. Some of you may noticed bugs that are cropping up. Please do not be alarmed, I'm in the process of refactoring code. For non-programmers, this means making code easier to comprehend, and reducing reductive lines. So, these bugs will be fixed, but I do need cooperation. If you can find bugs, do tell them to me, and they will be addressed.
  6. First, look into plugin index. Your best bet is to use this: In addition to what @Pixey mentioned.
  7. Here's the link to a guide to install pdn plugins - https://boltbait.com/pdn/InstallingEffects.php
  8. Now, I'm back to main computer. I am able to send you what I have. Download my own solution to your problem - Histogram Normalization.zip Lemme know if it works.
  9. I have managed to do histogram-based normalization though I can only get back to you on Tuesday for that as I'll be away from my normal PC. For now, you could play with curves tool or levels tool(if it exists in non-auto form).
  10. @lynxster4 2.9.9 has been released, I think you can now have the new filters.
  11. @Ego Eram ReputoIn the next update, I would like to see more details on that. The simplest addition would be that it creates a mapping of Lyapunov exponents within three value (ABC) or axis.
  12. Major speedup update! So, when you change only the colors, it will not attempt to render the Lyapunov Fractal base anymore. So, changes in color output will be instant. I'm sure there could be more optimization to be done with regards to changes, but it's fast enough that it's not worth the effort any time soon, and I won't notify update the next time I do if I get to do that. Practically complete at this point. ----- Something I had made with the changes:
  13. If it doesn't update anymore, the current version of gmic is no longer supported. 2.9.9 is on the work actually.
  14. New Update! 1. It is now case-insensitive 2. There is now HSL mode. This unfortunately introduce a new bug in the GUI department, but it is usable regardless. I would like to disable the colors gui elements depending on Mode, but I would have to resort to Visual Studio, and I really do not want to go there. I think it's fixable, but the HSL Colors elements requires conditions of two elements. I fixed that issue. Now the GUI is nearly completely functional. Doesn't work entirely as expected, but still more usable than before. Now, Codelab source is removed as it is now a Visual Studio project.
  15. Well, I already solved it. I solved it by isolating the HSL2RGB function into a test code, and figured what's wrong. For anyone stumbling upon this problem: ColorBgra hsl2rgb(double H,double S,double L){ int iH = (int)(H)/60; double C = (1-Math.Abs(2*L-1))*S; double X = C * (1 - Math.Abs((H/60)%2-1)); double m = L - C/2; double tr,tg,tb; switch(iH){ case 0: tr=C; tg=X; tb=0; break; case 1: tr=X; tg=C; tb=0; break; case 2: tr=0; tg=C; tb=X; break; case 3: tr=0; tg=X; tb=C; break; case 4: tr=X; tg=0; tb=C; break; default: tr=C; tg=0; tb=X; break; } tr+=m; tg+=m; tb+=m; tr*=255; tg*=255; tb*=255; tr=Math.Round(tr); tg=Math.Round(tg); tb=Math.Round(tb); return ColorBgra.FromBgraClamped((int)(tb),(int)(tg),(int)(tr),255); }
  16. I am attempting to interpolate between two different HSL value, but I can't seem to figure out why this does not work: double lerp(double a, double b, double t){ return a * (1 - t) + b * t ; } ColorBgra out_hsl(double hue_a,double hue_b,double sat_a,double sat_b,double intensity_a,double intensity_b,double pos){ //new_pos is always in range [0,1). double new_pos = pos - Math.Floor(pos); double H = lerp(hue_a,hue_b,new_pos); double S = lerp(sat_a,sat_b,new_pos); double L = lerp(intensity_a,intensity_b,new_pos); int section = (int)(H/60); double C=(1 - Math.Abs(2*L-1))*S; double X=C*(1-Math.Abs((double)(section%2-1))); double m = L - C/2; double red,green,blue; switch(section){ case 0: red = C; green = X; blue = 0; break; case 1: red = X; green = C; blue = 0; break; case 2: red = 0; green = C; blue = X; break; case 3: red = 0; green = X; blue = C; break; case 4: red = X; green = 0; blue = C; break; default: red = C; green = 0; blue = X; break; } red=(red+m)*255; green=(green+m)*255; blue=(blue+m)*255; return ColorBgra.FromBgraClamped((int)(blue),(int)(green),(int)(red),255); } I have used this source : https://www.rapidtables.com/convert/color/hsl-to-rgb.html It should work because the formula used here are the same.
  17. In the next version, I'll release the case-insensitive version, in fact I already had done the changes to make sure it works (See Below). Depending on whether I can pull off more color modes or not, it might be released quickly or not. string low_str = str_var.ToLower(); s_str_var = low_str.Length; char[] charArr=low_str.ToCharArray();
  18. All you need to do is to type in sequence of the first 3 letters in the alphabet. "ab","abc","caba".... I fixed the location description. No to the G'MIC question.
  19. Generates Markus-Lyapunov Fractal which means that it create a mapping of Lyapunov exponent within two values (though in this case, up to 3 is supported). Discovered by Mario Markus of the Max Planck Institute for Nutrition. Alexander Lyapunov was the one that discovered Lyapunov exponent. [Source] Note: Extremely slow plugin. It doesn't use multi-threading due to limitations of Codelab. Even with multi-threading, it is still computationally intensive! This is rather a simple implementation that could be further extended (particularly in the color output department). As of now, there are these parameters: ABC-String - Just what it says. These are the following allowed letters, and it is the base of the Markus-Lyapunov Fractal. ABC-String Repeats - Repeats the string. You don't see it repeated, but it is repeated on the background. View Size (%) - This means that the less percentage there are, the less vantage of views you have of the Markus-Lyapunov Fractal View Position - Does this really need to be explained? C Position - Only applicable if ABC-String contains a 'C' in it. Defines the slice position from a 3D Markus-Lyapunov Fractal. (See video below Preview for a idea of what it like to slice through) Mode - Defines the coloring of the Markus-Lyapunov Fractal. There are three modes: Grayscale, Duotone, and HSL. HSL provides the option to use arbitrary numbers of colors. Reverted Mode - Defines the output of grayscale mode. As you note, only applicable on Grayscale. Split Mode - Use Split Colors on HSL Output. #Colors for Singular HSL - Numbers of HSL colors everywhere without discontinuity. Positive HSL Colors - Defines the number of HSL colors on positive areas Negative HSL Colors - Defines the number of HSL colors on negative areas. Positive Color - Defines the coloring for positive areas. Negative Color - Defines the coloring for negative areas. Preview: ABC - (0%-100% or 2-4): Installation: Plugin Files -> Lyapunov Fractal.zip 1. Insert the .dll into effect folder of paint.net installation 2. Find it under Render. Bugs: 1. ABC-String is empty at beginning. I can't fix that. Fixed. 2. Cancel takes a long time. Source code: Visual Studio G'MIC
  20. Now, the filter has been released! It is named as Transformative Popcorn Fractal. If you see Complex Popcorn Fractal, update another time. Yes, I renamed it and made it work as it should. ----- New Filter! - Complexion Burst Here's what it looks like:
  21. Yes, and it will also be available as a g'mic-pdn plugin.
×
×
  • Create New...