I hope you and your friends and family are all safe, sound and managing well.
My own situation is pretty much business as usual, being used to the home office for a number of decades now. I am fine and enjoying the quieter times around me.
Our main solution today reveals a new trick handling multistory stairs:
GET
project users APIKyle Faulkner raised and solved an interesting issue involving references to points in multistory stairs in the Revit API discussion forum thread on point element and its reference are in different locations in multistory stair:
Question: I'm writing a script in Dynamo to dimension stairs and I'm having a problem with reference points in multistory stairs.
The points from get_Geometry
are returned correctly, but the references for the points that belong to the 'copied' stairs are referencing the points of the original stair.
Here is a little script illustrating this:
It is simply taking the point, finding its reference, and grabbing the geometry from that reference.
For the 'copied' stairs, this returned point is not the input point, as I would expect, but rather the corresponding point on the original stair.
Is this a bug? The point is the best reference for me for the dimension, but if there is an alternative I could use I am looking for suggestions. Otherwise, my fall back is to draw a detail line and dimension to that.
Answer: Glad to hear that you have a viable fallback.
In addition, I hope that you can glean some useful further ideas from the extensive discussion on multistory stairs and its challenges that sound partially related to the one you are facing.
Response: Thank you this is great info. Don't know how I missed it in my searching.
While it doesn't help to figure out what is happening with the points, it gives me an idea to use that point data to find a face in the geometry at the same elevation (which would be top of landing) and use that as a reference instead of using a detail line.
On a related note, when I get the top face of a landing by this path: Stairs > StairsLanding > Geometry > Face > Reference, the resulting dimension is invisible.
But if I use this path: Stairs > Geometry > Face > Reference, the created dimension is visible as expected.
Not sure why this is the case. I tried some of the previous solutions, such as creating a new dimension with using the references of the invisible dimension, but that didn't work.
Later:
AH HA!! I think I have found the problem.
My script was set up to take a multistair and get the unique stairs within that multistair via GetAllStairsIds(). (This is important, because the multistair can have unpinned stairs in it and I need all the unique stairs within that multistair so that I can get the proper info I need). From there, I would get the geometry from each stair (and its copies if they exist) and attempt to get the references from the points that define the run, as shown in my original post. This is where the reference from the 'copied' stairs would wrongly return the reference to the corresponding point on the original stair.
BUT...
If I get the geometry from the multistair element directly, and acquire the references from the points from that geometry, all the references are in the correct position in relation to the point. SUCCESS!
Only problem is now I have to query the geometry twice: once from the individual stairs, so that I can maintain a relationship between the points of the runs and the information pulled from that run, and then once from the multistory stair, so that I can match the points from the first query to the points from this second query to get the correct references.
Hopefully this makes sense.
Many thanks to Kyle for this tricky solution and helpful explanation!
GET
Project Users APIVery briefly, just a quick pointer to Mikako's blog post to let you know that
the long-awaited BIM 360 GET
project users API is now available.
Staying at home and still keeping in touch with others... everybody seems to be using Zoom nowadays.
Here are some neat tips to make it more fun and effective:
As we continue chugging along in spite of the pandemic, Autodesk is also searching for new talent.
For instance, we currently have two job offers for senior software engineers in Switzerland:
The position overview and responsibilities are the same for both:
The Autodesk Construction Solutions group is seeking a talented and highly motivated individual to develop a world-class commercial cloud service that is used by construction companies to increase efficiency and reduce the high amount of waste produced during construction. If you are a software developer proficient in cloud web services with large database back-ends and enjoy working in a dynamic, fast-paced team with state-of-the-art technologies, we would love to hear from you!
Responsibilities:
Good luck applying for one of these or the many other opportunities that you can find all over the world in the Autodesk career site!