Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

PixelCNC Has Moved: deftware.org

CAM software developed by artists for artists to create unique and original works on a 3-axis CNC router or mill. · By Deftware

Tiling option

A topic by valhallaCNC created May 27, 2022 Views: 256 Replies: 7
Viewing posts 1 to 5
(1 edit)

Hi Charlie...

I have the opportunity to do a large sign. I know there is not a tiling function in PixelCNC. I'm not even sure you call it a function.  Is there a work around for that ? I am going to try square layers abutted with the words and design on top of that, with some registration holes to line everything up. Or am I way off base here ?

Thanks Joe.....

Developer

The best I can think of is to copy the canvas to a raster-layer and put that raster-layer on its own layer group for operation's to toolpath off of - set up the canvas size to contain all of your tiles and then duplicate the raster-layer across it. You can use the raster-editing function for 2D tiling to automatically have it replace the contents of the layer with multiples of itself. The caveat is that generating toolpaths will be slower doing it this way - actually toolpathing off all of the tiles simultaneously. Size the raster-layer to the whole canvas (which should be sized multiples of the layer's size) and then use the same multiples for your cols/rows in the 2D tiling function.

Ideally, there would just be an option in the Export G-Code dialog to automatically tile the exported G-code by a specified number of rows/cols and at a set spacing in X and Y between the tiles. I think I could hammer that out pretty quick, in just a day or two. I'll add it to the todo list and see if I can't get it in there for the next update. Then you can just design and toolpath one tile and have the G-code export with copies at each tile's offset position - no toolpathing off all of the tiles at the same time.

Just make sure that your canvas resolution is high enough for holding all of the heightmap pixels at a decent quality level - particularly if you're going to use the raster 2D tiling function.

There might be a utility somewhere out there for automatically tiling an existing G-code program. At least, it wouldn't be something difficult for someone to do - they'd just have to insert some work offsets and repeat the code.

 - Charlie

I found a nice third party utility. Looks like it will do the trick very easily. Only does two parts , but that is enough for me this time.

Joe..

Developer

Alright!

Laying out large sign. Canvas X=24" , Y =48" .  When you create a image layer or text layer , It is always created on the X axis. I can rotate it 90 degrees and size to fit canvas but it keeps the original import orientation. the created layers have X=46 , Y=22 after resizing . Is this correct ?  , doesn't make a difference in the final product.

Developer

So PixelCNC automatically scales a loaded image to fill the canvas while retaining its aspect ratio. So if your image is square (width and height are the same) then the layer will be scaled to the smallest canvas dimension, either X or Y. In the case of a canvas that's 24"x48" that would mean that a square image would be scaled to 24"x24".

I'm not sure I follow what you mean about the orientation and resizing. :P

 - Charlie

This is not a program issue, just trying to understand better...After I create the image layer. Then I rotate it -90 , then stretch it to 47 along the Y axis of the canvas . but the image is stretched on the X axis to 47.  I was expecting to see the X - Y size switch on the image after I rotated it 90. Clear as mud...I make things harder then they are sometimes..

Joe...

Developer

Ah, yes the size is in the layer's space because it can be oriented at any arbitrary angle, not just 90 degree increments. It wouldn't make sense if it was rotated at say 45 degrees - then which axis would you scale it on? Keeping the scaling relative to the layer allows for these arbitrary rotations.

You could always create a new blank raster-layer below the rotated image's layer and merge down, so that the rotated image is merged with the unrotated blank layer. The new raster-layer will then have the rotated layer natively oriented in the default canvas space, where the canvas XY axes are the same as the layer's.

- Charlie