Edwin
I've answered you in a PM... but it might be useful to 'all'...
What you want to do can be achieved by hand because the elements are nice and straight [I'll cover the general 'complex' case later] - just think of it as a weird 'spiral-staircase' laid on its side...
Make a grouped beam and a grouped rafter - each drawn flat and somewhat longer than the actual length you need [we'll trim them later].
Draw the four edges of the roof-form at the appropriate angles/flatness [inside their own group too].
First let's do the beams [long side].
You can calculate how many copies of the initial flat beam you want from the roof's length and the beams' required centers...
Choose the orthogonal-view that lets you see it in end elevation.
Select the flat beam.
Activate the Rotate Tool, locked in the plane of the view, press Ctrl to enter its copy mode.
Start the rotated-copy horizontal and end it so the copy is at the maximum angle [snap to the angled end], immediately type in the number of copies required thus /7 and the intermediate copies will be made divided evenly into that angle.
These beams are currently all at the start of the roof.
Change your view so that you can select all 7 copies and use the Move Tool to locate them along the roof at the first center distance.
Deselect the lowest angled beam that is the remain there [Select+Ctrl+Shift to remove the picked object from the selection].
Use the Move Tool to move the 6 to the next center etc, repeat removing a beam from the selection and moving what's left until you have relocated all of the beams at the expected centers.
I suggest that you select all 8 beams and group them for ease of editing later...
Now repeat the process to copy and move the rafters...
You now have a set of purlin groups and rafter groups inside their own 'container' group. They are now too long on the up-slope end and need trimming to suit. If you want square-cut ends to all of them simply edit each group in turn and PushPull the end face until it aligns with a roof-edge line you drew earlier. If you want angles ends then do this... inside the containing group, draw a large vertical rectangle aligned with the appropriate roof-edge line, group it and move it so it intersects the ends of the all of the grouped beams/rafters. Select the grouped face and use Edit>Cut to move it onto the Clipboard. Edit a grouped let's assume it's a 'beam'] and use Edit>Paste_In_Place to add the grouped face into the beam's entities. Select All and right-click context menu Intersect with Selection. The grouped face will slice through the beam's geometry. Select the face-group and Edit-Cut it again. Now use Erase to remove the unwanted end of the beam you've just sliced off - you will need to draw over one edge of the cut end to get a closing face to form... Repeat the process editing each group and pasting the face-group in place until all ends have been sliced off. Repeat for the rafter groups with the face-group rotated 90 degrees in plan...
Explode groups of things as desired - it's recommended that you leave the individual rafters etc as groups as it makes moving/editing them easier as they won't stick to other adjacent geometry...
Now... let's assume that the verges/eaves weren't straight lines...
It means each member needs an individual rotation etc and then you can use the EEby* tools...
[you could use them for the roof you illustrated too - simply Divide the four roof-edges in turn to suit the number of centers then use Weld to make Curves - use the 4 curves as profiles/rails in EEbyRails to make the roof-surface (later use JointPushPull to add thickness to it), then use EEbyLattice with just Rail and just Profile to make the center-lines of the beams/rafters (do some exploding of nested groups etc), then use EEbyFace to extrude a pre-drawn profile for the member along each of the lines you've just made - the beams/rafters will always have square ends...]
For a roof like a 'hyperbolic-paraboloid' the four edges are curves and each member is itself curved...Capture.PNG