During workflow for architectural visualization, a time consuming process regards Openings (Windows, Doors, etc.).Once the model has been choosen, the placement and adjustement, for large buildings, is quite long; then if the client wants to change it... well... you know.

The ability to control Openings with a single spline in my opinion is a huge step forward: I can easily place them, adjust them (accordly with opening width) and if need change them with one click.

So the target is: along each spline of a single shape object you have a Window. The window width change with spline length, and (if the window has 2 frames for example) each frame stretch too, and the handle goes always in the middle.

Maybe I'm forcing RailClone plugin toward something it isn't built for, but I'd like your opinion on "if" and "how" the problem can be solved.

On the top you can see a common frame I'd like to insert, on the bottom the part it is usually formed to.We have:-A big frame all around-Two frames (each half of the big one)-Two glasses-Two couples of hinge (for frame rotation), a couple on the left and a couple on the right-One handle in the middle (a bit moved on the right)

I've made some tests with the Array Generator, but in my opinion it isn't the correct way, for a series of reasons (if you disagree please let me know).

The way should be via the Linear Generator. This is the list of problems I don't know how to solve

-Height: even if I reach the target to place the model along a spline, I don't know how to adjust along the Z axis. I can't use the "Z scale" parameter for the segment, otherwise it will be deformed. You know, the same model can be applied to opening with different height

-Middle: I don't know how to make one small frame to start from the end of the spline and stop in the middle of the spline. Same thing for the glasses and the handle.

Thanks for contacting us with this question. Though RailClone wasn't designed specifically for this kind of work, it is possible if you're willing to spend a bit of time setting up the style.

To start with I would recommend modelling the window or door as a single object and then slicing it into sections that can fit into an array. In the example illustrated below you can see on the left the original door model and on the right the separate segments that I created from it. I did this by simply applying a series of slice modifiers and then detaching each piece.

You'll notice that I've only modelled one half of the door, this is because the segments can be mirrored to make up the other side. I've also omitted the glass above the middle rail as this is the same as the glass below the rail.

This can then be re-constructed with RailClone. As you mention there are some limitations with both the A2S and L1S array for this task. especially being able to target the start and end of X and Y evenly rows and columns. I find the best workaround for this is to combine multiple L1S and A2S generators to get the result I'm after. I've split this door into 3 vertical sections. The bottom of the frame uses and L1S generator, the mid section including the Rail uses an A2S, and finally the top uses another L1S generator. This is to make it possible to add unique segments to the top and bottom of the evenly column.

All the generators have been rotated by 90 degrees on the X Axis. The A2S generator uses the new Generator > Properties > Limits > Padding Parameters introduced in the RailClone 2.4 beta to compensate for the size of the top and bottom frame.

To position the middle rail I've use sequence operators to create a vertical pattern that goes: glass panel, rail segment, then more glass. This is used in the Left, Right, Default and X Evenly inputs of the A2S Generator. To adjust the height of the Rail the Fixed Size > Y parameter of the Glass, and Mullion segments has been exported and wired to a Numeric node so it can be adjusted from the Modify Panel. To ensure there is always a single mullion in the center of the spline I've used the new X Evenly > Count mode set to 1 The graph for the completed style looks like this:

Here's the finished style in action. I've attached the sample file, please feel free to take a look and ask if anything is unclear. The style requires the most recent beta version to work correctly.

Thank you very much Paul,in this forum you are very fast and useful in answering... this doesn't happen in other forum... I'm very impressive

I've studied and understood your scene. And it works great.Starting from your scene I'm making some variations accordly with the kind of model.

I've tried also to create a rig which could allow to open the window, but with no success for the moment, nevermind.

I'd like to show you my job, but before do finish it I need to ask you a question regarding "Array 2S" Generator: about the usage of input "Default", "X Evenly" and "Y Evenly".If I add a segment to "Default" (for example a Plane simulating the glass) and a segment to "X Evenly" (for example a box simulating a frame between glasses), all works correctly, exactly as you did in your example.If I do the same with "Default" and "Y Evenly", all works again.But if I connect "Default", "X Evenly" and "Y Evenly" together, the "Default" segment is eliminated in some part along the Y direction.

The issue your describing is related to the way in which RailClone places segments. Think of the rows in an A2S generator as a stack of separate L1S generators on top of one another. Because each row is independent it cannot automatically overlap with the rows above and below. So when using X and Y evenly together an X Evenly segment needs to be placed where the two intersect. If the X Evenly segment's height is greater than the Y Evenly Height then you'll get a gap. This is true of any row where the heights of the segments do not match.

One solution is to ensure that the height of all segments used for the default, X Evenly and Y Evenly inputs is the same:

The downside is that this creates more segments on the Y axis. The other alternative is to use sequences instead of Y evenly as in the file in my previous post. This works well but will not allow you to automatically divide the height of the array without adding some slightly more complicated expressions.

I hope that helps to explain this issue, please let me know if you need more info.

-Hinges: for a clean node system I'd like to use both Hinge and Handle into the same Linear Generator. It's all right for the handle, but about the hignes as you can notice the mirror ones aren't placed correctly. How to fix? Why they aren't placed correctly?

Thank you.

PsFor a precise and clean placement of all segments I've paied attention to the pivot point of them.

The mirror issue you're seeing is caused because you are using a compose operator attached to a mirror node. This will mirror the segments but does not reverse the order of the compose operator. For that purpose RailClone has a Reverse operator, this inverts the order of the connected segments and also has an option to mirror them on the X axis.

Paul, thanks a lot for your time, I'm happy of the result.I think that the library could be filled with a series of objects like that. This is just an example, but you know... there are a lot of kind of doors, windows, skylights, arches, openings in general.

In my opinion architectural visualization (both for interior and extirior) needs for that, and at the end the Style isn't so complex.

The alternative is to use standard 3ds max parametric openings (they are a bit "poor" of detail), or merge an external model and manually modify it to adapt in height and width.

Do you know if iToo accepts external collaborations to manage stuff like that?

Oops, sorry about that, I missed the top one. I see you had a transform to position the top hinge I hadn't spotted. attachment fixes it but I imagine it's similar to your solution.

We're always open to suggestions for new RailClone libraries, we have a thread running here that we keep an eye on and use to guide us when creating new libraries, please feel free to add any ideas that you have. I recall windows and doors being suggested elsewhere in the past but at the time RailClone didn't have the evenly count modes, making them rather difficult to create. We'll take your suggestion into consideration, and if you have any other thoughts please add them to that thread

My apologies, there was a bug in the early beta the swapped the top and bottom padding values. In the current betas this has been fixed which is why this style no longer works correctly. To fix it, simply swap the inputs for the exported Padding Bottom and Padding top properties of the A2S Generator.