Closed gschleusner closed 8 years ago
So here is one basic workflow. After importing and exploding the lines, I select all the lines and pass them into a "geometry curve from model curve", then pass this into a wall creation set of nodes Can you say a little more about how you might want to structure your workflows? Seems like it would be at least preferable to just do a straight import extraction (you can get all import instances with an Elements Type node, but this is a little overkill).
In general workflows would be such that we'd want to be iterative so importing and exploding the lines would be less than ideal. We’d actually would want to skip the step of getting the data into Revit entirely. This is especially true as you can't explode 3d lines in Revit. There are a lot of things that would be much easier to edit outside of Revit and then have Revit update them as needed. An example would be an early plan layout that would be quicker to do via single lines in an Autocad file. I could see exchanging Structure diagrams, floor plans, landscape info and alike in this way. A series of lines would be perfect for handling the 3D location and extent of grid lines between architect and engineer. Yes it could be broken all the way down into points, but a line with a layer would be able to carry so much more info and would simplify the process. An example in Landscape would be that I’d want to map the “PlantX” layer to some element that I’d like to place in 3D in Revit. I’d filter the dwg by layer and then filter out the points on that layer and “Place a family instance by XYZ.” The key is that I wouldn’t ever have to bring the Autocad File into Revit I’d simply read the info into Dynamo to parse it.
Maybe it makes the most sense for DWG to be the file format that is used to import and export geometry in and out of Dynamo directly. I’d think of it as the equivalent of “Baking” in grasshopper. The difference between Revit and Grasshopper of course is that Rhino can create all the geometries that Grasshopper can, but Revit can’t create all the elements that Dynamo can. The difference is that with DWG you could allow for an import process that wouldn’t rebuild the graph but it would enable people to save iterations of “results” and then potentially make edits or build off them as the project moved forward. A good example of the need in general is how do I can someone the column location nodes from Dynamo in DWG without having to just give them a text file? I’d have to create them in Revit and then export them and then clear up and AutoCAD File.
The more I type the more I like it and the more I think it’s needed....
Greg
I think one could use "extract geometry objects" node on unexploded import instance element in Revit, then use "explode" node to get lines and use those lines to place walls. So exploding in Revit might be avoidable. It might be possible to automate the process with python custom node. I did not search Packages if something like that was done. Given a view and a path to DWG file, Revit API code could start transaction, import, commit, get geometrical objects from imported instance to output from node their copies, then delete import if desired.
BTW, all geometries from Dynamo could be put in Revit with some care: as example, Solids as geometry objects can be put as Form element in Family doc, but not in a project doc. it will be nice to be able to put such Solids in families while project doc is open, might not be possible with current Revit API.
When Dynamo creates element, code really creates element in Revit (via Revit API), so some examples would be helpful. Thanks.
A practical implication to this request is it would require dynamo to use the RealDWG library, similar to ASM/ACIS. If RealDWG was already on the machine because Revit or autocad was already installed dynamo could reference it, if not, it would need to be installed.
Another option would be to use a dwg translation service as part of A360, thus no local dependency
-matt
On Feb 2, 2014, at 3:21 PM, gschleusner notifications@github.com wrote:
In general workflows would be such that we'd want to be iterative so importing and exploding the lines would be less than ideal. We’d actually would want to skip the step of getting the data into Revit entirely. This is especially true as you can't explode 3d lines in Revit. There are a lot of things that would be much easier to edit outside of Revit and then have Revit update them as needed. An example would be an early plan layout that would be quicker to do via single lines in an Autocad file. I could see exchanging Structure diagrams, floor plans, landscape info and alike in this way. A series of lines would be perfect for handling the 3D location and extent of grid lines between architect and engineer. Yes it could be broken all the way down into points, but a line with a layer would be able to carry so much more info and would simplify the process. An example in Landscape would be that I’d want to map the “PlantX” layer to some element that I’d like to place in 3D in Revit. I’d filter the dwg by layer and then filter out the points on that layer and “Place a family instance by XYZ.” The key is that I wouldn’t ever have to bring the Autocad File into Revit I’d simply read the info into Dynamo to parse it.
Maybe it makes the most sense for DWG to be the file format that is used to import and export geometry in and out of Dynamo directly. I’d think of it as the equivalent of “Baking” in grasshopper. The difference between Revit and Grasshopper of course is that Rhino can create all the geometries that Grasshopper can, but Revit can’t create all the elements that Dynamo can. The difference is that with DWG you could allow for an import process that wouldn’t rebuild the graph but it would enable people to save iterations of “results” and then potentially make edits or build off them as the project moved forward. A good example of the need in general is how do I can someone the column location nodes from Dynamo in DWG without having to just give them a text file? I’d have to create them in Revit and then export them and then clear up and AutoCAD File.
The more I type the more I like it and the more I think it’s needed....
Greg
— Reply to this email directly or view it on GitHub.
If Dynamo would use RealDWG we would also need conversion from RealDWG geometry to Revit API geometry objects. It could be done in Dynamo code for lines, arcs, and other simple cases, but generic conversion has to wait for Revit API to provide it.
LevL, If I wanted to go from DWG to Revit I'd use the native capability. I'm suggesting that the DWG in this case would be "scaffolding" for things in Revit , Inventor, Max.and I want Dynamo to process them into something usable in that application. A line in the dwg to a wall in Revit. If the DWG contained things like solids it seems you'd handle it in the same way you can import SAT's. You'd import them into the canvas and then the user could extract data from them and then use the extractions to do other operations.
Matt,
I could see either working local or hosted. Hosted would allow you to support many modeling formats in an out. I was trying to be specific in the request but if Dynamo could connect to a hosted translation service that had users put their files on 360 and then connect to them in Dynamo it would seem that you could make an end run around having to have direct connections to every tool and having to give way that sort of IP. I had mentioned web services in the training last week. you could start to see translation and the ability to tie people together across 360 would start to create something like a Pro Services option for using Dynamo. Sort of a "Dynamo Server." This would allow Dynamo to continue to be free and opensource in the future, but also allow for a freemium model. I hope this suggestion isn't to businesse' for git.
DWG import is now available in Dynamo Studio.
I’m closing this issue because it has been inactive for a while. This probably means that it is not reproducible or it has been fixed in a newer version. If it’s an enhancement and hasn’t been taken on for so long, then it seems no one has the time to implement this.
Please reopen if you still encounter this issue with the latest stable version.
Thank you!
I know this is closed, but in case anyone stumbles across this thread and wants the ability to filter curves from CAD links or imports via layer name in Dynamo for Revit, I've created a package called Bimorph Nodes which includes a CurveFromCADLayers
node. It does exactly what it says on the tin and it can output Dynamo curves or Revit Model curves. There is also a node for creating Detail Lines from CAD links or imports with the same functionality for drafting workflows:
There are a bunch of workflows for which we'd like to import 1 or more 2D DWG's that represent floor plans that we'd then like to convert to Revit walls. I don't know if you actually need the districtiong between 2D and 3D dwg but it might help with some workflows. We'd most likely want a "Filter by Layer" option that would seem to make sense as well. Given that Dynamo is moving to be less Revit Speciic this seems to be a need in the future. Writing would obviously be on someone's list as well.