Accurately placing colors from image on surfaces

Hi guys

I’ve posted about this a while ago.
I’ve got artworks done by an Artist that we are intending on using to create tiling drawings on a roof surface. I have successfully created a script that transfers the colors from the artist’s image onto the tiling and also exports them to a Revit view.
My issue is that the image does not accurately position itself in the area that’s to be tiled. I made sure the image is the exact proportion to the area to be tiled and it still does not work properly. I’ve tried to use the blue line in the image below to illustrate the problem. I will appreciate any suggestions. Please see images and dyn file attached.

Another question is how do I trim the colored filled regions in the Revit project with a shape the represents the outline of the tiling area?
Thanks again.

imageMapping.dyn (21.2 KB)

You could extract the color information and ‘pixelate’ the Revit surface based on the tile size in Dynamo. Hope I make sense.


Ahh this looks like just what I need. Thanks a lot. I’ll give it a go.

1 Like

Hey @Vikram_Subbaiah any idea if there is a way of splitting colored filled regions in the Revit project with a shape in dynamo? I need to remove the black areas in the image if possible.

You could create tiles in a Revit Project view as filled regions …

You will need to make adjustments depending on project units, tile size, tile colors etc

imageMapping1.dyn (59.3 KB)


Thanks so much!
I’ll have a look. Much appreciated.

1 Like

Thanks again.
This happened on my first attempt at using the script.
What could be the problem? I’ve literally just tried to replicate what you did.

Figured it out. Thanks.
SortedList has to be written like this.

1 Like

Hi Vikram thanks again for the script. It should do the job. One issue I’m having now is figuring out a way to import the surfaces of a particular filled region type from a view into dynamo and then using the real outline of the artwork shape to trim them or intersect with them.

I’ve got over 3000sqm of tiling area to cover so selecting multiple faces of filled regions in view or manually trimming the edges would be quite laborious and a take a lot of time. I looked through the other topics and I could not find a suitable solution.

Thank you!

That would be a resource heavy task as you’ll need to analyze the pixels in the image and determine the edges. There was a discussion about this on the forum a long time ago (you’ll need to search some more), but I don’t think it is something Dynamo is suited for.

You can take a look at this for reference though

Hi Vikram

I really appreciate the help. This is a much better method than what I was using previously. Working out the areas will be much faster. For my purposes I had to adjust the script to reflect the actual dimensions of the surface as per the image below. This of course makes it a much heavier process. Thanks again.

Hi Vikram. Sorry another question.
Having an issue figuring this out.
What would the script look like if the tiles had the same width but different heights. Say 75,150,75. In such a way that it forms a pattern as per the image below?

Since you can only get the pixel values at equal intervals, you will need to either
consider all tiles to be of the smaller dimension and combine every third tile with the second
consider all tiles to be of the larger dimension and split every alternate tile

Not sure about how I’d proceed after this, but this would most probably be the way I would begin.

Hi Vikram.

I thought as much. Hopefully such a functionality can be included in dynamo in future.
For now I’d just have to propose we use a regular pattern.
Here is a link to the project if you’re interested in viewing.
Thanks gain.

1 Like

@Vikram_Subbaiah, here is an image of the project I went through this effort for.
Thanks so much for the help!
Great to see a script being put into action.


Good to see the practical results of Dynamo being utilized as part of a design process.
Thanks for sharing


I have published a write-up about the process on the Dynamo blog.ʼi-house-of-worship-dr-congo-tiling-automation/


Another site progress image. :grinning:


This is beyond awesome to see @bayowindapo :star_struck: Please do keep updating us as this progresses!

1 Like