Skip to main content

Random picture maker with noise continued

Previously I posted about a script I wrote to generate random colorful pictures.

Picture maker and noise function

  It allows you to select an area using a box to guide the randomness of the color.  This allows you to somewhat control what the picture looks like.

I also talked about how I thought I could use Perlin noise to make the pictures look less like confetti and a little more like a painting.

I have moved forward with those ideas a little bit.  I made a copy of my other page.  I also found a nice implementation of Perlin and Simplex noise in js.

Currently I have the script starting with a bunch of points doing a random walk around the canvas.  Then you can click on a point and it will start a new drawing point using the color you clicked on.  After you pick some of your own points it starts to look kind of cool.  I'm not sure I like the way it starts out though, buy I'll keep working on that.

You can see in the picture how the page starts out.  Also I have clicked a few times in the green area in the lower middle of the picture near the box that you see.  You can see how it has drawn more there and started to blend some of the different green colors.   Also there is the box I mentioned.  You move that around with the mouse and resize it with the mouse wheel.  When you click and make a new moving point it is limited to moving within the box.

This thing still doesn't quite do what I want, but I'm not sure if I know what I want.  So maybe it will never do what I want, but I like messing around with this kind of thing so I'll keep working on it and posting about my progress.


Popular posts from this blog

Getting Hidden App Data From Your Google Drive

Some Android applications use space on your Google Drive to store data.  You can't see this data by browsing drive the normal way.  You can get access to it if you get the access token from the app and do a few other things.

I use an app to keep some notes and other things.  They require getting the paid version of the app to backup your data.  I wanted to see if I could get it myself without paying for the app.  I found out how to do this from this Stackoverflow post  The example there uses php. Since I have been learning Python recently, I decided to see if I could do the same thing with Python.

 There is a pretty good explanation of why you need to go through all the steps you need to go through to get your data in the accepted answer for that post, so I won't go into too much detail about that here.

Using The Coldfusion XMLValidate Function To Validate User Content

Sometimes you want to allow a limited set of HTML tags in user generated content.  This can be done with the XMLValidate function in Coldfusion as long as the content is valid XHTML.

Several years ago I read an article about escaping form values posted by Ben Nadel on his site Some discussion came up in the comments about allowing a limited set of html tags for paragraphs, bold text, and so on.  I had a need to do this for forum comments on a site that I was working on. This site was written in Coldfusion so I was looking at some of the same options mentioned in Ben's article. I ended up doing something a little different though.

We were using TinyMCE for the forum comments. TinyMCE produces XHTML code so I was able to use Coldfusion's abilities to handle XML to accomplish this task. Using the XMLValidate function and an XML schema that was modified to accept a small list of tags and attributes the comments were correctly limited. Here is the relevant po…

Using IR codes from Broadlink backup file

This is a continuation of yesterdays post about the Broadlink RM2 wifi remote.  I was able to test out using the codes to control my remote today.  They are stored in JSON format in the broadlink backup file.  The backup file is a zip file.  After you extract it there is a folder named SharedData.  There are several files in the folder.  The one that seems to have all the codes is named jsonIrCode.  The data looks like an array of objects, each with a code and some other information.