Node package in c#, help

Good morning.
I’m learning a bit of C#.
I have created a basic node package, but I want to make some changes to the presentation of my package.
1° First I would like to be able to put a personalized logo on it.
how to place a logo?
2° I would like to rename the second name that is repeated.
Thanks for your support.

1 Like

Hi @AM3D.BIM.STUDIO ,

you can do by this way :

1 : you can define a customize with addresouce icon and add image by read document here : Add Icons for a Zero Touch Assembly or NodeModel assembly · DynamoDS/Dynamo Wiki · GitHub

And if you are working with project is sdk net6 , please read acticle : Add Icons for a Zero Touch Assembly or Node Model assembly, Not work with NET6 SDK Style · Issue #13199 · DynamoDS/Dynamo · GitHub

  1. Easy way I had make is :
  • Create new class (Your namespace name is Name)
  • Replace namespace by Elements like that and class is sub name is Element, and then now you have :
  • Name => Elements => Element

With question 2, I recommend you read article to know more information : Custom Node Class Remapping

Good luck

1 Like

What is a " Zero Touch Assembly"…??? :cold_face: :cold_sweat: :confounded: :persevere:
I don’t know anything about that?
I think I’m starting to get depressed…? Any video tutorial please, I’m just learning a little about this… help.
Let’s imagine I am 6 years old something simple … step by step … please thank you

give this a read:
https://developer.dynamobim.org/

1 Like

I also you need read document for developer first as @Michael_Kirschner2 , comments , it also is not easy with me before, but when you have new problem, we can help.

1 Like

Give those pages and the dynamo developer docs a good read. Once you get to C and beyond with most tasks the resources will generally be written guides as opposed to videos, at least from what I’ve found. Personally I’m still in the hate portion of my love/hate to and fro relationship with trying to learn C#, typically falling back to Python when it gets too confusing to continue learning for the time being.

Zero touch means the nodes draw on a compiled file or set of compiled files so their source in effect cannot be accessed directly like a Python node, I assume that’s the logic of the ‘zero touch’ name. To some degree you can protect source code using this approach, but it’s core benefit is access to C# features and speed/performance benefits that come with this due to talking more directly to Revit.

1 Like

I find the execution time of the code with the zerotouch libraries in C# vs the dynamo nodes itself, it could be said that the difference time is ???

Check out this article by @john_pierson which provides a great case study and overview of potential performance benefits from nodes vs Python vs Zero Touch approaches:

Obviously actual benefits will vary from case to case, but generally you would expect good performance from ZT nodes, particularly if they can circumvent the need for multiple nodes. A good example is the Sheet duplication node from BiMorph Nodes - despite its complex workflow it is quite fast and covers a lot of functionality versus the amount of nodes and time you would potentially require otherwise to achieve this type of workflow.

1 Like

advangtage of zero touch is we have IDE better (Visual Studio, Rider,…), perfomance, speed. complex workflow , maintain package ,… but it is not main in this question in this topic.

With ZT, I sure that we can do with close source but Open Source also same, just depend on people created it.

1 Like

Thank you very much. It was very interesting. Now I am clear that zero touch is the best option

1 Like

Not everyone will probably agree with my take there, so trigger warning in advance…

If your target is performance, and you have the time to work this way it generally is. The only real drawback it presents (in my opinion) is that you’ll find it harder to bring people along for the programming journey given many drop off before here. Seems a necessary step if you want to seriously scale across larger organizations though. Given I’m hanging around in Python I probably have bias here. Some users insist jumping into C# and returning back to Python is easier than starting in Python and having to relearn core programming concepts that aren’t shared by the two languages (e.g. managing memory/variable types).

At the end of the day pick whatever resonates with your goals until you need scale and performance. As we say in programming often, ‘don’t boil the ocean’.

2 Likes