I feel like half the time when I try to get the correct input for any node I pick the wrong node that provides the Autodesk.Revit.DB.xxx version when it wants just xxx or vice versa. Is there a way to convert easily between these two forms? Here is an example I’ve ran into today with Document and FamilyType:
Likely this is a namespace collision with a custom node. Can you show what the nodes running into this are, making sure to label the package they’re from if they are custom nodes (Monocle view extension helps)?
Orchid’s document classes frequently clashed this way for me (File.FromPath vs File From Path; Document.Current vs Document Current). Been awhile since I’ve seen this though. Micellany’s Point is another one.
Sure, but that doesn’t seem to address the issue of multiple authors doing similar things in different dlls? If there was a convention of putting a pre-fix it would greatly reduce the need to put Autodesk.DSCore.List Autodesk.DSCore.Point etc etc… even if DSList and DSPoint are not so concise… then BiMorph can have BiList, BiPpoint… OrList, OrPoint, ArList, ArPoint etc…
That would require people to universally agree on certain prefixes belonging to a certain person, which is pretty unlikely. It would also need a directory/registry so people know which ones are already taken. But I understand your point. Namespaces are the solution but it still has drawbacks which are mostly just inconveniences.
Edit: Unless people want to put their full package name as a prefix to classes. Would be pretty annoying to type out BiMorphPoint though.
My counter point would be that people tend to try and make their package names unique, so the zero touch ones I can think of wouldn’t overlap for the foreseeable…
What would be really cute is if the autocomplete let you click on the available options, then gave you a compressed ‘variable’ in the code block… Autodesk.DsCore.List becomes DSList in the background…
But I expect there are more important things on the wish list!
Would be nice to have something similar to python’s import x as y so instead of needing BiMorph.Revit.Geometry.X, it would just be y.X or similar. I haven’t spent more than a minute in C# so I don’t know how their imports work.
Edit: Meant for codeblocks but then again, I don’t have much experience using other packages anymore so I wouldn’t take my suggestions too seriously.
I tried again with a fresh script. All built-in dynamo or Orchid. Still doesn’t work. The same input seem to work with other nodes from Orchid that look like they want the same thing.
I got a response on the Github. I’m still trying to figure out based on his sample scripts. Apparently I shouldn’t say “script” but I think this post has cemented my use of it for all time.