BIM Coordinator Program (INT) April 22, 2024
Find the next step in your career as a Graphisoft Certified BIM Coordinator!
Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.

open Profile follows open path in 3d

Hmooslechner
Rockstar
Archicad 18 open Profile follows open path in 3d:



its an Archicad 18 3D profile-polygon:

in a few days at Bimcomponents:

"DynPolySchrIstTubeQuerschnitt"

before there downloadable:
https://www.dropbox.com/s/1c3svw53ipdp1a4/FreiformPolygon.pln?dl=0
my Dropbox. Its an AC18EduAut - file

Youtube english:

https://www.youtube.com/watch?v=jWLnMUIT6yA
AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
48 REPLIES 48
Mario Sacco
Expert
very good job!
MacBook M1 Max 64GB- OS X 12.2.1 - Archicad 27
https://www.archiradar.it/en/
Hmooslechner
Rockstar
Hi Mariosmic!

Thx for the flowers..

Some ideas to Your polyline:

I do not know if You had the time to look the Video-link above - https://www.youtube.com/watch?v=1B54ETuhsDg

Its German, but what is interesting: They invented a method to make it possible that the program behaves different by klicking on hotsots!

The system we are using makes it possible to edit every point of the polygon, to let it grow by numbers between segment points and on end - and to decrease numbers by putting one end to another.

They made much more!

They showed us, that it should be possible to simulate the normal Archicad--behaviour of editing an polygon - with the pet-pal.

They can grow the whole polygon by klicking on one point - on the shown side.

They can grow just one segment by klicking on the middle-hotspot..

What they make not so good is - you have to enter the Object-Dialogue to switch the functionality - growing, rounding and so on. They invented no real pet-pal.

I have some ideas to do this anyway. But i have no time now to explain. We should work in that direction..
AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
Hmooslechner
Rockstar
They made a function-change possible by using the normal object-dialog. That is a little bit "stone-age" in my opinion...

My idea goes this way: (not really my idea - it has been done similar in the random city object)


Place a little pictogram near the polyline in the drawing-editor - with a hotspot-switch. This should be possible to be turnd off after the operations.

If the switch is in the normal edit-field - the edit of the cornerpoints is possible.
If the switch is in the field for "growing" - the same hotspot works for growing of the polygone-shape
If the switch is in the field for segment-growing - the middle-point grows just this one segment.
If the switch is in the field for Corner-rounding - the same klick on the hotspot rounds the corner
If the switch is in the field for rounding the segments - the middlepoint works to round it like Your functionality.

This could be very near the normal polygon-behaviour in Archicad like editing slabs or hatches with the pet-pal.


The next thing i am thinking of - is: to use just one simple parameter for one polygon - one array with three dimensions for x, y, z and maybe some Flags for function changes - but that is future-music.. So it would be much easier to work with it in GDL - to copy the functionality for more open polygons in one GDL

In my last objects where i made three open polygons-profiles following an open path - it had to copy Esteban ramos-code in the 2D-GDL, the Masterscript, the Parameter-script and the 3D-Script and had to change the name of every parameter for each different polygone x+y (+ Z). The possibility of making some mistakes is very high - and very time-consuming for each profile.

Just one parameter-Array for all of this should be much easier and easier to understand... to alter and to use with less mistakes!
AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
Laszlo Nagy
Community Admin
Community Admin
There is an object in bimcomponents.com

https://bimcomponents.com/GSM/Details/14843

This is a Ceiling Editor that can create very complex ceiling objects.
It has a palette kind of solution, which is probably one of the most advanced ones in terms of graphical editing of GDL objects I have ever seen.
Loving Archicad since 1995 - Find Archicad Tips at x.com/laszlonagy
AMD Ryzen9 5900X CPU, 64 GB RAM 3600 MHz, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), Windows 10 PRO ENG, Ac20-Ac27
Hmooslechner, I have finally gotten a hang of this code! not so hard once you read and re code it several times ha ha. I changed the arrays so that you only need three arrays per poly line instead of 9. and i am super close to getting it all working to put the polyline its self in an array. so you could have three arrays and unlimited polylines to edit. thats in another object so ill post it once i get it working. but its close. here is my edit to the base polyline code to essentially shrink the number of arrays needed.

