Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware API
      • ZBrush GoZ API
      • Code Examples on Github
    • Forum
    • Downloads
    • Support
      • Support Procedures
      • Registered Developer Program
      • Plugin IDs
      • Contact Us
    • Categories
      • Overview
      • News & Information
      • Cinema 4D SDK Support
      • Cineware SDK Support
      • ZBrush 4D SDK Support
      • Bugs
      • General Talk
    • Unread
    • Recent
    • Tags
    • Users
    • Login

    Visual Aid

    SDK Help
    0
    46
    33.4k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      Helper
      last edited by

      THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

      On 23/08/2009 at 22:35, xxxxxxxx wrote:

      TagData::Draw() sends your tag as PluginTag* tag. Do this:

      if (tag->GetDataInstance()->GetBool(SHOW_PLANE)) // draw

      1 Reply Last reply Reply Quote 0
      • H
        Helper
        last edited by

        THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

        On 23/08/2009 at 22:46, xxxxxxxx wrote:

        okay this is the code I have .

        > `

          
        \>    
        \>  LONG TrueSymmetry::Draw(PluginTag* tag, BaseDocument *doc, BaseContainer &data;, BaseDraw *bd, BaseDrawHelp *bh, BaseThread *bt,LONG flags)  
        \>  {  
        \>    
        \>         
        \>       if (tag->GetDataInstance()->GetBool(SHOW_PLANE)) // draw  
        \>       {  
        \>    
        \>            //Vector p[3] = { Vector(0,0,0),Vector(100,0,0),Vector(50,100,0)};  
        \>            //Vector f[3] = { Vector(1,0,0),Vector(1,0,0),Vector(1,0,0)};  
        \>            //bd->Polygon3D(p,f,TRUE);  
        \>            GePrint ("It's Checked");  
        \>       }  
        \>       else  
        \>       {  
        \>            GePrint ("Not Checked");  
        \>       }  
        \>       return TRUE;  
        \>    
        \>  }  
        \>    
        \>  
        

        `

        At this point I'm just looking for a message to come back and tell me that the box was checked. But nothing is showing up.

        Do you see anything wrong?

        Thanks,
        ~Shawn

        1 Reply Last reply Reply Quote 0
        • H
          Helper
          last edited by

          THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

          On 24/08/2009 at 06:21, xxxxxxxx wrote:

          Any thoughts about this?

          1 Reply Last reply Reply Quote 0
          • H
            Helper
            last edited by

            THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

            On 24/08/2009 at 06:31, xxxxxxxx wrote:

            The code looks ok to me. There must be somewhere else an error I guees.

            cheers,
            Matthias

            1 Reply Last reply Reply Quote 0
            • H
              Helper
              last edited by

              THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

              On 24/08/2009 at 07:27, xxxxxxxx wrote:

              Can you think of anything that would prevent GePrint () from printing to the console? It seems like it's not recognizing that the checkbox was checked.

              1 Reply Last reply Reply Quote 0
              • H
                Helper
                last edited by

                THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                On 24/08/2009 at 07:32, xxxxxxxx wrote:

                Without any additional code it is hard to say. Maybe the description resource for the checkbox is wrong.

                cheers,
                Matthias

                1 Reply Last reply Reply Quote 0
                • H
                  Helper
                  last edited by

                  THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                  On 24/08/2009 at 07:39, xxxxxxxx wrote:

                  Here's the reference from the .h file

                  SHOW_PLANE = 1005,

                  Here's the reference from the .res file

                  BOOL SHOW_PLANE {ANIM OFF;}

                  Here it is from the .str file

                  SHOW_PLANE "Show Symmetry Plane";

                  1 Reply Last reply Reply Quote 0
                  • H
                    Helper
                    last edited by

                    THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                    On 24/08/2009 at 07:44, xxxxxxxx wrote:

                    I can send you more code if you think it would be helpful.

                    ~Shawn

                    1 Reply Last reply Reply Quote 0
                    • H
                      Helper
                      last edited by

                      THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                      On 24/08/2009 at 07:46, xxxxxxxx wrote:

                      Quote: Originally posted by emberintherain on 24 August 2009
                      >
                      > * * *
                      >
                      > I can send you more code if you think it would be helpful.
                      >
                      > ~Shawn
                      >
                      >
                      > * * *

                      Please do, because the description resource seems to be ok.

                      Btw. is the Draw() method called at all?

                      cheers,
                      Matthias

                      1 Reply Last reply Reply Quote 0
                      • H
                        Helper
                        last edited by

                        THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                        On 24/08/2009 at 07:52, xxxxxxxx wrote:

                        Here is the code up to this function.

                        > `

                          
                        \>    
                        \>  /////////////////////////////////////////////////////////////  
                        \>  // TrueSymmetry  
                        \>    
                        \>  #include "c4d.h"  
                        \>  #include "c4d_symbols.h"  
                        \>  #include "ttruesymmetry.h"  
                        \>  #include "truesymmetry.h"  
                        \>    
                        \>  #include "lib_description.h"  
                        \>  #include "customgui_priority.h"  
                        \>    
                        \>  const Real DELTA=0.001f;  
                        \>    
                        \>  class TrueSymmetry : public TagData  
                        \>  {       
                        \>       Bool blnMessages;  
                        \>       Bool blnSymmetryActive;  
                        \>       Bool blnSymmetryDirty;  
                        \>       Bool blnTest;       
                        \>         
                        \>         
                        \>    
                        \>       Bool IsSymmetrical(BaseObject* obj , BaseContainer* data);  
                        \>       Bool InitSymmetryPoints(BaseObject* obj,BaseContainer* data);  
                        \>       Bool InitSymmetryPolygons(BaseObject* obj,BaseContainer* data);  
                        \>       Bool IsPartner(const Vector * arrPoints, LONG lngI, LONG lngJ, LONG lngSymPlane);  
                        \>       Bool OnSymmetryPlane(const Vector * arrPoints, LONG lngI, LONG lngSymPlane);  
                        \>       Bool PointOnEditableSide(const Vector * arrPoints, LONG lngI, LONG lngSymPlane, LONG lngMirroredSide,bool blnIncNul);  
                        \>       Bool PolyOnEditableSide(const Vector * arrPoints, const CPolygon * arrPolygons,LONG lngI, LONG lngSymPlane, LONG lngMirroredSide);  
                        \>       Bool PolygonStillExists(const CPolygon * arrPolygons, LONG lngOldPoly);  
                        \>       LONG FindLastKnowPolyPartner(const CPolygon * arrPolygons,LONG lngOldPoly);  
                        \>       LONG FindPolyPartner(const CPolygon * arrPolygons, LONG lngPolygonCount,LONG lngPoly);  
                        \>         
                        \>       Bool ResetPointsOnSymPlane(PolygonObject* objPoly,BaseContainer* data);  
                        \>       Bool UpdateSymmetryPositions(PolygonObject* objPoly,BaseContainer* data);  
                        \>       Bool CreateSymmetry(BaseObject* obj ,BaseContainer* data);  
                        \>       Bool ReInitSymmetry(BaseObject* obj,BaseContainer* data);  
                        \>              
                        \>       Vector GetVirtualPartnerPos( Vector * arrPoints, LONG lngI, LONG lngSymPlane);  
                        \>       CPolygon GetVirtualPartnerPolygon(CPolygon * arrPolygons, LONG lngPoly);  
                        \>    
                        \>       LONG * arrPartners;  
                        \>       Vector * arrLastKnownPos;  
                        \>       CPolygon* arrLastKnownPolygons;  
                        \>       LONG lngLastKnownPointCount;  
                        \>       LONG lngLastKnownPolygonCount;  
                        \>    
                        \>       public:  
                        \>            virtual Bool Init(GeListNode *node);  
                        \>            virtual void Free(GeListNode *node);  
                        \>            virtual Bool GetDDescription(GeListNode *node, Description *description,LONG &flags;);  
                        \>            virtual Bool Message(GeListNode *node, LONG type, void *data);  
                        \>            virtual LONG Execute(PluginTag* tag, BaseDocument* doc, BaseObject* op, BaseThread* bt, LONG priority, LONG flags);  
                        \>            virtual Bool GetDEnabling(GeListNode *node, const DescID &id;,GeData &t;_data,LONG flags,const BaseContainer *itemdesc);  
                        \>              
                        \>            //FOR SHOWING SYMMETRY PLANE  
                        \>            virtual LONG Draw(PluginTag* tag, BaseDocument *doc, BaseContainer &data;, BaseDraw *bd, BaseDrawHelp *bh, BaseThread *bt,LONG flags);  
                        \>              
                        \>              
                        \>            static NodeData *Alloc(void) { return gNew TrueSymmetry; }  
                        \>                   
                        \>  };  
                        \>    
                        \>  //FOR DRAWING THE SYMMETRY PLANE  
                        \>  /////////////////////////////////////////////////////////////////////////////////////////  
                        \>  LONG TrueSymmetry::Draw(PluginTag* tag, BaseDocument *doc, BaseContainer &data;, BaseDraw *bd, BaseDrawHelp *bh, BaseThread *bt,LONG flags)  
                        \>  {  
                        \>         
                        \>    
                        \>         
                        \>       if (tag->GetDataInstance()->GetBool(SHOW_PLANE)) // draw  
                        \>       {  
                        \>    
                        \>            Vector p[4] = { Vector(-100,0,0),Vector(100,0,0),Vector(-100,100,0),Vector(100,100,0)};  
                        \>            Vector f[3] = { Vector(1,0,0),Vector(1,0,0),Vector(1,0,0)};  
                        \>            bd->Polygon3D(p,f,TRUE);  
                        \>            GePrint ("It's Checked");  
                        \>       }  
                        \>       else  
                        \>       {  
                        \>            GePrint ("Not Checked");  
                        \>       }  
                        \>            return DRAW_HANDLES|DRAW_AXIS;  
                        \>    
                        \>    
                        \>    
                        \>    
                        \>    
                        \>  }  
                        \>    
                        \>    
                        \>  /////////////////////////////////////////////////////////////////////////////////////////  
                        \>    
                        \>    
                        \>  
                        

                        `

                        If this does not show the problem I can email you the whole contents of the .cpp file if you PM me your email.

                        Thanks so much Matthias for taking the time to help me out.

                        ~Shawn

                        1 Reply Last reply Reply Quote 0
                        • H
                          Helper
                          last edited by

                          THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                          On 24/08/2009 at 07:58, xxxxxxxx wrote:

                          I just realize that your Draw function has a wrong declaration. For TagData plugins it looks like this

                          virtual Bool Draw(PluginTag *tag, BaseObject *op, BaseDraw *bd, BaseDrawHelp *bh)

                          Your Draw() method is probably never called.

                          cheers,
                          Matthias

                          1 Reply Last reply Reply Quote 0
                          • H
                            Helper
                            last edited by

                            THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                            On 24/08/2009 at 08:06, xxxxxxxx wrote:

                            There it is.... That was the solution.. Thanks alot Matthias. You really help me out here.

                            ~Shawn

                            1 Reply Last reply Reply Quote 0
                            • H
                              Helper
                              last edited by

                              THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                              On 24/08/2009 at 08:24, xxxxxxxx wrote:

                              how do I remove the polygon after I have drawn it? I am able to draw a polygon on the symmetry plane now but I want it to go away after they uncheck the bool.

                              Thanks in advance,

                              ~Shawn

                              1 Reply Last reply Reply Quote 0
                              • H
                                Helper
                                last edited by

                                THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                                On 24/08/2009 at 09:31, xxxxxxxx wrote:

                                Figured it out. Thanks,

                                ~Shawn

                                1 Reply Last reply Reply Quote 0
                                • H
                                  Helper
                                  last edited by

                                  THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                                  On 24/08/2009 at 10:41, xxxxxxxx wrote:

                                  Anyone know how i could make the polygon I create appear somewhat translucent?

                                  ~Shawn

                                  1 Reply Last reply Reply Quote 0
                                  • H
                                    Helper
                                    last edited by

                                    THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                                    On 24/08/2009 at 10:56, xxxxxxxx wrote:

                                    Figure this out too.. LOL.. guess I'll stop asking until I really try to figure it out. HAHA..   Thanks everyone.

                                    This was accomplished using SetTransparency ()

                                    ~Shawn

                                    1 Reply Last reply Reply Quote 0
                                    • H
                                      Helper
                                      last edited by

                                      THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                                      On 24/08/2009 at 10:57, xxxxxxxx wrote:

                                      BaseDraw::SetTransparency(LONG trans) with negative values for trans.

                                      1 Reply Last reply Reply Quote 0
                                      • H
                                        Helper
                                        last edited by

                                        THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                                        On 24/08/2009 at 11:50, xxxxxxxx wrote:

                                        Well , I was hoping I wouldn't have to ask again. LOL but can someone point me in the right direction on how to be able to take the color selected from a COLOR selector in the attributes manager and turning that into the color values for the polygon3D()..

                                        Thanks,

                                        ~Shawn

                                        1 Reply Last reply Reply Quote 0
                                        • H
                                          Helper
                                          last edited by

                                          THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                                          On 24/08/2009 at 11:58, xxxxxxxx wrote:

                                          Vector color = bc->GetVector(YOUR_DESC_FOR_THE_COLOR);

                                          1 Reply Last reply Reply Quote 0
                                          • H
                                            Helper
                                            last edited by

                                            THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                                            On 24/08/2009 at 12:00, xxxxxxxx wrote:

                                            Thanks Robert, As always. Top Notch!

                                            ~Shawn

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post