Node plugin



  • On 23/11/2015 at 12:58, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:   R17 
    Platform:   Windows  ;   
    Language(s) :     C++  ;  XPRESSO  ;

    ---------
    1. How to view information about the error in Xpress node (title Naudet becomes highlighted in yellow) ?

    2. Where in the code it is necessary to call the method
    void SetNodeSize ( GvNode * node, Int32 width, Int32 height ) 
    to resize the node when you create a node ?

    3. How to create a node to show the names of the ports, but not the text "Node Title" ?
    Now we have to create a node, and then select
    Ports -> Show Names

    https://www.dropbox.com/s/8dcf2cs81lxdtxs/node-plugin_1.jpg?dl=0



  • On 24/11/2015 at 01:43, xxxxxxxx wrote:

    Hello,

    could you please explain a little bit more what you are doing? Are you creating a new, custom Xpresso node class (GvOperatorData) or are you just creating instances of already existing classes? Could you please post some complete code?

    I'm not aware of any further debug options or debug information that is presented when an error with an Xpresso node occurs.

    SetNodeSize() is a member of GvNodeGUI. So you only can use this function if you are creating and handling your own GeDialog that contains a node GUI element (see GeDialog example).

    Can you explain your third question? What kind of node are us using there?

    Best wishes,
    Sebastian



  • On 28/11/2015 at 04:00, xxxxxxxx wrote:

    1. Not good news.

    2. project file
    https://www.dropbox.com/s/n3n0qu9fsca5nxi/My Node.rar?dl=0

    3. I do not know how else to explain
    https://www.dropbox.com/s/d0w6h8pd0umx82r/node-plugin_2.jpg?dl=0



  • On 30/11/2015 at 06:12, xxxxxxxx wrote:

    Hello Sebastian
    I'm trying to help Ferrisgeneral  in social network

    One of question(#2) was - can we modify size of node body from code?
    i tried to access by GetBodySize, clearly do not understand how declare width and height



  • On 01/12/2015 at 07:09, xxxxxxxx wrote:

    We have lack of graphview samples in sdk examples...(from several posters of this forum and Niklas's XpressoEffector, thanks them)

    I tried by such method to overide node-body's size

    void FSMNode::GetBodySize(GvNode *bn, Int32 *width, Int32 *height)  
    {    
      Int32 *w_n, *h_n;    
      if (this->Get())  
      {  
          GePrint("Resize");  
          *((Int32* )w_n) = 10;  
          *((Int32* )h_n) = 20;  
          return this->GetBodySize(bn, w_n, h_n);  
      }  
      else  
      {  
          return GePrint("Error - we have not node to resize");  
      }  
            
    }
    

    it crashed

    What did i make wrong?



  • On 02/12/2015 at 09:29, xxxxxxxx wrote:

    Hello,

    it would be really helpful if you would describe your project and would go into more detail about your questions. Without detailed information one cannot know what you want to do and no one can help you.

    What exactly do you want to show us with your project file?

    @Ilya: GetBodySize() is called when a node is created in the Xpresso Editor window.

      
    void GetBodySize(GvNode* bn, Int32*  width,Int32*  height )  
    {  
     *width = 300;  
     *height = 300;  
    }  
    

    Best wishes,
    Sebastian



  • On 02/12/2015 at 10:27, xxxxxxxx wrote:

    Hello Sebastian
    Thank you

    Ferrisgeneral, as i understood, is starting to study c4d sdk... but start was from graphview module. It is one of his favorite subject in c4d and as i know he is teaching newbies by his tutorials of xpresso in social network



  • On 02/12/2015 at 10:41, xxxxxxxx wrote:

    Sebastian's response (code) was exactly what I was going to put up with the node about *initial* size.

    @Sebastian: Is GVNodeGUI.SetNodeSize() pertinent in any way to the question?



  • On 02/12/2015 at 12:31, xxxxxxxx wrote:

    Thank you Sebastian and Ilya, happened to set the size of the node to create.

    On the third question, the question is also resolved. I comment out the method
    virtual Bool iCreateOperator(GvNode *bn);

    PS: I want to write node - Finite State Machine, for implementing the procedural animation based on events. But while the deal in the SDK is difficult for me.



  • On 03/12/2015 at 01:31, xxxxxxxx wrote:

    Hello,

    as said, SetNodeSize is only relevant if you manage a Node GUI in your own GeDialog. So it is not relevant for this thread.

    Best wishes,
    Sebastian



  • On 03/12/2015 at 14:01, xxxxxxxx wrote:

    What method you need to call to change the "Title Color" ?

    I tried to use the method of
    virtual const Vector GetBodyColor(GvNode * bn)
    it changes the color of the body node, but not the title

    Pic:
    https://www.dropbox.com/s/q3yx2aiquwwof79/node-plugin_3.jpg?dl=0

    Project:
    https://www.dropbox.com/s/ov0gukrzwj2uw7h/My Node_2.rar?dl=0



  • On 04/12/2015 at 05:23, xxxxxxxx wrote:

    Thanks Ilya, did not think that ID_GVBASE_COLOR is the color of the title.

    Ilya Pic:
    https://www.dropbox.com/s/psq184amq91pfp9/node-plugin_5.jpg?dl=0

    My Pic:
    https://www.dropbox.com/s/fazxi47yn5lhhr1/node-plugin_4.jpg?dl=0


Log in to reply