here is a download for the polyline.

https://copy.com/DKYut7J7C7PkybiS

let me know what you think. its back ported to 17. i havent had time to update my template yet so im still stuck in 17 to draw.
Hmooslechner
Rockstar
not so hard once you read and re code it several times ha ha.
I obviously dont havbe the spirit for this

maybe if i Read Your new code several times.. or 500 times..

But we can build our ideas now on the shoulders of Your work now much easier!

No more words - for me this code is simply breathtaking and surely very useful!

Thank You!
AC5.5-AC27EduAut, PC-Win10, MacbookAirM1, MacbookM1Max, Win-I7+Nvidia
Hmooslechner wrote:
not so hard once you read and re code it several times ha ha.
I obviously dont havbe the spirit for this

maybe if i Read Your new code several times.. or 500 times..

But we can build our ideas now on the shoulders of Your work now much easier!

No more words - for me this code is simply breathtaking and surely very useful!

Thank You!
I'm glad you like it! I'll try to maybe add some notes to how I did the arrays. I still have to adjust the tube and material though as they are still buggy and have a few more things to set. I am an addict, if I see code I have to understand or I go insane thinking about it. I'll post the new base I'm working on for multiple polylines soon. It does start to get super crazy though lots of parameter memorizing required. Once I have that worked out I plan to add mariosmics curves. However that might be harder for me. I and a shape with corners guy, the circle stuff starts to make my brain hurt ha ha. Thanks again for all your work as it has been what helped me most to understand!
well i have come to a standstill. how to increase an array infinite but still define the number of points for each array created??? with out having separate arrays.. blah. but hmm maybe the points could just define a maximum number.. but then you cant remove points.... i guess some things just have to have limits. there might be a way. but my brain is now to scrambled to continue today ha ha. but really how many freeforms could one need? maybe some calling to the base and looping and array in a second object could work....
sinceV6
Advocate
Hello.

Great to see you guys taking another look at the code.

I see you made single coordinate arrays, with three columns. That's ok. I thought about it too, but for me it was more clear to keep them separated: it was easier to see each x, y and z arrays, than three XYZ[1], XYZ[2] and XYZ[3] (or even XYZ[1], XYZ[2], XYZ[3])

As a suggestion, a clever thing that I saw in one of Olivier Dentan's objects: since there are no longer single x, y, and z parameters as variables, why not declare three variables:

x=1, y=2, z=3

Then call the coordinates using that:

XYZ, XYZ, XYZ

I think is easier to see what's going on.

I haven't got the time right now to dig in it again to add curves. It's not that hard. I'll have to because I'm thinking of creating a property line object, with angle info, sides length, direction, etc.

But I it would be best if the original issue regarding the z coordinate in 2D could be solved; as it appears is not a problem when moving points in 3D.

Best regards.
sinceV6 wrote:
Hello.

Great to see you guys taking another look at the code.

I see you made single coordinate arrays, with three columns. That's ok. I thought about it too, but for me it was more clear to keep them separated: it was easier to see each x, y and z arrays, than three XYZ[1], XYZ[2] and XYZ[3] (or even XYZ[1], XYZ[2], XYZ[3])

As a suggestion, a clever thing that I saw in one of Olivier Dentan's objects: since there are no longer single x, y, and z parameters as variables, why not declare three variables:

x=1, y=2, z=3

Then call the coordinates using that:

XYZ, XYZ, XYZ

I think is easier to see what's going on.

I haven't got the time right now to dig in it again to add curves. It's not that hard. I'll have to because I'm thinking of creating a property line object, with angle info, sides length, direction, etc.

But I it would be best if the original issue regarding the z coordinate in 2D could be solved; as it appears is not a problem when moving points in 3D.

Best regards.


That would certainly make the mind game less confusing. ill do this right now! i just got the tube working the way i want on the ends. Im actually adding the curves marios 3dmd polyline. or more using it as the base for the how to. What is the issue with with the z coordinate in 2d? i vaguely remember reading about it in another thread forever ago. but didnt know how to use the code yet so i didnt think more of it. i have the material mapping mostly correct. i just cant decide if its really mapping from the points i think im specifying ha ha.

and now that you gave me that id i can do the same with the other 2d/3d parameters and have two less arrays
Learn and get certified!