Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.

Objects on several floors

alemanda
Advocate
Hi,
I'm trying to make an object to be visible in all the floors with the correct 2d representation. I mean, this object should be sectioned at each floor.
In order to make the section, no problem. I use the CUTPLANE/CUTEND command using also the global variable for the story height, elevation and cutplane height ...
For the 2D symbol I use the project2 instruction ...
My problem is how to control the section, I mean, how to set the pen for section line (in plan), the fill, etc. etc. ...

Actually my tests are on this simple code.
3D
if glob_context = 2 then
cutplane

addz -(glob_cstory_elev+glob_cutplanes_info[1])
cone 10,5,1,90,90
cutend
else
cone 10,5,1,90,90
endif


2D
project2{3} 3,0,3,15
AC27 latest hotfix

Win 10 Pro 64bit

Double XEON 14 CORES (tot 28 physical cores)

32GB RAM - SSD 256GB - Nvidia Quadro K620

Display DELL 25'' 2560x1440

www.almadw.it
5 REPLIES 5
Anonymous
Not applicable
You're nearly there. Yes you can use project2{3} to create the filled polygons.

The good thing about project2{3} is that you can use the pens and fill pattern currently in effect in the 2D script. Try the script fragment below:

fill fillType
pen fillPen
project2{3} 3, 270, 3 + 32, 4, bkgdPen

pen contourPen
project2 3, 270, 2

(Of course you would substitute your own variables for fillType, fillPen, bkgdPen and contourPen).

The first 'project2' creates the fill polygon with no outline. By setting the method to 3 (shading), and adding the 32 (use current attributes) the projection will use the current fill, pen and background pen. Set the parts to 4 so that only the view polygons will be visible (i.e. no outline). Also pass through the pen of the fill background.

The second 'project2' adds the outline. I'm not sure if there's a way to do it in a single 'project2' command.
alemanda
Advocate
Thanks for your suggestion.
I understood the method and I tried it.
In this way I don't obtain what I want.
In fact, in this way, I can control everything except the color of the cut part.
In fact I can control the color of the outline ... but the outline is section and projection ...

One question.
In the GDL manual it talks about "cut part" for the 3D section/elevation window and project2(3) ...
I think I've defined the cut part in the wrong way ...
In fact I made a cut of the object (the cone in the test) but I didn't defined the cut part ... How to make it?
AC27 latest hotfix

Win 10 Pro 64bit

Double XEON 14 CORES (tot 28 physical cores)

32GB RAM - SSD 256GB - Nvidia Quadro K620

Display DELL 25'' 2560x1440

www.almadw.it
Anonymous
Not applicable
Oh I see, you want to show the cut surface as a section fill. Well that's a more interesting problem.

Here's a possible approach you could take, although it's a bit clumsy.

Add a parameter 'showSection' to the object. In the 2D script, first do a projection to show the cut surfaces as follows:
fill sectFillType
pen sectFillPen
project2{3} 3, 270, 3 + 32, 4, sectBkgdPen parameters showSection = 1
Then do a projection to show the uncut surfaces:
pen viewPen
project2 3, 270, 2
The clumsy part is that you would have to use a thin slice rather than a cutting plane to get your cut surfaces. In the 3D script, you would use group operations:
group "model"
    (the code to create your model)
endgroup
if showSection then
    group "cutter"
        (transformation to adjust the height of the cutting 'plane' - actually a thin prism)
        prism 4, .001,
            -1000, -1000,
            1000, -1000,
            1000, 1000,
            -1000, 1000
    endgroup
    result = isectgroup("model", "cutter")
    placegroup result
else
    placegroup "model"
endif
I would be interested to hear if anyone has a better way, as this is a bit of a hack.
Anonymous
Not applicable
Hi Folks,

Depending on the complexity of the shape, I'd use a simple poly2_B{3} to generate a circle and shrink it with a Mul2 linked to the FPCP (Floor Plan Cut Plan).

If the geometry gets complex, I'd use Andrew's approach with a thin slice cut... but instead of using Solid Geometry Commands, I'd use two opposite cutplans separated by a thin distance.

HTH.
Stig Bengtsson
Participant
alemanda,

Did you find a good solution for your problem?

Stig
Architect AIA RIBA SAR/MSA, Graphisoft Registered Consultant
AC19 SWE 7006
AC20 SWE 4012