Arrays, snap and origins

A forum for research and development of the user interface of FreeCAD
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
nohspamjose
Posts: 16
Joined: Wed May 02, 2018 12:58 pm

Arrays, snap and origins

Post by nohspamjose »

Hi,

Having used FreeCAD 0.18 to fairly comprehensively CAD my bathroom, I have come across at least three issues for which I'd like to propose enhancements. It's entirely possible that some/all of these are possible but even if they are, the usability is impenetrable to me.

Arrays
  • When I want to tile something (ceramic tiles), I created a prototype tile, copied it and then created a rectangular array, separating the tiles by the grouting distance. There are several shortcomings
  • The array of tiles (like the real thing), is highly likely to extend beyond the boundaries of the surface, particularly for non rectangular shapes, such as a floor - I suggest being able to use a shape that shares the tiled plane, as a clipping mask for the array.
  • The array should include and visually differentiate the original prototype item being cloned in the array - modifications to that original should be propagated across the array.
  • Options, such as space between (in x, y or z dimensions) could be specified as a fixed, proportional or calculated value, so that the recalc on the mod of the original item can be achieved dynamically.
  • The array of items should include a relative offset or a means to centre a space or an item relative to another shape in one or more of the x, y and z dimensions) - like tiling a bathroom.
  • 3D arrays. This may already be available.
Snap & Origin
  • When creating or adding/importing an item, I really want to be able to snap it to another item
  • This leads me to the origin. I really need to be able to specify an item's origin and it should be easy to specify it in terms of an intersection, centre of a selected edge, centre of gravity, a universal drawing origin, another item's origin (particularly useful for an assembly, I think) or presumably a bunch of others.
  • An ability to programatically rationalise the various different origins in an assembly or group, to share a single origin. If I construct an engine block, for example, I should be able to assign a common origin to a group of primitives, while I'm working on them as a sub-part of the block and do that for all the groups but at the end consolidate the origin for the whole engine block
chrisb
Veteran
Posts: 54150
Joined: Tue Mar 17, 2015 9:14 am

Re: Arrays, snap and origins

Post by chrisb »

Hi and welcome to the forum!

Some of your proposals are already implemented:
nohspamjose wrote: Mon Jul 08, 2019 11:30 pm The array of tiles (like the real thing), is highly likely to extend beyond the boundaries of the surface, particularly for non rectangular shapes, such as a floor - I suggest being able to use a shape that shares the tiled plane, as a clipping mask for the array.
You can extrude a clipping sketch and use a boolean common operation to clip.
nohspamjose wrote: Mon Jul 08, 2019 11:30 pm The array should include and visually differentiate the original prototype item being cloned in the array - modifications to that original should be propagated across the array.
You should use the tree view for that: The original prototype is the element below the array item in the tree. Edit it and the changes will be propagated across the array.
nohspamjose wrote: Mon Jul 08, 2019 11:30 pm 3D arrays. This may already be available.
It is available. You can array an object in X, Y, and Z dimension.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
nohspamjose
Posts: 16
Joined: Wed May 02, 2018 12:58 pm

Re: Arrays, snap and origins

Post by nohspamjose »

Many thanks for the update. The one that isn't implemented; offsetting an array would be very useful. Using the tiling example, it would allow me to accurately plan the tile arrangement and also align tiles on the floor plane and wall planes.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: Arrays, snap and origins

Post by Kunda1 »

nohspamjose wrote: Tue Jul 09, 2019 10:54 pm Many thanks for the update. The one that isn't implemented; offsetting an array would be very useful. Using the tiling example, it would allow me to accurately plan the tile arrangement and also align tiles on the floor plane and wall planes.
Please check the bugtracker to see if this feature request exists, if not then create it and link to this thead (and x-post back to the ticket)
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Post Reply