We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

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

list of placed objects on a layout

alemanda
Advocate
Looking at the revision history objects I was wondering How to get a list of only the visible objects (placed in several views) on a layout?
Any idea?
Has somebody ever tried to get 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
13 REPLIES 13
sinceV6
Advocate
alemanda wrote:

I'm making some simple beginning tests. I will keep the thread updated.

I'm starting from this point
http://195.144.20.106/viewtopic.php?p=81698&sid=e4bb01eac63a342ca1b256256f8044db
Great! Would love to see any updates.
alemanda
Advocate
...any chance to use STRSTR function with autotext <DRAWINGNAME>?
Something like this:

LISTOFDRAWINGS=<DRAWINGNAME>
dwgisonthelayout = STRSTR(LISTOFDRAWINGS, dwgtobesearched)
if dwgisonthelayout>0 then gosub ADD_TO_THE_LIST_OF_THE_OBJECTS_ON_THIS_LAYOUT

where dwgtobesearched should be the name of the drawing written on a text file by the object I want to schedule
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
alemanda
Advocate
This way seems that it doesn't take me on the right direction ...

I try in another way.

First step.

I will create
- myobject. This is the object I want to be listed if placed on a certain view which is place in a certain layout. This object will write on the "objectfile.txt" all the parameter that I want to list and the view_ID where it is placed on (using REQUEST("HomeDB_info", "", homeDBIntId, homeDBUserId, homeDBName, homeContext).

- mytitle. This is the title-object which will write on the "viewfile.txt" the view_id of the view which it is the title of and the layout where that view is placed (using REQUEST("HomeDB_info", "", homeDBIntId, homeDBUserId, homeDBName, homeContext) and AC_Drawingname parameter).

- myscheduler. This is the object (to be placed on the layout) which reads all the view_id of all the views placed in the current layout (where the scheduler is placed) in "viewfile.txt" and then reads all the objects placed in those views. Then create a graphic list of the found objects, reading all the relevant and needed data from the "objectfile.txt"

In this way, filtering the objectfile.txt by view_id, I can list all myobjects (and all the data of myobjects written in objectfile.txt), belonging to views, placed on a certain layout.

Now the (biggest?) problem is how to recognize if the myobject is visible or not.
A couple of questions.
1. How to know, for example, if the myobject is on a layer which is turned off in that particular view?
2. How to know if myobject is placed on a portion of a view which is cut in a certain layout?
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
alemanda
Advocate


I encountered another big problem, the biggest one.
What happens when I delete one of the placed "my objects" from a floorplan or from a section? How can I delete the related record in the text file?
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