Because this is a "New" resource, always delete the pointer to free memory.
CATNIPActivity *pNIPAct = new CATNIPActivity("MyBatchHealing"); pNIPAct -> SetMode(NIP_No_UI); // Crucial for "New" silent mode You must feed the NIPActivity a CATCommand GUID or a Knowledgeware Script Path . For example, to open a part and run a heal command: nipactivity catia new
CATListOfCATDocument docList; docList.Append(pMyPartDocument); pNIPAct -> SetDocuments(docList); // Runs the activity on ALL listed docs. pNIPAct -> Run(); // Non-blocking if async flag is set. while(pNIPAct -> GetStatus() != NIP_Finished) CATSleep(100); // Update progress bar (if you have a silent UI) Because this is a "New" resource, always delete
In the evolving landscape of product design and lifecycle management, efficiency isn't just about speed—it's about intelligent automation . For years, CATIA V5 users have leveraged interactive scripting and automation to streamline repetitive tasks. However, a new term is gaining traction in advanced design rooms and PLM forums: NIPActivity CATIA New . pNIPAct -> Run(); // Non-blocking if async flag is set
If you have recently migrated to a modern 3DEXPERIENCE platform or updated your V5 macros to leverage CAA V5 (Component Application Architecture), you have likely encountered this command. But what exactly is NIPActivity? Why is the "New" version critical? And how can it transform your design workflow?
If you search for in Dassault’s documentation, you will find it specifically referenced under CAA V5 Encyclopedia > System Framework > NIP Activities . How to Create a NIPActivity (The "New" Way) Let’s walk through the conceptual steps (pseudo-code logic for C++/CAA developers and scripters). Step 1: Declare the Activity Instead of using CATStartBatch , you now instantiate CATNIPActivity .
CATCommandHeader header("HealGeometry"); pNIPAct -> AddCommand(header, "C:\MyScripts\HealRules.catvbs"); The older version struggled with multiple documents. The "New" version uses CATListOfCATDocument .