The video of an agent-based panelization tool is now on YouTube

이미지
The video of an agent-based panelization tool I've made for my Masters study assignment is now on YouTube. If you are interested in trying this out on your own, please don't hesitate to email me. I wouldn't say this is the best practice of doing such a thing, but I'm pretty sure that it will give you some insights, if you haven't done such a thing. Hope you enjoy!

Where to find Revit Journal files?

이미지
Revit journal file can be considered as a programmatic log that Revit records during the runtime. It records almost all histories including the user's interaction with the software like clicking. It is useful to automate certain processes from outside the Revit environment, unlike API or macros. However, where do you find the journal file? Here it is: C:\Users\[username]\AppData\Local\Autodesk\Revit\Autodesk Revit 2017\Journals When you go to the folder path as above, you will find files something like below: Revit Journal Files Try drag and drop this text file on the Revit shortcut icon. Something fun will happen immediately! Have a look at the official webpage from Autodesk as well! [This article has been copied from hojoongchung.wordpress.com. The original article has been written on Sep 12, 2017, 7:28 PM]

Revit Journal Scripting Example

I've tried making new file from revit and adding worksets in it using journal file. Here's an example code I've used. I will later use this journal file with Excel VBA to create folder structures and Revit files automatically. ' 0:< Initial VM: Avail 8388359 MB, Used 21 MB, Peak 45; RAM: Avail 11334 MB, Used 48 MB, Peak 45 Dim Jrn Set Jrn = CrsJournalScript Jrn . Command "Internal" , "Create a new project , ID_FILE_NEW_CHOOSE_TEMPLATE" Jrn . ComboBox "Modal , New Project , Dialog_Revit_NewProject" _ , "Control_Revit_TemplateCombo" _ , "SelEndOk" , "<None>" Jrn . ComboBox "Modal , New Project , Dialog_Revit_NewProject" _ , "Control_Revit_TemplateCombo" _ , "Select" , "<None>" Jrn . PushButton "Modal , New Project , Dialog_Revit_NewProject" _ , "OK, IDOK" Jrn . Directive "DocSymbol" _ , "[Project1]&

Exploring scripting capability in Revit: Using journal file and batch script

I am currently exploring and teaching myself the Revit Journal script and the Batch script. After spending somewhat 3 hours digging in, I was able to clean out the journal file and made sample code below for opening Revit file from journal script(.txt format) and changing color visualization of structural column. One thing not sure: without the first line of the script, which is commented out with ' symbol, the revit wouldn't open the designated .rvt file. I don't know why this happens yet. ' 0:< Initial VM: Avail 8388359 MB, Used 21 MB, Peak 45; RAM: Avail 11334 MB, Used 48 MB, Peak 45 Dim Jrn Set Jrn = CrsJournalScript Jrn . Command "Internal" , "Open an existing project , ID_REVIT_FILE_OPEN" Jrn . Data "File Name" , "IDOK" , "C: \1\r ac_advanced_sample_project.rvt" Jrn . Command "KeyboardShortcut" , "Control visibility and appearance of objects (applied only in the active view) , ID

State of the art BIM issue management systems (personal impression)

이미지
Clash detection and Issue Management have been a big hurdle for a while in the AEC industry (or it has been always an issue when human started to build houses. I'm not sure about this). Even after adopting the new technologies such as BIM or other IT techs, still the clash has occurred in the initial design, and still issues had to be managed and coordinated between different stakeholders in the project. As far as I can remember, Gehry Technologies (acquired by Trimble in 2014) and CASE (acquired by WeWork in 2015) handled this issue on their own way, doing it by building custom tools in individual project, or scaled it as a multi-project solutions. I'll talk about the Issue Management history in detail later. When we agree that the issue management is not the thing we can get away from or something that we can eliminate from the AEC projects, we start to think how we can do it better then. So I searched, and found some nice solutions that can ease out our issue managemen

Firehopper has been published in food4rhino

이미지
Example use case of firehopper for geometry parameter sharing Yes, that's right. The Grasshopper component that was developed to interact with Google Firebase, which is firehopper, is now on the food4rhino. You can download most up-to-dated firehopper through here from now on. Enjoy! [This article has been copied from hojoongchung.wordpress.com. The original article has been written on Apr 4, 2018, 1:03 AM]

Efficient way of collecting sum of missing values per row in Pandas

이미지
While doing project assigned from the Udacity Nanodegree program I'm currently attending, I had to collect the number of null values in each row and display it in the histogram. However, the Pandas dataset contained 891221 rows, which I had to wait quite a long time to iterate through the rows using the following code: df . apply( lambda row: sum_of_nulls_in_row(row), axis = 1 ) Although it was suggested in this post that using apply() is much faster than using iterrow(), it was still too slow to finish the project efficiently. After several search, I found this discussion. In Icyblade's answer, he mentioned this: "When using pandas, try to avoid performing operations in a loop, including apply, map, applymapetc. That's slow!" Icyblade's suggestion was to use following code: df . isnull() . sum(axis = 1 ) I've applied it into my code, and Boom! It worked like a charm. Long waiting was eliminated and the result was there in a blink .